fisher算法及其matlab实现.doc
《fisher算法及其matlab实现.doc》由会员分享,可在线阅读,更多相关《fisher算法及其matlab实现.doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-作者xxxx-日期xxxxfisher算法及其matlab实现【精品文档】 Fisher判别法讲解以及matlab代码实现 两类的线形判别问题可以看作是把所有样本都投影到一个方向上,然后在这个一维空间中确定一个分类的阈值。过这个预置点且与投影方向垂直的超平面就是两类的分类面。第一个问题,如何确定投影方向?这里只讨论两类分类的问题.训练样本集是X=x1,x2.xn,每个样本是一个d维向量,其中第一类w1=,.,第二类w2=,.。我们要寻求一个投影方向w(w也是一个d维向量),投影以后样本变成:=(y是一个标量),i=1.n在原样本空间中,类均值为: i=1,2(一共两类的均值)(ps.是一个d
2、*1的矩阵,假设每个维度是一个变量值,mi中的每一维度就是这些变量值的均值,如下图所示: 图1特别注明:有些例子给的矩阵是这样的: 图2这里的单个样本是1*d的矩阵,要注意计算的时候将其转置,不然套用fisher算法公式的时候就会发现最后得到的矩阵维数不对。定义各类类内的离散度矩阵为:(类内离散度矩阵其实就是类协方差矩阵,类在多于一个样本,且样本维度1时是一个矩阵)(因为,是一个d*1的矩阵,也可称作d维向量,也是一个d*1的矩阵,所以最后得到的一定是一个d*d的矩阵)(在用matlab计算的时候直接用cov(wi)即可得到想要的协方差矩阵,故直接计算不探究细节时图2可直接cov算协方差,不用
3、根据公式转置来转置去,不过matlab中算的协方差被缩小了(n1-1)倍,计算时=cov(w1)*(n1-1)总的类内离散度矩阵:类间离散度矩阵定义为:在投影以后的一维空间里,两类的均值分别是; i=1,2故类内离散度不再是一个矩阵,而是一个值 i=1,2总类内离散度为:类间离散度:要使得需求的方向投影能在投影后两类能尽可能的分开,而各类内部又尽可能的聚集,可表示成如下准则,即fisher准则:将公式代入并通过拉格朗日求极值的方法,可得投影方向:(w是一个d*1的矩阵,或者说亦是一个d维向量)阈值可表示为:最后将待确定样本代入判断的符号和哪个类相同,确定其属于哪个类别。例子(注意表格中所给的样
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- fisher 算法 及其 matlab 实现
限制150内