您的位置:首页 > 理论基础 > 计算机网络

MATLAB神经网络学习笔记之:利用learnp函数对感知器网络实现‘或’门

2018-01-07 00:00 609 查看
% 利用learnp函数对感知器网络进行训练,实现‘或’门
clear all;
clc;
% 期望误差最小值
err_goal = 0.0015;
% 最大训练次数
max_epoch = 9999;
% 样本数据
X = [0 1 0 1;0 1 1 0];
% 目标数据
T = [0 1 1 1];
% 创建感知器网络
net = newp([0 1;0 1],1);
W = rand(1,2);
b = rand;
net.iw{1,1} = W;
net.b{1} = b;

for epoch = 1:max_epoch
y = sim(net,X);
E = T - y;
sse = mae(E);
if( sse < err_goal)
break;
end
% 训练
dW = learnp(W,X,[],[],[],[],E,[],[],[],[],[]);
db = learnp(b,ones(1,4),[],[],[],[],E,[],[],[],[],[]);
% 更新网络的参数
W = W + dW;
b = b + db;
net.iw{1,1} = W;
net.b{1} = b;
end
epoch,W,y
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