Matlab学习笔记9.3:Matlab之神经网络模型

提示:来源于 中国大学慕课 西北工业大学 肖华勇老师的数学建模课程


前言

`提示:来源于 中国大学慕课 西北工业大学 肖华勇老师的数学建模课程


来源于: 中国大学慕课 西北工业大学 肖华勇老师的数学建模课程

一、多层前向神经网络原理介绍

多层前向神经网络(MLP)是神经网络中的一种,它由一些基本的神经元即节点组成,如上图。除输入层外,每一节点的输入为前一层所有节点输出值得和。每一节点的激励输出值由节点输入、激励函数及偏置量决定。

多层前向神经网络
原理


二、Matlab相关函数介绍

1.网络初始化函数

net = newff([xm,xM],[h1,h2,h3,........,hk],[f1,f2,f3,......,fk])

其中 xm 和 xM 分别为列向量,存储各样本数据的最小值和最大值;
[h1,h2,h3,…,hk] 是一个行向量,输入各层节点数;
[f1,f2,f3,…,fk] 输入变量为字符串,代表该层的传输函数。
常用得传输函数有:
常用传输函数

提示:还可设定参数:Net.trainParam.epochs = 1000 (设定迭代次数);
Net.trainFcn = ‘traingm’ (设定带动量的梯度下降算法);


2.网络训练函数

[net,tr,Y1,E1] = train(net,X,Y)

X 为 nM 矩阵,n 为输入变量的个数, M 为样本数;
Y 为 m
M 矩阵,m 为输出变量的个数, M 为样本数;
net 为返回后的神经网络对象;
tr 为训练跟踪数据;
tr.perf 为各步目标函数值;
Y1 为网络的最后输出;
E1 为训练误差向量。


3.网络泛化函数

Y2 = sim(net,X1)

X1 为输入数据矩阵,各列为样本数据;
Y2 为对应输出值;


三、示例

1.函数拟合

产生函数在 [0,10] 上间隔为0.5的数据,利用神经网络学习。并推广到 [0,10] 上间隔为0.1上个点函数值。分别作图分析。

x = 0:0.5:10;
y = 0.2*exp(-0.2*x)+0.5*exp(-0.15*x).*sin(1.25*x);
plot(x,y)    % 绘制原始数据图

net = newff([0,10],[6,1],{'tansig','tansig'});    % 网络初始化
net = train(net,x,y);    % 网络训练
x1 = 0:0.1:10;
y1 = sim(net,x1);     % 数据泛化
plot(x,y,'*',x1,y1,'r');   % 做对比图

plot(x,y)
plot(x,y,'*',x1,y1,'r')

2.蠓的分类(MCM89A)

在这里插入图片描述

clc
clear all

x = [1.24 1.36 1.38 1.38 1.38 1.40 1.48 1.54 1.56 1.14 1.18 1.20 1.26 1.28 1.30;
     1.72 1.74 1.64 1.82 1.90 1.70 1.82 1.82 2.08 1.78 1.96 1.86 2.00 2.00 1.96];
y = [1 1 1 1 1 1 1 1 1 0 0 0 0 0 0;
     0 0 0 0 0 0 0 0 0 1 1 1 1 1 1];
xmin = min(x');
xmax = max(x');

net.trainParam.epochs = 2500;   % 设定迭代步数
net = newff([xmin',xmax'],[5,2],{'logsig','logsig'});  % 网络初始化
net = train(net,x,y);   % 网络训练
x1 = [1.24 1.28 1.40
      1.80 1.84 2.04];
y1 = sim(net,x1);    % 数据泛化
plot(x(1,1:9),x(2,1:9),'*',x(1,10:15),x(2,10:15),'o',x1(1,:),x1(2,:),'p')   % 做数据图
grid on

数据图
样本输出值

  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值