perceptron.m
来自「自编的神经网络的matlab程序」· M 代码 · 共 23 行
M
23 行
%单个神经元的感知器示例
clear
x=[0 0; 0.1 -0.1; 1.1 0.9; 1 1]; %输入样本
d=[0; 1; 1; 0]; %输出样本
n=100; %最大迭代次数
ep=0.0001; %精度
Per=NewCell(2,'Trapezoidal'); %创建一个神经元, 也就是感知器
y=zeros(size(d)); %用于保存实际输出
i=0;
E=0; %误差
while(i<=n)
i=i+1;
Per=CellValue(Per,x); %计算网络值
y=Per.Out;% 获取网络输出
E(i)=sum((d-y).^2); %计算误差
if E(i)<ep,break;end %如果满足精度要求, 则退出
Per.Weight=Per.Weight+0.3.*sum(repmat(d-y,1,size(x,2)).*x); %修正权值
end
i
Per.Weight
plot(E);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?