|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 风扫地 于 2018-11-19 01:13 编辑
发现用word编辑完公式后,粘贴上来格式全乱了,索性发稿子吧
笔记如下:
单层感知器理论知识和公式推导.zip
(103.82 KB, 下载次数: 1)
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 = [X_1,X_2,X_3];
- D = [d_1,d_2,d_3];
- n = 4; % 输入维数
- m = 1; % 输出维数
- P = 3; % 样本个数
- eta = 0.1;%学习率
- W = [0.5,1,-1,0]'; %初始权值
- 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 %最终结果
复制代码 |
|