BP神经网络的迭代次数设置为20,误差阈值设置为0.7,学习率设置为0.001是否合理
2条回答 默认 最新
关注
- 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/201561
- 这篇博客你也可以参考下:八数码问题的三种解决方式,其二:深度优先搜索 加自己的一些疑惑
- 除此之外, 这篇博客: 【学习笔记】基于遗传算法的BP神经网络优化算法中的 (3)设置网络初始权值、阈值 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
在上文的网络创建部分中,已经计算出了各层的权值、阈值个数,接下来只需要进行赋值即可
% 设置网络初始权值、阈值 weight1_num = input_num*hidden_num; % 输入层到隐含层的权值数 weight2_num = hidden_num*output_num; % 隐含层到输出层的权值数 weight1 = X([1:weight1_num]); % 输入层到隐含层的权值 threshold_1 = X([weight1_num+1:weight1_num+hidden_num]); % 隐含层阈值 weight2 = X([weight1_num+hidden_num+1:weight1_num+hidden_num+weight2_num]); % 隐含层到输出层的权值 threshold_2 = X([weight1_num+hidden_num+weight2_num+1:end]); % 输出层阈值 % 赋值 net.iw{1,1} = reshape(weight1,hidden_num,input_num); % 输入层到隐含层的权值 net.lw{2,1} = reshape(weight2,output_num,hidden_num); % 隐含层到输出层的权值 net.b{1} = reshape(threshold_1,hidden_num,1); % 隐含层阈值 net.b{2} = reshape(threshold_2,output_num,1); % 输出层阈值
关于net.iw、net.lw和net.b的解释:
% net.iw为输入层到网络层(隐含层+输出层)的权值 % 通过访问net.iw{i,j}可以获得第i个网络层来自第j个输入向量的权值向量 % 本案例中,net.iw{1,1}即表示第1个网络层(即隐含层)来自第1个输入向量的权值向量 % net.lw为一个网络层到另一个网络层的权值 % 通过访问net.lw{i,j}可以获得第i个网络层来自第j个网络层的权值向量 % 本案例中,net.lw{2,1}即表示第2个网络层(即输出层)来自第1个网络层(即隐含层)的权值向量 % net.b为各网络层的阈值 % net.b{i}为第i个网络层的阈值向量
关于神经网络中其他参数的解释可以参考书籍《神经网络模型及其MATLAB仿真程序设计》
解决 无用评论 打赏 举报
悬赏问题
- ¥15 Windows X86 远线程注入问题解惑
- ¥15 Vs2022安装时黑框闪退无反应
- ¥15 嵌入式设备网口down后再up时不能link?
- ¥15 关于区块链和边缘计算
- ¥15 做一个简单项目,用Python分析共享单车的数据
- ¥20 在使用CESM2.2.0模型进行case.submit过程中出现如下错误(关键词-Map)
- ¥15 有办法改变通过wifi进入的网站的设置吗
- ¥15 label_studio
- ¥15 请教如何phython发邮件
- ¥15 linux系统安装问题