Main Content

神经网络拟合

使用两层前馈网络求解拟合问题

说明

神经网络拟合可用于创建、可视化和训练两层前馈网络,以求解数据拟合问题。

使用此 App,您可以:

  • 从文件、MATLAB® 工作区导入数据,或使用示例数据集之一。

  • 将数据拆分成训练集、验证集和测试集。

  • 定义和训练一个神经网络。

  • 使用均方误差和回归分析评估网络性能。

  • 使用可视化图(如回归拟合或误差直方图)分析结果。

  • 生成 MATLAB 脚本以重现结果并自定义训练过程。

  • 生成适合使用 MATLAB Compiler™MATLAB Coder™ 工具部署的函数,并导出到 Simulink® 以便与 Simulink Coder 结合使用。

Neural Net Fitting app

打开 神经网络拟合 App

  • MATLAB 工具条:在 App选项卡上的机器学习和深度学习下,点击 App 图标。

  • MATLAB 命令提示符:输入 nftool

算法

神经网络拟合提供内置训练算法,可用于训练神经网络。

训练算法描述
Levenberg-Marquardt

根据 Levenberg-Marquardt 优化更新权重和偏置值。Levenberg-Marquardt 训练通常是最快的训练算法,尽管它确实比其他方法需要更多内存。

为了实现此算法,神经网络拟合使用 trainlm 函数。

贝叶斯正则化

贝叶斯正则化根据 Levenberg-Marquardt 优化更新权重和偏置值。然后,它最小化平方误差和权重的组合,并确定正确的组合以产生泛化能力强的网络。此算法通常需要更长的时间,但适合推广到含噪或小型数据集。

为了实现此算法,神经网络拟合使用 trainbr 函数。

量化共轭梯度反向传播

量化共轭梯度反向传播根据量化共轭梯度法更新权重和偏置值。对于大型问题,推荐使用量化共轭梯度,因为它使用的梯度计算比 Levenberg-Marquardt 或贝叶斯正则化使用的雅可比矩阵计算更节省内存。

为了实现此算法,神经网络拟合使用 trainscg 函数。