Hebbian学习规则 2神经元 简单实现

//hebbian_learning2.m

 1 %   Examples
2 % --------
3 % p1 = [1;1;-1;1];
4 % t1 = 0;
5 % p2 = [1;-1;1;1];
6 % t2 = 0;
7 % p3 = [-1;-1;-1;1]
8 % t3 = 1;
9 % w1 = hebbian_learning2(p1,t1,p2,t2,p3,t3)
10 % t1 = 0;
11 % t2 = 1;
12 % t3 = 0;
13 % w2 = hebbian_learning2(p1,t1,p2,t2,p3,t3)
14 function w = hebbian_learning2(p1,t1,p2,t2,p3,t3)
15 % Author:Yao H. Wang
16
17 % hebbian_learning2 Summary of this function goes here
18 % Detailed explanation goes here
19 % w = TN。
20 % 其中T为t1,t2,t3即targets组成的矩阵。
21 % N,当P的逆矩阵存在的时候为P的逆矩阵,否则为P的伪逆。
22 P = [p1';p2';p3']';
23 T = [t1,t2,t3];
24 [row,col] = size(P);
25 r = rank(P);
26 if (row == col) && (r==row)
27 N = inv(P);
28 else
29 N = (inv(P'*P))*P';
30 end
31 w = T*N;
32
33 end

 

//hebbian_learning2test.m

 1 %   Examples
2 % --------
3 % p4 = [1;-1;1;-1];
4 % result = hebbian_learning2test(w1,w2,p4)
5 function result = hebbian_learning2test(w1,w2,p)
6 % Author:Yao H. Wang
7
8 % hebbian_learning2test Summary of this function goes here
9 % Detailed explanation goes here
10 r1 = w1*p;
11 if r1<=0
12 r1 = 0;
13 else
14 r1 = 1;
15 end
16 r2 = w2*p;
17 if r2<=0
18 r2 = 0;
19 else
20 r2 = 1;
21 end
22 result = [r1,r2];
23 end




转载于:https://www.cnblogs.com/yaohwang/archive/2011/12/02/2367984.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值