深圳大学模式识别作业

合集下载

模式识别大作业

模式识别大作业

Iris 数据聚类分析-----c 均值和模糊c 均值一.问题描述Iris 数据集包含150个数据,共有3类,每一类有50个数据,其每个数据有四个维度,每个维度代表鸢尾花特征(萼片,花瓣的长度)中的一个,其三类数据名称分别setosa,versicolor,virginica ,这些就是 Iris 数据集的基本特征。

现在使用c 均值和模糊c 均值的方法解决其聚类分析,并且计算比较两种方法得到的分类结果的正确率。

二.算法介绍1.c-均值算法C 均值算法属于聚类技术中一种基本的划分方法,具有简单、快速的优点。

其基本思想是选取c 个数据对象作为初始聚类中心,通过迭代把数据对象划分到不同的簇中,使簇内部对象之间的相似度很大,而簇之间对象的相似度很小。

其主要思想:(1) 计算数据对象两两之间的距离;(2) 找出距离最近的两个数据对象,形成一个数据对象集合A1 ,并将它们从总的数据集合U 中删除;(3) 计算A1 中每一个数据对象与数据对象集合U 中每一个样本的距离,找出在U 中与A1 中最近的数据对象,将它并入集合A1 并从U 中删除, 直到A1 中的数据对象个数到达一定阈值;(4) 再从U 中找到样本两两间距离最近的两个数据对象构成A2 ,重复上面的过程,直到形成k 个对象集合;(5) 最后对k 个对象集合分别进行算术平均,形成k 个初始聚类中心。

算法步骤:1.初始化:随机选择k 个样本点,并将其视为各聚类的初始中心12,,,k m m m ;2.按照最小距离法则逐个将样本x 划分到以聚类中心12,,,k m m m 为代表的k 个类1,k C C 中;3.计算聚类准则函数J,重新计算k 个类的聚类中心12,,,k m m m ; 4.重复step2和3知道聚类中心12,,,k m m m 无改变或目标函数J 不减小。

2.模糊c-均值模糊C 均值算法就是,在C 均值算法中,把硬分类变为模糊分类。

设()j i μx 是第i 个样本i x 属于第j 类j G 的隶属度,利用隶属度定义的准则函数为211[()]C N b f j i i jj i J μ===-∑∑x x m其中,b>1是一个可以控制聚类结果的模糊程度的常数。

模式识别作业答案

模式识别作业答案

