1.1单层感知机
本帖最后由 风扫地 于 2018-11-19 01:13 编辑发现用word编辑完公式后,粘贴上来格式全乱了,索性发稿子吧
笔记如下:
matlab测试实例代码:
%单层感知器应用案例
%Page51习题《人工神经网络教程》书籍 By:韩力群
close all;
clear;
clc;
%输入数据
X_1 = [-1,1,-2,0]';
X_2 = [-1,0,1.5,-0.5]';
X_3 = [-1,-1,1,0.5]';
%输出标签
d_1 = -1;
d_2 = -1;
d_3 = 1;
X = ;
D = ;
n = 4; % 输入维数
m = 1; % 输出维数
P = 3; % 样本个数
eta = 0.1;%学习率
W = '; %初始权值
epochs = 0;
while 1
epochs = epochs + 1;
count = 0;
for p = 1:P
for k = 1:m
net_k = W'*X(:,p);
o_k = sign(net_k);
W = W + eta*(D((p-1)*m+k)-o_k)*X(:,p);
if(D((p-1)*m+k)==o_k)
count = count + 1;
end
end
end
if(count==m*P)
break;
end
if(epochs == 100)
fprintf('epochs == %d\n',epochs);
end
end
fprintf('epochs == %d\n',epochs);
W %最终结果
页:
[1]