当你需要对多个已知类别进行划分,且假设不同类别的数据在分布形状上相似时,可以使用线性判别分析。它通过计算各组的中心点与特征的散布情况,寻找一条能够最清晰区分各个类别的界线,从而帮助你预测新数据所属的分类,并直观理解哪些特征在区分过程中起到了关键作用。
核心原理与逻辑
线性判别分析的核心在于“投影”。它会将原始的多维特征空间压缩到较低维度的子空间中,并在此过程中最大化类间距离,同时最小化类内距离。这使得不同组别在投影后的重叠度降至最低,从而实现高效的分类。
不同于无监督的聚类方法,该方法是完全的有监督学习。这意味着模型在学习过程中会利用已知的类别标签,通过计算各类别的均值向量和共同的协方差矩阵,精准找到特征空间的最佳分割面。
分类效果评估
在 Lattice 平台中,线性判别分析不仅输出准确率,还会提供详细的混淆矩阵。混淆矩阵能帮助你清晰看到模型在哪些类别之间出现了混淆,例如模型是否容易将 A 类误判为 B 类,从而深入评估模型的分类性能。
此外,模型还会计算各类别的先验概率及各特征的解释方差比,让你量化每一维特征在整体分类决策中的贡献程度。
特征投影与可视化
该方法最直观的产出之一是低维空间的散点图。通过将高维特征投射到由线性判别轴(LD1/LD2)构成的子空间中,你可以直接从视觉上观测不同类别数据点的分离程度。这种可视化方式能直观辅助你判断特征选择是否合理。
如果散点图呈现出明显的分类簇,说明模型捕捉到了有效的区分信号;若类别重叠严重,则可能需要重新审视特征工程或考虑引入更多区分性强的特征。
与相关算法的边界
线性判别分析与逻辑回归主要区别在于分布假设:前者假设数据服从正态分布,而逻辑回归则不需要。与二次判别分析(QDA)相比,它简化了对类内协方差的假设,通过假设各类别方差相同,避免了参数爆炸,在大样本量下表现更为稳定。
对于有监督的分类任务,该方法在保持模型解释性的同时,提供了比复杂黑盒模型更透明的决策边界,是追求模型逻辑清晰性时的推荐选择。
1 · Intent → method
An LLM picks stats_lda from a fixed catalog.
2 · Method → numbers
Deterministic Python engine runs the math. Same input → same output.
3 · Numbers → plain language
A second LLM translates the result into your domain’s vocabulary.
为什么线性判别分析要求各类别协方差相同?
这是线性判别分析的核心假设。它假设所有类别的数据在空间中呈现类似的分布形状,这样模型才能通过统一的线性方程(即线性决策边界)来划分不同区域,从而保证算法的计算效率与稳健性。
如果我的数据不满足正态分布,还能用这个方法吗?
线性判别分析虽然假设特征在类别内部服从多元正态分布,但在实际应用中,如果数据偏差不大,它通常仍能提供不错的分类参考。但若数据偏态极其严重,建议结合 Lattice 提供的 EDA 工具先进行正态化转换或考虑使用其他非参数化的分类算法。
Tool 输入字段
Schema for stats_lda not exported yet (run pnpm export:registry).