第二章 2.1:最小错误率决策准则为: ()12112221121221112212()() ()() ()()()()()()()()()()1()()1()()()j j j j j j P P P P p P P p P p P p P p p p p P P ωωωωωωωωωωωωωωωωωωωωωωω=⎧>∈⎪⎨<∈⎪⎩=>∈∈==>∑若则若则由贝叶斯公式可知:将其带入最小错误率决策公式中得到:若则,否则若,则即如果,则x x x x x x x x x x x x x x x x x ()121212122()()()()P P p p ωωωωωωωω∈∈=>∈∈,否则若,则有:如果,则,否则x x x x x x2.2:()()1211111222211222121122212111122x ()()()1()()()()() x 12()() x 2()()()()(R P P R P P R R R R R R P αααλωλωαλωλωααααααααλλωλ⎧=+⎪⎨=+⎪⎩⎧<⎪⎨>⎪⎩-=-+-给定,做出决策和决策的风险分别为:最小风险的贝叶斯决策为:若则做决策,即将判为第类若则做决策,即将判为第类则有x x x x x x x x x x x x x 122211111222221111122221122221221111112222221111)()()()()() x 1 ()()()() x 2()()()()()()()()() ()()()P P P P P p P x w p P p P x p P λωλλωλλωλλωλλωωλλωωλλωωλλωωλλω⎧->-⎪⇒⎨-<-⎪⎩->∈-⇒-<∈-若则将判为第类若则将判为第类若则若则x x x x x x x x x 2w⎧⎪⎪⎨⎪⎪⎩2.3:1111122211112111112222()()()()()()()0.9950.990.99970.9950.990.0050.05()1()0.0003()()()()()P p P P p P p P P P R P P R ωωωωωωωωωωωαααλωλωαλ=+⨯==⨯+⨯=-=<=+=阴阴阴阴阴阴阴按照最小错误率贝叶斯决策规则,结果为类,即正常人但若按最小风险决策规则,做出决策和决策的风险分别为:阴阴阴阴112221*********211112222111122221111222()()()0.99970.0003()0.99970.00030.9997()0.0003() 1 0.9997()0.0003() 2()0.000()P P R R ωλωαλλαλλλλλλλλλλλλλλ⎧⎪⎨+⎪⎩⎧=+⎪⇒⎨=+⎪⎩->-⎧⇒⎨-<-⎩>-⇒<-阴阴阴阴若则将王某判为第类若则将王某判为第类若3则将王某判为正常人则将王某判为癌症患者3.1()()()()()()()()12121212111,2222121,2,22,12121TTx g x x x x g x x x x x x x x ⎡⎤⎡⎤=-=-⎢⎥⎢⎥⎣⎦⎣⎦⎡⎤⎡⎤⎢⎥⎢⎥=-=⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎡⎤⎢⎥⎣⎦⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦::为增广特征向量的特征空间为,是二维平面的特征空间为,是三维空间中一个平面3.2将样本全部化为规范化增广样本向量:()()()()()()()1234567811223(0,0,0,1),(1,0,0,1),(1,0,1,1),(1,1,0,1)(0,0,1,1),(0,1,1,1),(0,1,0,1),(1,1,1,1)00,10(1,2,2,1)1110,21(0,2,2,2)2220,T T T TT T T T T TT T T y y y y y y y y w y w w y w y w w y w y =====--=---=--=----=∴=+=---=-+=∴=+=--=-+=()()()()()()()()345532(1,2,1,3)312320,43(1,2,1,3)41320,54(1,2,2,2)TT T T Tw w y w y w w w y w w y ∴=+=--=-+=>∴==--=-=-<∴=+=--()()()()()()()()()()()()()()()()()()()()()()6778123345522220,65(1,2,2,2)6220,76(1,3,2,1)7132130,87(1,3,2,1)810,98920,109100,1110(2,3,1,2)1110,121112T TT TT TT T T TT T w y w w w y w w y w y w w w y w w w y w w w y w w y w y w w w y =+-=>∴==--=-=∴=+=--=-++-=>∴==--=>∴==>∴==∴=+=--=>∴==-()()()()()()()()()()()()()()()()()()()()5673445510,1312(2,3,2,1)1340,14131420,15141810,1918(2,3,2,1)190,2019(3,2,2,2)200,2120(3,2,3,1)21210,1,2,,8T T T T T T T T TT i w w y w y w w w y w w w y w w w y w w y w y w w y w w y i g x <∴=+=--=>∴==>∴==>∴==--=∴=+=--=∴=+=-->==满足:故此时算法收敛,12332310T w x x x x =--+=为决策面方程分界面示意图如下:3.3()()()1##0001100110111101001101110101111111111111111111111111111114210010111,1,1,1,1,1,1,1,1,1,1,0.5T TTTX X X X X X b w X b -⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥--⎢⎥---⎢⎥⎢⎥--⎢⎥----⎢⎥⎣⎦--⎡⎤⎢⎥------⎢⎥==⎢⎥------⎢⎥--⎣⎦===--增广样本矩阵为:的伪逆矩阵为:令则 3.6()12*112**11221201*02*022200210002121020,212110w w T T T T S S S w S m m m w m mw m mm y x w y w x y x w w x y x x -⎡⎤=+=⎢⎥⎣⎦⎡⎤⎢⎥⎡⎤⎡⎤=-==⎢⎥⎢⎥⎢⎥--⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦====-+∴==->∈=<∈=⇒-=-⇒+= 投影向量为:则所以若则决策面方程为:4.2最近邻法与k 近邻法都是近邻分类的方法,都属于有监督的模式识别非参数方法。

模式识别作业Homework#2

模式识别作业Homework#2

