线性判别分析_第1页
线性判别分析_第2页
线性判别分析_第3页
线性判别分析_第4页
线性判别分析_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

用线性判别分析(Linear Discriminant Analysis)对Wine数据集进行分类1. 线性判别分析(LDA)原理LDA是统计学上一种经典的分析方法,在医学中的患者疾病分级、经济学的市场定位、产品管理、市场研究、人脸识别和机器学习等领域有广泛的应用。LDA可以用于对数据进行分类,首先,我们要用事先分好类的数据对LDA进行训练,建立判别模型,所以LDA属于监督学习的算法。LDA的基本思想是投影,将n维数据投影到低维空间,使得投影后组与组之间尽可能分开,即在该空间中有最佳的可分离性,而衡量标准是新的子空间有最大的类间距离和最小的类内距离。LDA的目标是求出使新的子空间有最大的类间距离和最小的类内距离的向量a,构造出判别模型。形象地理解,如图1,红色点和蓝色点分别代表两个类别的数据,他们是二维的,取二维空间中的任一个向量,作各点到该向量的投影,可以看到,右图比左图投影后的分类效果好。再如图2,是三维空间的各点作投影到二维空间,可以看到左图比右图分类效果好。有时需要根据实际选择投影到几维才能实现最好的分类效果。构造判别模型的过程:(1) 作投影设n维数据样本集X=xi|i=1,2,3j,这j个样本可以分为k个类别X1,X2,Xk.令w为n维空间中任一向量,则样本xi在w上的投影为wTxi,得到的是一维数据.(2) 计算投影后的类内距离与类间距离其中利用了方差分析的思想: 类内距离:E0= t=1kxXt(wTx-wTXt)2 Xt表示 Xt中的样本未投影前的平均. 整理得 E0=wTE w 其中矩阵E=t=1kxXtx-Xtx-XtT 类间距离:B0= t=1knt(wTXt-wTX)2 X表示所有样本未投影前的平均,nt表示Xt中样本数整理得 B0=wTBw 其中矩阵B= t=1knt(Xt-X)(Xt-X)T(3) 构造目标函数为了得到最佳的w,我们希望E0尽量小,B0尽量大,因此构造J(w)= B0E0 问题转化为求w使J(w)达到极大值,但使J(w)达到最大值的w不唯一,于是我们加上一个约束条件E0=1即求w,使J(w)在约束条件E0=1下达到极大值(4) 拉格朗日乘数法求w利用拉格朗日乘数法我们可以得到以下等式(E-1B)w=w 为拉格朗日乘子即为E-1B 的特征值,w为对应的特征矩阵由特征方程|E-1B-I|= 0 可解除 特征值 和特征向量 w(5) 导出线性判别函数把特征值由大到小排列,取最大的特征值,所求w就是对应的特征向量w导出线性判别函数为u(x)=wx若用一个线性判别函数不能很好区别各个总体,可用第二大特征根,第三大特征根对应的特征向量构造线性判别函数进行判别(即上面所说根据实际选择降维到几维空间),线性判别函数个数不超过k-1个。至此,已构造出判别模型,利用判别模型对新的样本代入判别函数,把结果与设定的阀指比较,把新样本判给不同的类别。2. 利用R语言中的lda()函数对wine数据集进行分类lda()函数用于线性判别分析,在MASS包中wineattach(wine)library(MASS)wine.ldawine.lda #输出结果wine.predaabarplot(a,beside=T,legend.text=attr(a,dimnames)$wine.pred)#画条形图表示分类结果代码如下:Call:lda(Cultivars Alcohol + Malic.acid + Ash + Alcalinity.of.ash + Magnesium + Total.phenols + Flavanoids + Nonflavanoid.phenols + Proanthocyanins + Censity + Hue + OD280.OD315.of.diluted.wines + Proline, data = wine)Prior probabilities of groups: #先验概率 1 2 3 0. 0. 0. Group means: #每组的平均向量 Alcohol Malic.acid Ash Alcalinity.of.ash Magnesium Total.phenols1 13.74475 2. 2. 17.03729 106.3390 2.2 12.27873 1. 2. 20.23803 94.5493 2.3 13.15375 3. 2. 21.41667 99.3125 1. Flavanoids Nonflavanoid.phenols Proanthocyanins Censity Hue1 2. 0. 1. 5. 1.2 2. 0. 1. 3. 1.3 0. 0. 1. 7. 0. OD280.OD315.of.diluted.wines Proline1 3. 1115.71192 2. 519.50703 1. 629.8958Coefficients of linear discriminants: #线性判别函数系数 LD1 LD2 Alcohol -0. 0.Malic.acid 0. 0.Ash -0. 2.Alcalinity.of.ash 0. -0.Magnesium -0. -0.Total.phenols 0. -0.Flavanoids -1. -0.Nonflavanoid.phenols -1. -1.Proanthocyanins 0. -0.Censity 0. 0.Hue -0. -1.OD280.OD315.of.diluted.wines -1. 0.Proline -0. 0.Proportion of trace: #第i个判别式对区分各组的贡献大小 LD1 LD2 0.6875 0.31253. 运行结果及解释用table()得到的列联表: Cultivarswine.pred 1 2 3 1 59 0 0 2 0 71 0 3 0 0 48解释:列变量表示每个样本本身所属类别,行变量表示每个样本判归的类别用barplot()得到的条形图: 解释:横轴对应列联表的列变量,柱子对应列联表的行变量可以看出,LDA对Wine数据集的判别正确率为100%4. LDA的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论