- 5
- 0
- 约2.1千字
- 约 40页
- 2019-10-18 发布于江苏
- 举报
模式识别和MATLAB;主讲内容;典型算法;分类器算法 3、线性判别函数
4、 Bayes算法;1、 层次聚类;Matlab 代码;Example:
;;k-均值(k-means)算法
给定k,算法的处理流程如下:
第一步:随机的把所有对象分配到k个非空的簇中;
第二步:计算每个簇的平均值,并用该平均值代表相应的簇中心;
第三步:将每个对象根据其与各个簇中心的距离,重新分配到与它距离最近的簇中;
第四步:重复2,3直到k个簇的中心点不再发生变化或准则函数Je收敛。
;Matlab 代码;Example:
X = [randn(20,2)+ones(20,2); randn(20,2)-ones(20,2)];
[cidx, ctrs] = kmeans(X, 2, dist,city, rep,5, disp,final);
plot(X(cidx==1,1),X(cidx==1,2),r., ...
X(cidx==2,1),X(cidx==2,2),b., ctrs(:,1),ctrs(:,2),kx);;;3、线性判别函数;实现步骤
第一步:初始化各权值矢量W=0;
第二步:将所有样本x(k)进行计算,求的g(x(k));
第三步:若x (k)∈ω判断gi (k)是不是最大值,若是,权值不用修改;否则权值需修正 ;W + x (k),Wj - x (k)
第四步:重复2,3直到权值不再修正。
第五步:求的gij = gi-gj ;Matlab 代码;;例:对一批人进行癌症普查,患癌症者定为属?1类,正常者定为属?2类。统计资料表明人们患癌的概率
,从而 。设有一种诊断此病的试验,其结果有阳性反应和阴性反应之分,依其作诊断。化验结果是一维离散模式特征。统计资料表明:癌症者有阳性反映的概率为0.95即 ,从而可知 ,正常人阳性反映的概率为0.01即 , 可知 。;对于两类?1, ?2问题,直观地,可以根据后验概率做判决:;将P(?i|x)代入判别式,判别规则可表示为;最小误判概率准则下的判决规则:;对于多类问题,最小误判概率准则有如下几种等价的判决规则:;实现步骤;;;Fisher算法;二维模式向一维空间投影示意图;映射Y空间
Y=WTX-W0 0 X∈ ω1
Y=WTX-W0 0 X∈ω2
把X空间各点投影到Y空间得一直线上,维数由2维降为一维。若适当选择W的方向,可以使二类分开。下面我们从数学上寻找最好的投影方向,即寻找最好的变换向量W的问题。;
投影样本之间的分离性用投影样本之差表示
投影样本类内离散度:
;
;
上式就是n维x空间向一维y空间的最好投影方向,
它实际是多维空间向一维空间的一种映射。
;现在我们已把一个n维的问题转化为一维的问题。
现在一维空间设计 Fisher分类器:
W0的选择
????
?????
????
;
Yki表示第i类中第k个样本的投影值
N1为ω1样本数 N2为ω2样本数?
当W0选定后,对任一样本X,只要判断Y=WTX W0 则X∈ω1; Y=WTX W0 则X∈ω2。分类问题就解决了;实现步骤
第一步:把来自两类ω1 / ω2的训练样本集X分成与ω1对应的子集X1和与X2对应的子集;
第二步:由 计算xi ;
第三步:由 计算各类的类内离差阵S1 , S2
第四步:计算类内总离差阵Sw = S1 + S2
第五步:计算的 逆矩阵
第六步 :按 求解W;第七步:
第八步
原创力文档

文档评论(0)