Homework #2Note:In some problem (this is true for the entire quarter) you will need to make some assumptions since the problem statement may not fully specify the problem space. Make sure that you make reasonable assumptions and clearly state them.Work alone: You are expected to do your own work on all assignments; there are no group assignments in this course. You may (and are encouraged to) engage in general discussions with your classmates regarding the assignments, but specific details of a solution, including the solution itself, must always be your own work.Problem:In this problem we will investigate the importance of having the correct model for classification. Load file hw2.mat and open it in Matlab using command load hw2. Using command whos, you should see six array c1, c2, c3 and t1, t2, t3, each has size 500 by 2. Arrays c1, c2, c3 hold the training data, and arrays t1, t2, t3 hold the testing data. That is arrays c1, c2, c3 should be used to train your classifier, and arrays t1, t2, t3 should be used to test how the classifier performs on the data it hasn’t seen. Arrays c1 holds training data for the first class, c2 for the second class, c3 for the third class. Arrays t1, t2, t3 hold the test data, where the true class of data in t1, t2, t3 comes from the first, second, third classed respectively. Of course, array ci and ti were drawn from the same distribution for each i. Each training and testing example has 2 features. Thus all arrays are two dimensional, the number of rows is equal to the number of examples, and there are 2 columns, column 1 has the first feature, column 2 has the second feature.(a)Visualize the examples by using Matlab scatter command a plotting each class indifferent color. For example, for class 1 use scatter(c1(:,1),c1(:,2),’r’);. Other possible colors can be found by typing help plot.(b)From the scatter plot in (a), for which classes the multivariate normal distribution lookslike a possible model, and for which classes it is grossly wrong? If you are not sure how to answer this part, do parts (c-d) first.(c)Suppose we make an erroneous assumption that all classed have multivariate normalNμ. Compute the Maximum Likelihood estimates for the means and distributions()∑,covariance matrices (remember you have to do it separately for each class). Make sure you use only the training data; this is the data in arrays c1, c2, and c3.(d)You can visualize what the estimated distributions look like using Matlab contour().Recall that the data should be denser along the smaller ellipse, because these are closer to the estimated mean.(e)Use the ML estimates from the step (c) to design the ML classifier (this is the Bayesclassifier under zero-one loss function with equal priors). Thus we are assuming that priors are the same for each class. Now classify the test example (that is only thoseexamples which are in arrays t1, t2, t3). Compute confusion array which has size 3 by 3, and in ith row and jth column contains the number of examples fro which the true class isi while the class your classifier gives is j. Note that all the off-diagonal elements in theconfusion array are errors. Compute the total classification error, easiest way to do it is to use Matlab function sum() and trace().(f)Inspect the off diagonal elements to see if which types of error are more common thanothers. That should give you an idea of where the decision boundaries lie. Now plot the decision regions experimentally (select a fine 2D grid, classify each point on this grid, and plot the class with distinct color). If you love solving quadratic systems of equations, you can find the decision boundaries analytically. Using your decision boundaries, explain why some errors are more common than others.(g)If the model assumed for the data is wrong, than the ML estimate of the parameters arenot even the best parameters to use for classification with that wrong model. That is because the multivariate normal is the wrong distribution to use with out data, the MLE parameters we computed in part (c) are not the ones which will give us the best classification with our wrong model. To confirm this, find parameters for the means and variances (you can change as many as you like, from one to all) which will give better classification rate than the one you have gotten in part (e). Hint: it pays to try to change covariance matrices, rather than the means.(h)Now let’s try to find a better model for our data. Notice that to determine the class of apoint; it is sufficient to consider the distance of that point from the origin. The distance from the origin is very important for classifying our data, while the direction is totally irrelevant. Convert all the training and testing arrays to polar coordinates using Matlib function cart2pol(). Ignore the first coordinate, which is the angle, and only use the second coordinate, which is the radius (or distance from the origin). Assume now that all classes come from normal distribution with unknown mean and variance. Estimate these unknown parameters using ML estimation again using only the training data (the arrays ci’s). Test how this new classifier works using the testing data (the arrays ti’s) by computing the confusion matrix and the total classification error. How does this classifier compare with the one using the multivariate normal assumption and why is there a difference?(i)Experimentally try to find better parameters than those found by ML method for classifierin (h). If you do find better parameters, do they lead to a significantly better classification error? How does it compare to part (g)? Why can’t you find significantly better parameters than MLE for the classifier in (h)?。

