PCA的降维过程中,非线性结构特征不能被有效的提取。所以,选择主成分的时候不但要保证样本中信息不丢失,还要考虑主成分的描述判别效果;此外,PCA并没有利用样本点之间的类别信息,故不能使其分类达到最优化。
线性判别分析(Linear Discriminant Analysis,LDA),也称为Fisher线性判别,是模式识别的经典算法。它最早由Fisher提出,基本思想是寻找使Fisher准则达到极大值的向量作为最佳投影方向,使投影后的样本能达到最大的类间离散度和最小的类内离散度,使投影后样本具有最佳的可分离性,是一种有效的用于分类的特征提取方法,但是它仅适用于两类分类问题。在Fisher思想的基础之上,Duda提出了判别矢量集的概念,即寻找由一组判别矢量构成的投影子空间,将样本投影到该子空间上得到一投影向量,并作为最终提取的特征向量,解决了多类分类问题,该方法被称为经典的Fisher线性判别分析方法。对于k类问题,则需要k−1个于两类分类的Fisher线性判别函数,即需要由k−1个投影向量w组成一个投影矩阵W(d * k-1),将样本投影到此投影矩阵上,从而可以提取k−1维的特征矢量。针对k类问题,则样本的统计特性需要推广到k类上。
PCA主要是从特征的协方差角度,去找到比较好的投影方式。LDA更多的是考虑了标注,即希望投影后不同类别之间数据点的距离更大,同一类别的数据点更紧凑。
LDA的目标:找到一个分类投影,使得最大的类间离散度和最小的类内离散度。
ci为第i类的中心点,c为所有类的中心点,Sb为样本的类间离散度矩阵,Sw为样本的类内离散度矩阵。
性质:
类间距离 = 类间离散度矩阵的迹,类内距离 = 类内离散度矩阵的迹。
Fisher 准则
为使 Fisher准则取得最大值,W 需满足SbW = λSwW,若Sw非奇异,则Sw-1SbW= λW,W的每一列为的前k-1个较大特征值对应的特征向量。
LDA R 代码
> require(MASS)
> # Load data
> data(iris)
> head(iris, 3)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
> r <- lda(formula = Species ~ ., data = iris, prior = c(1,1,1)/3) #Species ~Sepal.Length + Sepal.Width + Petal.Length + Petal.Width
> r$prior #prior probability of each class
setosa versicolor virginica
0.3333333 0.3333333 0.3333333
> r$counts #the counts for each class
setosa versicolor virginica
50 50 50
> r$means #class-specific means for each covariate
Sepal.Length Sepal.Width Petal.Length Petal.Width
setosa 5.006 3.428 1.462 0.246
versicolor 5.936 2.770 4.260 1.326
virginica 6.588 2.974 5.552 2.026
> r$scaling #the linear combination coefficients for each linear discriminant(in this case with 3 classes we have at most two linear discriminants)
LD1 LD2
Sepal.Length 0.8293776 0.02410215
Sepal.Width 1.5344731 2.16452123
Petal.Length -2.2012117 -0.93192121
Petal.Width -2.8104603 2.83918785
> r$svd #the singular values(svd) that gives the ratio of the between- and within-group standard deviations on the linear discriminant variables.
[1] 48.642644 4.579983
> prop = r$svd^2/sum(r$svd^2)
> prop
[1] 0.991212605 0.008787395
参考资料:
(2) Fisher Linear Discriminant Analysis
(3) Lecture 16: Linear Discriminant Analysis

1588

被折叠的 条评论
为什么被折叠?



