3.利用线性神经网络预测信号(附matlab程序)

学习目标: 建立线性神经网络模型并进行信号的预测

1.简述

      线性神经网络:收敛速度和精度比之前讲的感知器神经网络要高
       线性神经网络 主要应用在函数逼近,信号预测,模式识别,系统辨识方面

(1)建立线性神经网络

 (2)训练、设定误差并进行仿真

(3)利用线性神经网络进行信号的预测

(4)画图

2.代码

clear all;
close all;
P=[1.1 2.2 3.1 4.1];
T=[2.2 4.02 5.8 8.1];
lr=maxlinlr(P);                   %获取最大学习速率
net=newlin(minmax(P),1,0,lr);     %建立线性神经网络
net.trainParam.epochs=500;        %训练    做多500次
net.trainParam.goal=0.04;         %训练误差设定为0.04
net=train(net,P,T);
Y=sim(net,P)                       %仿真

%%  利用线性神经网络进行信号的预测
clear all;
close all;
t=0:pi/10:4*pi;
X=t.*sin(t);
T=2*X+3;
figure;
plot(t,X,'+-',t,T,'+--');
legend('系统输入','系统输出');
set(gca,'xlim',[0 4*pi]);
set(gcf,'position',[50,50,400,400]);
net=newlind(X,T);
y=sim(net,X);
figure;
plot(t,y,'+:',t,y-T,'r:');
legend('网络预测输出','误差');
set(gca,'xlim',[0 4*pi]);
set(gcf,'position',[50,50,400,400]);

3.运行结果

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
线性神经网络(Linear Neural Network)是一种基本的神经网络模型,其模型结构包含一个输入层、一个或多个线性组合层和一个输出层。在Matlab中,可以使用神经网络工具箱(Neural Network Toolbox)来构建和训练线性神经网络模型。 首先,你需要创建一个线性神经网络对象。可以使用 `feedforwardnet` 函数来创建一个前馈神经网络对象,该对象可以用于实现线性神经网络模型。例如,以下代码创建了一个具有两个线性组合层和一个输出层的线性神经网络: ```matlab net = feedforwardnet([n1, n2]); ``` 其中,`n1` 和 `n2` 分别表示第一个和第二个线性组合层的神经元数量。 接下来,你需要准备训练数据和目标数据。假设你的训练数据存储在一个大小为 m×n 的矩阵 `X` 中,其中 m 表示样本数量,n 表示输入特征数量。对应的目标数据存储在一个大小为 m×p 的矩阵 `Y` 中,其中 p 表示输出的数量。 然后,可以使用 `train` 函数来训练线性神经网络模型。例如,以下代码使用梯度下降算法训练线性神经网络: ```matlab net = train(net, X', Y'); ``` 在训练过程中,可以指定训练参数,例如最大训练次数、误差容限等。 训练完成后,你可以使用训练好的线性神经网络模型进行预。例如,以下代码使用训练好的模型对输入数据 `x` 进行预: ```matlab y_pred = net(x'); ``` 其中,`y_pred` 是预得到的输出结果。 除了使用 `feedforwardnet` 函数外,Matlab还提供了其他创建和训练线性神经网络模型的函数和工具,例如 `fitnet`、`patternnet` 等。你可以根据具体需求选择适合的函数和工具来构建和训练线性神经网络模型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

素馨堂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值