模式识别作业

模式识别作业

(1)先用C-均值聚类算法程序,并用下列数据进行聚类分析。

在确认编程正确后,采用蔡云龙书的附录B中表1的Iris数据进行聚类。

然后使用近邻法的快速算法找出待分样本X (设X样本的4个分量x1=x2=x3=x4=6;子集数l=3)的最近邻节点和3-近邻节点及X与它们之间的距离。

并建议适当对书中所述算法进行改进。

并分别画出流程图、写出算法及程序。

x1=(0,0) x2=(1,0) x3=(0,1) x4=(1,1) x5=(2,1) x6=(1,2) x7=(2,2) x8=(3,2) x9=(6,6) x10=(7,6) x11=(8,6) x12=(6,7) x13=(7,7) x14=(8,7) x15=(9,7) x16=(7,8) x17=(8,8) x18=(9,8) x19=(8,9) x20=(9,9)
(2)写一篇论文。

内容可以包含下面四个方面中的一个:
①新技术(如数据挖掘等)在模式识别中的应用;
②模式识别最新的研究方向;
③一个相关系统的分析;
④一个算法的优化;
(3)书142页,描述近邻法的快速算法,写个报告。

《模式识别》课程2019年度大作业

《模式识别》课程2019年度大作业

《模式识别》课程2019年度大作业注意事项:(请务必详细阅读所有注意事项)1.本作业发布时间2019.5.5,交作业时间:2018.5.30日第一节课下课后,第二节课上课前(即上午9点整)。

与平时作业不同,不允许迟交,迟交则成绩以0分计。

2.与平时作业不同,大作业只有研究生同学完成,保送本系的本科同学也需要完成,但其他本科生无需完成。

请在作业的开始部分写上姓名、学号,缺少该信息的,本次作业总分扣除10分。

如果是已经完成保送手续,先修研究生课程的本校本科生,请一定每次作业在姓名后加注“(本科保送)”,否则无法拿到学分。

3.与平时作业不同,作业评分以电子版为准。

需要提交代码,具体的提交要求请仔细阅读作业说明。

总体文件大小不超过5MB(可以提交压缩文件)。

上传地址为/。

初始用户名和密码为学号。

研究生学号以MP18开头的暂时无法登陆,可将电子版email给助教(wangguohua@, yik@),其余同学务必使用网站系统上传。

是否迟交以cslabcms系统的时间戳或电子邮件的时间戳为准。

大作业:1.仔细阅读以下网页的内容(/weixs/project/DDT/DDT.html),包括其中提供链接的英文论文,理解DDT方法的运行步骤。

2.自行实现DDT算法。

实现时可以参考上述网页提供的Matlab代码以加深对DDT方法的理解,但是不可以使用MatConvNet这一深度学习框架,除此以外的其余任意深度学习软件框架都可以使用。

3.如尚未有深度学习、CNN的编程经验,请搜索网络资源完成自学。

4.如有可供使用的GPU加速卡资源,可以自由使用。

如无这种资源,可在编程中指定使用CPU(即,不使用GPU)来完成计算。

DDT方法的计算量很小,使用CPU也可完成计算。

5.在上述网页提供下载的代码链接里有少量图片可供使用,利用这些图片完成DDT方法的学习,利用可视化技术(参考论文和代码)直观考察DDT方法的效果。

6.请提交完成上述任务的文档和代码,需提交的内容如下:a.说明文档:自行组织文档的格式,保证文档的内容能让助教清晰地理解你的代码运行环境、实现的主要思路、你通过实现并运行代码后对DDT方法的理解等。

模式识别大作业1

模式识别大作业1

