% example5_7.m
x=-:;
y=*x-;
randn('state',); % 设置种子,便于重复执行
y=y+randn(,length(y))*1.5; % 加入噪声的直线
plot(x,y,'o');
P=x;T=y;
lr=maxlinlr(P,'bias') % 计算最大学习率 net=linearlayer(,lr); % 用linearlayer创建线性层,输入延迟为0
tic;net=train(net,P,T);toc % 用train函数训练 tic和toc是用来记录matlab命令执行的时间 tic用来保存当前时间,而后使用toc来记录程序完成时间。
new_x=-:.:;
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{,}, net.b{,}) text(-,,s);