图片缩略图

神经网络训练代码

版本1.0.0.0 (736 KB) 丹尼尔Okoh
一个MATLAB程序,训练几个神经网络,并使用户选择最好的

4.6 k下载

更新2016年9月30日

查看许可协议

该程序训练几个神经网络(隐藏层神经元的数量不同),并使用户选择最好的。
该程序分别使用Inputs1.txt和Targets1.txt文件中包含的输入数据和目标数据来训练网络。
该程序将提供的数据随机分为3部分:70%用于训练,15%用于验证,15%用于测试。用户可以在第68行到第70行中更改这个比例。

用户还可以选择使用他/她自己的测试数据:这些数据应该以与Inputs2.txt和Targets2.txt相同的格式保存

当程序运行时,它会训练100个不同的网络:这些网络的隐藏层神经元数量不同。生成的网络保存在名为networks的文件夹中,在该程序运行的同一文件夹中。保存为net1的网络有1个隐藏层神经元,net2有2个,net3有3个,net4有4个,....

用户可以将第65行中的值1:100更改为他们想要的值。

训练是使用Levenberg-Marquardt算法trainlm完成的。用户可以通过更改第62行来更改他们想要的算法。

该程序还计算并保存均方根误差(rmse)在一个名为rmse.txt的文件中。文件中的数据分为3列:第1列为隐藏层神经元的数量,第2列为随机15%测试数据上计算的RMSE,第3列为用户自己测试数据上计算的RMSE。

该文件中的数据指导用户决定哪种网络是最好的。具有较小rmse的网络更好,特别是对于在用户自己的测试数据上计算的rmse,这超出了用于训练的数据范围。关于如何使用rmse选择最优网络的更详细的指南包含在本程序作者撰写的名为“MATLAB上的计算机神经网络”的书中。

引用作为

丹尼尔·奥可(2022年)。神经网络训练代码(//www.tianjin-qmedu.com/matlabcentral/fileexchange/59362-neural-network-training-code), MATLAB中央文件交换。检索

MATLAB版本兼容性
使用R2016a创建
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!