模式识别大作业--fisher线性判别和近邻法学号:021151**姓名:**任课教师:张**I. Fisher线性判别A. fisher线性判别简述在应用统计方法解决模式识别的问题时,一再碰到的问题之一是维数问题.在低维空间里解析上或计算上行得通的方法,在高维里往往行不通.因此,降低维数就成为处理实际问题的关键.我们考虑把维空间的样本投影到一条直线上,形成一维空间,即把维数压缩到一维.这样,必须找一个最好的,易于区分的投影线.这个投影变换就是我们求解的解向量.B.fisher线性判别的降维和判别1.线性投影与Fisher准则函数各类在维特征空间里的样本均值向量:,(1)通过变换映射到一维特征空间后,各类的平均值为:,(2)映射后,各类样本“类内离散度”定义为:,(3)显然,我们希望在映射之后,两类的平均值之间的距离越大越好,而各类的样本类内离散度越小越好。

因此,定义Fisher准则函数:(4)使最大的解就是最佳解向量,也就是Fisher的线性判别式。

2.求解从的表达式可知,它并非的显函数,必须进一步变换。

已知:,, 依次代入上两式,有:,(5)所以:(6)其中:(7)是原维特征空间里的样本类内离散度矩阵,表示两类均值向量之间的离散度大小,因此,越大越容易区分。

将(4.5-6)和(4.5-2)代入(4.5-4)式中:(8)其中:,(9)因此:(10)显然:(11)称为原维特征空间里,样本“类内离散度”矩阵。

是样本“类内总离散度”矩阵。

为了便于分类,显然越小越好,也就是越小越好。

将上述的所有推导结果代入表达式:可以得到:其中,是一个比例因子,不影响的方向,可以删除,从而得到最后解:(12)就使取得最大值,可使样本由维空间向一维空间映射,其投影方向最好。

是一个Fisher线性判断式.这个向量指出了相对于Fisher准则函数最好的投影线方向。

C.算法流程图左图为算法的流程设计图。

II.近邻法A. 近邻法线简述K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。

模式识别作业1230

模式识别作业1230

作业一1.试举一生活中能够用运算机实现模式识别的实例,并说明在这一问题中,模式识别系统各组成部份别离可能对应什么内容批改记录:1.11测31,应收43,实收39,4人须补作业;12测11,应收66,实收64,2人须补作业,5人考虑重做;12测31,应收31,实收31,1人考虑重做;缘故:没有回答下列问题(只列了理论框图)或选题不太适当,没有给成绩,需订正2.部份同窗态度不够认真;3.分数问题;4.英文简写及具体步骤描述不够5.书写层次性问题6.表述准确性:如遥感影像、航摄像片,非“照片”7.选题:(1)车牌识别,声音(语音、演唱曲目)识别,指纹识别(包括指纹解锁),人脸识别(照相、考勤、解锁),海鱼,文字识别,手写体字符识别(签名),电话触摸操作,虹膜识别,颜料表面改性,遥感影像分类,药材识别,蔬菜病害,血液检测,心电图(2) 讨论:电脑录制一首歌曲自动感应门声控灯 ATM 机取钱自动销售机作业二1. 设有10个二维模式样本,如图所示。

假设21=θ,试用最大最小距离算法对他们进行聚类分析。

解:① 取T 11]0,0[==X Z 。

② 选离1Z 最远的样本作为第二聚类中心2Z 。

()()201012221=-+-=D ,831=D ,5841=D ,4551=D5261=D ,7471=D ,4581=D ,5891=D ,651,10=D ∵ 最大者为D 71,∴T 72]7,5[==X Z742121=-=Z Z θT ③ 计算各样本与{}21,Z Z 间距离,选出其中的最小距离。

7412=D ,5222=D ,3432=D ,…,132,10=D }13,20,17,0,2,5,4,8,2,0{),min(21=i i D D ④ ∵742120)},max{min(9221=>==T D D D i i ,T 93]3,7[==∴X Z ⑤ 继续判定是不是有新的聚类中心显现:⎪⎩⎪⎨⎧===58740131211D D D ,⎪⎪⎩⎪⎪⎨⎧===40522232221D D D ,…⎪⎪⎩⎪⎪⎨⎧===113653,102,101,10D D D}1,0,1,0,2,5,4,8,2,0{),,min(321=i i i D D D 74218)},,max{min(31321=<==T D D D D i i i 寻觅聚类中心的步骤终止。

模式识别作业2

模式识别作业2

模式识别作业2模式识别作业⼆硕⾃171班杨晓丹21722160251题⽬数据:1)四个数据第⼀类:(0,0)(0,1)第⼆类:(1,0)(1,1)2)⼋个数据⽔果类:第⼀类:(90,150)(90,160)(80,150)(60,140)第⼆类:(60,105)(50,80)(50,90)(80,125)针对两种数据进⾏梯度下降法编程测试。

