图片缩略图

神经网络训练代码

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

4.4 k下载

更新2016年9月30日

查看许可协议

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

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

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

用户可以将第65行中1:100的值更改为所需的值。

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

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

这个文件中的数据指导用户决定哪个网络是最好的。rmse越小的网络越好,特别是对于在用户自己的测试数据上计算的rmse,这些数据不在用于训练的数据范围之内。关于如何使用rmse来选择最佳网络的更详细的指南包含在本程序作者编写的一本书中,书名为“MATLAB上的计算机神经网络”。

引用作为

丹尼尔Okoh(2021)。神经网络训练代码(//www.tatmou.com/matlabcentral/fileexchange/59362-neural-network-training-code), MATLAB中央文件交换。检索

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

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!