(二)Linear Discriminant Analysis - Part II

本文深入探讨了线性判别分析(LDA)在处理有偏估计时遇到的问题,特别是当样本数小于维数时的奇异协方差矩阵。文章介绍了正则化LDA的概念,包括非正则和正则化方法,以减少估计变化并控制偏差。正则化参数的选择影响着偏差-方差权衡,通过调整参数可以在LDA和QDA之间找到最佳平衡。此外,文章还阐述了正则化在多类分类中的应用,以及Fisher优化准则在降维和分类中的作用。

(一)正则化的引入(Regularized LDA)

在利用线性判别分析进行分类时,在进行协方差估计是得到    ,这个协方差的估计是一个有偏估计(biased estimates)。


因为其协方差是 正定的, 因此可以进行特征值分解 , 

其逆相应为: 

 

我们利用协方差矩阵的逆,来进行分类判别,得到其判别得分函数为

可以看到,判别得分对于很小的特征值将有很大的比重,并且其方向与这个对应的特征向量有很大相关性。


协方差矩阵     产生了有偏估计 的特征值。最大的特征值,是偏差最高的(biased high);最小的特征值,其偏差值是很小的

(biased towards values that are too low)。

对于偏差,当估计的特征值趋向于相等时(equality),偏差是显著的(most pronounced)【我理解是偏差最大的】; 当其特征值是相差高度不同时(highly disparate),其偏差有很小剧烈程度的响应(corresponding less severe)。  

当样本数减少时, 其偏差在上两种情况下都会有所增加(in all cases, this phenomenon becomes more pronounced as the sample size decreases.)。


我们进行分类时,得到的样本数小于维数时, 即 , 这时样本的协方差是奇异的(singular with rank  ), 且最小的特征值 第(D-Nk + 1)个特征值开始,估计值将为0, 这是对应的特征向量将会是任意的正交约束的向量。

这个系统的偏差变化现象在判别分析中与低变化最小特征值子空间跨度(spanned)(指最小的样本特征值其特征向量构成的空间)是正相关的重要关系。因为最大的变化将会发生在判别得分函数中,判别函数得分函数与低样本变化测度空间有很大相关性。


(二) 正则化 

  • 变换协方差矩阵方法一(非正则):对与上述的协方差特征值的问题,我们可以进行特征值的变形修正(correcting the eigenvalue distortion),(包括方法【参加Regularized Discriminant Analysis -JEROME H. FRIEDMAN  P7】),总的方向就是最小均方误差,在进行特征值估计时。将协方差矩阵变为非奇异的(unsingular)。


  • 方法二(正则)正则法,在解决 ill- and poorly- posed inverse 问题时很成功

当得到的样本数小于维数时, 即  ,就属于这种问题,通过应用正则,一种尝试是提高估计(一种正则方法),通过偏置这些远离样本基的值,使这些值被视为”物理上更合理的“(improve the estimates by biasing them away from their sample based values towards values that are deemed to be more "physically plausible".)[Cornfield (1967) suggested applying James-Stein shrinkage to the individual class location estimates.] 

正则的作用是:正则减少了与样本基相关的估计的变化程度,但是以增大偏差潜在威胁作为补偿(因为更趋于相同特征值了)。

这个偏差的变化的平衡通常通过正则一个或者多个参数(这里为),来控制这个偏置的强度,即向“plausible" 集偏置的一组参数。(this bias variance trade-off is generally regulated by one or more parameters that control the strength of the biasing towards the "plausible" set of parameter values.)

通过对样本值进行正则化引入参数 ,这时增加的偏差(即  的变化),将正比与这些 合理可信集(“plausible ”set ) 参数 对实际样本分布表示近似程度。   因而, 如果有一个很差的猜测(a bad guess),即偏置的合理可信集 参数 与实际样本分布 差别很大, 这时,将会有很小的正则; 若是个很好的猜测, 将会是 high degree 正则, 这是很大程度减少了变化(与样本基相关的估计的变化程度),从而增加了偏置。


因为并不知道实际的猜测的准确性, 样本基的方法 经常被用来估计正则参数值。 (sample based method 不是很懂,后续补充)

总的来说: 引入了正则项, 如果正则的越厉害,则偏置的越厉害,偏差也会越大, 同时其沿样本基的估计 变化程度越小。

  • 表示:

1)  2)  3) 是个渐进的过程, 正则的程度的加深的过程:

1)对于QDA,如果, 将会效果很差,正则化替代样本的协方差矩阵的平均

, 

这个应用了一个a considerable degree of regularization 通过减少了参数的估计。 即使协方差矩阵实际上不同的,这种减少变化是通过合并协方差估计(pooled covariance estimate)来实现的,通常有很好的效果,特别在小样本集时。


