0
点赞
收藏
分享

微信扫一扫

[递归,动态规划] 和为定值的子集合

seuleyang 2023-11-26 阅读 27

        最近写论文用到了很多神经网络和优化算法,算是废了不少精力收集起来的,还是整理出来分享给大家,以免浪费了。

        本篇以最简单的 BP神经网络开始吧

        详细的实现步骤如下:

1.环境准备:清空环境变量、关闭开启的图窗、清空变量和命令行。

2.数据加载:从 "数据集.xlsx" 文件中读取数据。

3.数据分析:设定训练集占数据集比例、设定输出维度、计算样本个数、打乱数据集(如果不希望打乱数据集,可以注释相应的代码)、计算训练集样本个数和输入特征维度。

4.划分训练集和测试集:将数据集划分成训练集和测试集。

5.数据归一化:对训练集和测试集的输入和输出进行归一化处理。

6.建立模型:使用 newff 函数创建一个新的前馈神经网络。

7.设置参数:设置神经网络的训练参数,如最大迭代次数、误差阈值和学习率。

8.模型训练:使用训练集对神经网络进行训练。

9.仿真测试:使用训练好的神经网络对训练集和测试集进行预测。

10.数据反归一化:将预测结果反归一化,使其恢复到原始数据的范围。

11.绘图:输出回归图和误差直方图,计算各种评估指标,如均方根误差 (RMSE)、决定系数 (R2)、均方误差 (MSE)、剩余预测残差 (RPD)、平均绝对误差 (MAE) 及平均绝对百分比误差 (MAPE),并分别对训练集和测试集结果进行绘图,展示预测结果与真实值的对比。

这边只展示核心代码

详细解释如下:

完整的代码和数据见

https://github.com/dazhiwang233/matlab-implementation-of-BP-neural-networks

举报

相关推荐

0 条评论