3)四个数据第⼀类:(0,0)(1,1)第⼆类:(1,0)(0,1)2、不同情况下的结果测试:1)初始权值取3种不同的值2)步长取不同的值,可以尝试变步长⽅法3)采⽤单样本修正法和全样本修正法两种⽅式4)单样本情况下不同的样本迭代次序,从1到n,和,从n到13、第2组数据可以画画每次迭代后的分类线试试2实验原理与⽅案2.1算法原理本次实验采⽤感知器模型对样本进⾏分类,将两组样本标准化为增⼴矩阵y,并寻找出ay>0的权向量a。

定义感知函数如下:∑J P(a)=(?a T y)(1)y?y h式中y h是被权向量a错误分类的样本。

存在错误的样本数是,感知函数的值⼤于0,当样本全部被正确分类时,感知函数的值为0。

所以⽬标是通过改变权向量使感知函数的值为0。

对感知函数求导得:ay ?a =∑y?y hy(2)则可得到梯度下降法的迭代公式:a(k+1)=a(k)+ρk∑y?y hy(3)经过多次迭代后,若所有样本满⾜ay>0,则得到⼀个线性分类器。

若样本为⼆维,可将权向量视为三维空间中的向量,将y k视为超平⾯的法向量,则式ay>0表明在超平⾯法向量⽅向⼀侧的权向量满⾜解向量的要求,所有超平⾯法向量⽅向围成的空间就是解向量的解空间。

迭代的过程就是权向量加上法向量,使权向量向解区移动的过程。

2.2单步长梯度下降法计算流程1.将样本标准化为增⼴矩阵Y2.将增⼴矩阵中的列向量y k依次与权向量相乘,若Ay k不⼤于0,则迭代权向量A(k+1)=A(k)+ρy k,若Ay k为正,则继续计算下⼀个向量,直⾄完成⼀轮相乘。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。