<think>好的,用户想了解线性判别分析(LDA)在机器学习或数据分析中的应用。首先,我需要整理LDA的基本概念、原理、步骤以及应用场景。根据提供的引用资料,引用[2]提到LDA也称为Fisher线性判别分析,所以应该强调其分类和降维的功能。 用户可能不太清楚LDA和PCA的区别,需要解释清楚。LDA是有监督的,考虑类别标签,而PCA是无监督的,只考虑方差。这部分需要重点说明,帮助用户理解何时选择LDA。 接下来,用户可能需要知道如何实际应用LDA,比如使用Python的sklearn库。根据引用[1],代码示例中导入了LDA,因此需要提供一个简单的代码示例,展示数据预处理、模型训练和可视化步骤。同时,引用[4]提到了绘图问题,这里需要注意在示例代码中加入正确的绘图方法,避免用户遇到垂点位置错误的问题。 此外,用户的问题可能涉及LDA的数学原理。需要简要解释类内散度和类间散度的计算,以及如何求解特征向量。这部分需要用LaTeX公式展示,比如类内散度矩阵$S_W$和类间散度矩阵$S_B$,以及优化目标$S_W^{-1}S_B$的特征分解。注意公式必须用$$...$$格式,并单独成段。 关于应用场景,引用[3]中的示例链接可能包含更多实际案例,可以提及人脸识别、生物特征分类等,帮助用户理解LDA的实际用途。同时,要提到LDA的前提假设,比如正态分布和同方差,这样用户在使用时能注意数据是否符合条件。 用户可能遇到的问题包括维度限制,比如当类别数少时降维后的维度限制,以及小样本问题中的矩阵奇异情况。需要提醒用户注意这些点,并提供解决方法,比如使用正则化。 最后,根据用户的问题生成相关的进一步问题,比如与其他降维方法的比较、数学推导细节、参数调优等,这样可以帮助用户深入探索LDA的不同方面。</think>### 线性判别分析(LDA)详解 #### 1. **基本概念** 线性判别分析(Linear Discriminant Analysis, LDA)是一种有监督的机器学习方法,主要用于**分类任务**和**数据降维**。其核心思想是通过投影将高维数据映射到低维空间,使得不同类别数据之间的类间距离最大化,同时类内距离最小化[^2]。 #### 2. **核心公式** LDA的数学目标是优化**类间散度矩阵$S_B$**与**类内散度矩阵$S_W$**的比值: $$ J(w) = \frac{w^T S_B w}{w^T S_W w} $$ 通过求解广义特征值问题$S_W^{-1}S_B w = \lambda w$,得到最佳投影方向$w$。 #### 3. **应用步骤** 1. **计算类内散度矩阵$S_W$**: $$ S_W = \sum_{i=1}^k \sum_{x \in C_i} (x - \mu_i)(x - \mu_i)^T $$ 其中$C_i$为第$i$类样本集合,$\mu_i$为第$i$类均值。 2. **计算类间散度矩阵$S_B$**: $$ S_B = \sum_{i=1}^k N_i (\mu_i - \mu)(\mu_i - \mu)^T $$ $\mu$为全体样本均值,$N_i$为第$i$类样本数。 3. **求解投影矩阵**:对矩阵$S_W^{-1}S_B$进行特征分解,选择前$d$大特征值对应的特征向量。 #### 4. **Python实现示例** ```python from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA from sklearn.datasets import load_iris import matplotlib.pyplot as plt # 加载数据 data = load_iris() X, y = data.data, data.target # LDA降维到2维 lda = LDA(n_components=2) X_lda = lda.fit_transform(X, y) # 可视化 plt.scatter(X_lda[:,0], X_lda[:,1], c=y, cmap='viridis') plt.xlabel('LDA Component 1') plt.ylabel('LDA Component 2') plt.show() ``` 注意:绘图时需确保坐标轴比例一致,避免出现引用[^4]中提到的投影点偏移问题。 #### 5. **应用场景** - **分类任务**:如手写数字识别、生物特征分类 - **数据可视化**:将高维数据降至2D/3D进行观察 - **特征压缩**:在语音识别、图像处理中减少计算量 #### 6. **与PCA的区别** | 特性 | LDA | PCA | |---------------------|------------------------------|-------------------| | 监督性 | 需要类别标签(有监督) | 无监督 | | 优化目标 | 最大化类间差异,最小化类内差异| 最大化方差 | | 降维后维度上限 | $C-1$(C为类别数) | 无限制 | #### 7. **注意事项** - 数据需满足**正态分布**和**同方差性**假设 - 当类别数较少时,降维后维度受限制(最多$C-1$维) - 小样本问题中可能出现$S_W$矩阵奇异,可添加正则化项解决
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值