【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络

先打个广告哈。我自己做的公众号【拇指笔记】,每天写写我自己学习中记下的笔记,欢迎各位大神关注一下~


如果对哪一个有疑问,可以到公众号【拇指笔记】中私信我,一定回复。


STEP 1 导入数据。

可以直接导入Excel数据。

[~, ~, raw] = xlsread('C:\sz000004.xlsx','Sheet1','A2:I7');

也可以命令行创建数据,

x = [(-10:0.1:10)];
y = [sin(-10:0.1:10)];

STEP 2 启动nftool工具箱

直接在APP里搜索nftool即可。
【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第1张图片

STEP3 设置BP神经网络参数

  1. 设置训练集输入和标签变量(我这里使用的是第一步里创建的x和y变量)

    【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第2张图片

  2. 设置数据类型与占比

    【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第3张图片

    trainning:用来训练的数据。

    validtion:测量网络泛化的数据(泛化停止改善时停止训练)

    testing:用来测试神经网络的数据。

  3. 设置隐藏层神经单元的数量

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kJE5HUPb-1583476045009)(C:\Users\树枝990\AppData\Roaming\Typora\typora-user-images\image-20200306133406093.png)]

    一般来说,隐藏层神经单元( m m m)和输入层神经单元( n n n)、输出层神经单元( l l l)之间存在如下的关系。
    KaTeX parse error: No such environment: align at position 8: \begin{̲a̲l̲i̲g̲n̲}̲&m = \sqrt{n+l}…

STEP 4 训练神经网络

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第4张图片
这里可以设置训练算法。一般选LM算法

在这里插入图片描述

点击 T r a i n Train Train进行训练神经网络

在这里插入图片描述

STEP 5 检查参数

训练完神经网络后会生成一张训练卡。

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第5张图片

给出了学习周期(Epoch),训练花费的时间(Time),精度(Performance),梯度(Gradient),验证检查(Validation checks).

停止准则:在1000次训练中,如果Performance,Gradient,Mu中的一个达到了目标精度或六次训练误差都没有降低,则停止训练。

这四个进度条哪个满了,就代表根据那一准则停止训练。

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第6张图片

STEP 6 绘制训练过程图

训练卡的下半部分是Plots区。

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第7张图片

比如第一个,绘制最高精度出现的过程

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第8张图片

一般来说第四个(regression)可以看出训练效果,R越接近于1,预测结果越准确。

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第9张图片

STEP 7 导出神经网络

一般来说用第二种方式导出。

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第10张图片
导出后得到

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第11张图片

STEP 8 命令行调用神经网络

首先创建一组新变量x1

x1 = [(10:0.1:30)]

然后调用。

y1 = myNeuralNetworkFunction(x1)

通过神经网络预测的y1

在这里插入图片描述

如果神经网络预测结果出现问题,可以通过以下几种方法解决试试。

解决方案:

1.增加样本数量(我的样本数量过少,只有两百个)

2.减少神经元的数量

3.增加训练次数

STEP 9 保存

两种方法(Simple Script和Advanced Script)都可选择,前者简单,后者课拓展性强。

【数学建模】备战美赛之使用Matlab五分钟搭建一个BP神经网络_第12张图片

保存完毕后,下一次可以直接运行脚本而无需打开工具箱。


写文章不易,如果觉得有用,麻烦关注我呗~
欢迎各位关注【拇指笔记】,每天更新我的学习笔记~
在这里插入图片描述

你可能感兴趣的:(笔记,神经网络,数学建模,美国大学生数学建模竞赛,机器学习,算法)