q
( x x' ) 1

参数为:多项式和的阶数 q。
( x x' ) 2 K ( x , x ' ) exp 2.多项式核函数 2 ;
参数为:和函数的宽度:

3. Sigmoid 核函数 K ( x, x' )
tanhv( x x' ) c ;
i
x j
直观的说,就是对待识别的模式向量 x,只要比较 x 与所有已知类别的样本之间的欧式距离,并决策 x 与离 它最近的样本同类。 缺点: 1)存储量和计算量都很大 (2)没有考虑决策的风险,如果决策的错误代价很大时,会产生很大的风险 (3)以上的分析——渐近平均错误率,都是建立在样本数趋向无穷大的条件下得来的,在实际应用 时大多是无法实现的 改进:减少近邻法计算量和存储量。 例如:快速算法: (1.分级分解,形成树结构。2.搜索,找出待识样本的近邻) 剪辑近邻法: (清理两类间的边界,去掉类别混杂的样本,使两类边界更清晰) 压缩近邻法: (1.利用已知样本集中的样本进行预分类,去掉错分样本构成剪辑样本集,考试集 和参考集在剪辑过程中的应用。2.利用剪辑样本集和近邻规则对未知样本进行分 类)
运行结果: a = -40.8200 -27.7000 -10.4800 -0.6400 ************************** 最小平方误差为 js = -3.4165e+004 **************************
5、 试解释最优超平面的含义,并在线性可分的情况下给出支持向量机的求解过程。 答:最优超平面的含义:一个超平面,如果它能够将训练样本没有错误地分开,并且两类训练样本中离超平 面最近的样本与超平面之间的距离是最大的,则我们把这个超平面称作最优分类超平面,简称最优超平面。 两类样本中离分类面最近的样本到分类面的距离称作分类间隔,最优超平面也称作最大间隔超平面。 支持向量机的求解过程: 6、 试讨论设计多类分类器的方法,并分析其优缺点。 答:分段线性判别函数法(分段 LDA 法) 最近邻法(nearest-neighbor):优点:成立的条件是,当样本的数目趋向无穷大;其错误率最坏不会超过两
g=a*y';
运行结果:
4、 试推导出最小平方误差判别规则的两种求解方法,尝试用 Matlab 实现,并用 Fisher's Iris Data 进行 验证(考虑 2 类分类即可) 。 答: 违逆法: clc; clear all; load fisheriris
Label = unique(species) ;%È¥µôÖØ¸´µÄÊý¾Ý groups1 = ismember(species,'setosa');% groups2 = ismember(species,'versicolor'); C1Idx = find(groups1==1);%ÔÚspeciesÕÒµ½ÓësetosaÏàͬµÄÊý¾Ý C2Idx = find(groups2==1);%ÔÚspeciesÕÒµ½ÓëversicolorÏàͬµÄÊý¾Ý data1 = meas(C1Idx,:);%measÊÇÒ»¸ö¾ØÕó£¬È¡measÖÐ1:50ÐÐÖÐËùÓеÄÁÐ data2 = meas(C2Idx,:);%measÊÇÒ»¸ö¾ØÕó£¬È¡measÖÐ51:100ÐÐÖÐËùÓеÄÁÐ y=[data1;data2]; [n,d]=size(y); [n1,d1]=size(data1); [n2,d2]=size(data2); b=[(n/n1)*ones(1,n1) (n/n2)*ones(1,n2)]'; % m1=(sum(data1))'/50; % m2=(sum(data2))'/50; % s1=zeros(4); % s2=zeros(4); % for a=1:50 % % s1=s1+(data1(a,:)'-m1)*(data1(a,:)'-m1)'; s1=s1+(data2(a,:)'-m1)*(data2(a,:)'-m1)';
倍的贝叶斯错误率,最好的有可能会接近或达到贝叶斯错误率。缺点是如果样本的数目太少时,样本的分布 会带来很大的偶然性不一定能很好的代表数据内在的分布情况,此时就会影响最近邻法的性能,但数据内在 规律比较复杂,类别间存在交叠情况下尤其如此。 7、 什么叫核函数?常用的核函数有哪些,并指明其中的可变参数。 答:根据模式识别理论,低维空间线性不可分的模式通过非线性映射到高维特征空间则可能实现线性可分, 但是如果直接采用这种技术在高维空间进行分类或回归,则存在确定非线性映射函数的形式和参数、特征空 间维数等问题,而最大的障碍则是在高维特征空间运算时存在的“维数灾难”。采用核函数技术可以有效地 解决这样问题。其公式为 K ( xi , x j ) ( xi ) ( x j ) 常用的核函数有: 1.线性核函数 K ( x, x ' )
参数为:和函数的宽度 v 与 c。 8、 阐释最近邻分类器的决策规则是什么?其缺点有哪些?怎么改进? 答:最近邻决策规则:给定 c 个类别 1 , 2 ,, c ,每类有标明类别的样本 Ni 个,近邻法的判别函数为
gi ( x ) min x xik , k 1, 2, , N i i 决策规则为 g j ( x ) min gi ( x ), i 1, 2********** 最小平方误差为 js = 2.4447 **************************
梯度下降法: clc; clear all; load fisheriris Label = unique(species) ;%È¥µôÖØ¸´µÄÊý¾Ý groups1 = ismember(species,'setosa');%ÔÚspeciesÕÒµ½ÓësetosaÏàͬµÄÊý¾Ý£¬Ïàͬ£¬·µ»Ø1£¬ groups2 = ismember(species,'versicolor'); C1Idx = find(groups1==1);%ÔÚspeciesÕÒµ½ÓësetosaÏàͬµÄÊý¾Ý C2Idx = find(groups2==1);%ÔÚspeciesÕÒµ½ÓëversicolorÏàͬµÄÊý¾Ý
子函数: function g=mydist(x,wt,w0) g=wt*x'+w0; 输出结果:
3、 试推导出感知器算法的迭代求解过程,尝试用 Matlab 实现,并用 Fisher's Iris Data 进行验证(考虑 2 类分类即可) 。 答:代码如下:
子程序:function g= dist(y,a);
实用价值:把所有样本都投影到一维,使在投影线上最易于分类,寻找投影方向。让类间的点尽可能的分开, 类内的点越接近越好。是最小错误率或最小风险意义下的分类器。 2、 参考教材 4.3,完成线性判别分析(LDA)的 Matlab 实现,并用 Fisher's Iris Data【注】进行验证(考虑 其中的 2 类即可) 。 注:Fisher's Iris Data: Fisher's iris data consists of measurements on the sepal length, sepal width, petal length, and petal width of 150 iris specimens. There are 50 specimens from each of three species. 在 Matlab 中调用 load fisheriris 可以得到该数据,meas 为 150×4 的数据矩阵, species 为 150×1 的 cell 矩阵,含有类别信息。 答:
第四章 1、 阐述线性判别函数的几何意义和用于分类的实用价值。 答:线性判别函数的几何意义 决策面(decision boundary)H 方程:g(x)=0 向量 w 是决策面 H 的法向量 g(x)是点 x 到决策面 H 的距离的一种代数度量 x=xp+r*w/||w||。xp 是在上的投影向量,r 是到的垂直距离 w/||w||是方向上的单位向量. 如图所示:
征的线性组合,并且相互之间是不相关的。 11、试推导出 KL 变换的求解过程。并对比它和主成分分析方法的不同。 答:KL 变换的流程如下: (1) 获取多幅图像的统计特性:图像之间的协方差 (2) 获取协方差的特征值和特征向量,从而获取正交核:特征矩阵 (3) 图像对应象素点对各个特征向量进行投影运算。 KL 变换的 Matlab 代码如下: % K_L 变换 X=imread(TEST.TIF); %读图像 X 是一个 7 波段图像图像的宽和高均为 256 XX=reshape(X,[256*256,7]); %将图像转换化为一个波段的图像 pic1=XX(:,1); pic1=reshape(pic1,[256, 256]); figure(1); imshow(pic1,[]); title(Original Image); XX=im2double(XX); %图像转化为双精度 covx = cov(XX); % 求图像的协方差 [pc,variances,explained] = pcacov(covx); % 求解 K_L 变换矩阵,即 PCA pc myKL=XX*pc; %进行 K_L 变换 pic2=myKL(:,1); pic2=reshape(pic2,[256,256]); figure(2); imshow(pic2,[]); title(K_L 第一分量); figure(3); pic3=myKL(:,2); pic3=reshape(pic3,[256 256]); imshow(pic3,[]); title(K_L 第二分量); my=myKL*pc; my1=my(:,1); my1=reshape(my1,[256,256]); figure(4); imshow(my1,[]); KL 变换和主成分分析方法的不同:K-L 变换在求取了协方差矩阵Σ的之后,只取前 d 项,因此带入了一定的 误差,它本着最小均方误差准则,求得新特征值,它能够考虑到不同的分类信息,实现监督的特征提取。主 成分分析法是一种客观赋权法,它根据各指标间的相互关系与各指标间的变异程度来确定权重系数,能够真 实地反映事物间的现实关系,避免了人为因素带来的误差。 12、C-均值算法的准则是什么?试给出其求解步骤,尝试用 Matlab 实现,并用 Fisher's Iris Data 进行验 证(考虑 2 类分类即可) 。 答:准则是误差平方和:这个准则函数是以计算各类均值
相关文档
最新文档