保存好BPNN后,运行以下代码出错:>> [res2,tr]=BPNN(input(hang_train,:)',output(hang_train,:)',input(hang_test,:)',output(hang_test,:)'); [res,tr]=BPNN(input,output,input_test,output_test) 错误使用 rand Size 输入必须为标量。 出错 BPNN (第 4 行) W1 = rand(hidden, n + 1) - 0.5;
时间: 2023-09-10 08:11:30 浏览: 83
GA-BPNN完整实例.zip_BPNN_GA_GA BPNN_GA-BPNN_bpnn GA
5星 · 资源好评率100%
这个错误可能是因为在调用 `BPNN` 函数时,没有指定 `hidden` 和 `n` 的值,或者这两个值不是标量。因此,`rand` 函数无法正确地生成随机矩阵。
请确保在调用 `BPNN` 函数之前,已经正确地定义了 `hidden` 和 `n` 的值,并且这两个值都是标量。例如:
```matlab
hidden = 10; % 隐藏层神经元数目
n = size(input, 2); % 输入数据的特征数目
[res2,tr] = BPNN(input(hang_train,:)',output(hang_train,:)',input(hang_test,:)',output(hang_test,:)', hidden, n);
[res,tr] = BPNN(input,output,input_test,output_test, hidden, n);
```
如果你已经正确地定义了 `hidden` 和 `n` 的值,但仍然出现相同的错误,请检查 `input` 和 `output` 的维度是否正确,以及它们是否包含任何缺失或无效值。
阅读全文