文档介绍:神经网络算法简介
主讲:何仁斌
实际应用问题
1、蠓虫的分类问题
2、DNA序列分类问题
3、癌症诊断问题
……
神经网络算法简介
感知器
感知器(perceptron),其目的是为了模拟人脑的感知和学****能力。感知器是最早提出的一种神经网络模型。它特别适合于简单的模式分类问题,如线性可分的形式。
神经网络算法简介
以两个输入的单层感知器神经元为例
∑
w(1,1)
w(1,2)
p(1)
p(2)
n
a
b
w ——权重; b ——阈值
如果设 w(1,1)=-1,w(1,2)=2,b=1
L
-b/ w(1,2)
-b/ w(1,1)
wp+b>0
a=1
wp+b<0
a=0
单层感知器
多层感知器
w(1,1)
w(1,2)
p1
p2
n
a2
∑
b1
∑
b2
n1
a1
n2
a1
∑
b1
w(2,1)
w(2,2)
性能指标:均方误差达到最小
涉及算法
注意:单层感知器的局限性是:仅对线性可分问题具有分类能力。
分类问题的MATLAB软件实现
以蠓虫分类问题为例
% 输入向量
P=[ ;
];
% 目标向量
T=[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0];
% 绘制输入向量
plotpv(P,T);
1)单层感知器
∑
w(1,1)
w(1,2)
p(1)
p(2)
n
a
b
% =newp([0 3;0 3],1);
watchon;
cla;
% 绘制输入向量
plotpv(P,T);
% 绘制分类线
linehandle=. IW {1},net. b {1});
E=1;
% =);
linehandle=. IW {1},net. b {1});
分类问题的MATLAB软件实现
分类问题的MATLAB软件实现
% 修正感知器网络
while(sse(E))
[net,Y,E]=,P,T);
linehandle=. IW {1},net. b {1},linehandle);
drawnow;
end;
pause
watchoff;
% 利用训练好的感知器对未知类别样本进行分类
p=[,,;,,];
a=,p);
plotpv(p,a);
ThePoint=findobj(gca,'type','line');
set(ThePoint,'Color','red');
hold on;
plotpv(P,T);
. IW {1},net. b {1});
hold off;
disp('End of percept')
分类问题的MATLAB软件实现
分类结果:
Af
Apf