MATLAB——神经网络构造线性层函数linearlayer

% example5_7.m
x=-5:5;
y=3*x-7;
randn('state',2);            % 设置种子,便于重复执行
y=y+randn(1,length(y))*1.5;        % 加入噪声的直线
plot(x,y,'o');
P=x;T=y;
lr=maxlinlr(P,'bias')            % 计算最大学习率

net=linearlayer(0,lr);            % 用linearlayer创建线性层,输入延迟为0
tic;net=train(net,P,T);toc        % 用train函数训练  tic和toc是用来记录matlab命令执行的时间  tic用来保存当前时间,而后使用toc来记录程序完成时间。
new_x=-5:.2:5;
new_y=sim(net,new_x);               % 仿真
hold on;plot(new_x,new_y);
title('linearlayer用于最小二乘拟合直线');
legend('原始数据点','最小二乘拟合直线');
xlabel('x');ylabel('y');
s=sprintf('y=%f * x + %f', net.iw{1,1}, net.b{1,1})

text(-2,0,s);
原文地址:https://www.cnblogs.com/long5683/p/10513417.html