跳到主要内容

有监督线性判别

线性判别

在已知组别下估计使组间分离最大的线性轴,用成绩向量把学生判回某一类,并先用各类占用看先验是否失衡。

更新日期 2026-08-29 机器学习

这篇能回答什么

线性判别分析(LDA)回答的是「已知组别之后,定量指标怎样投影到最能分开这些组的轴上,并把新样本判回去」。它是有监督的:年级、病型、产品档必须先存在。算法估计组内协方差与组间协方差,找判别方向使组间散度相对组内散度最大;决策边界在共用协方差时是超平面。教学结果表先给出进入模型的类占用——类别 A / B / C 是分组因素各水平的完整个案人数,不是无监督簇。

适合:用语文、数学、英语等成绩向量判别年级,或用化验指标判别亚型。本页用定量成绩表:分组因素选年级(三水平),预测变量勾选语文成绩、数学成绩、英语成绩。完整个案 288,占用 A 68、B 66、C 154。字母对应哪个年级,要回角色里的水平编码核对,表本身没有「高一」列。

什么时候不该用

没有标签、只想分群,应改K-Means 聚类分析或分层聚类。只要检验「三科均值向量是否因年级而不同」、不做出分类规则,主分析是多变量方差分析。只要两类、关心发生比 OR,用二元逻辑回归。学号、姓名不能当预测变量。

如何选择方法

先分清检验均值向量、估计发生比还是造一条分类轴。三门相关成绩、一个定类组别、问「向量中心是否重合」→ MANOVA。两组、要 OR 与概率校准 → 逻辑回归。三组、要判别函数和回代分类 → 线性判别。组别未知 → 任何聚类,而不是 LDA。

  • 线性判别:1 个定类组别(≥2 水平),≥2 个定量预测变量;输出类占用、判别轴与分类。

  • 二元 / 多项逻辑回归:直接建模 P(组|x),不要求组内协方差相等。

  • MANOVA:同一套 Y 向量与组别,检验而不分类。

  • 决策树 / 随机森林分类:非线性分割,不给出一条可写进公式的判别轴。

输入、输出与限制

输入

组别为定类,至少两个水平;本教学是年级三水平。预测变量为定量成绩。任一门成绩或年级缺失的行不进模型。

  • 分组因素:最少 1 个,最多 1 个定类变量。

  • 预测变量:最少 2 个,最多 20 个定量变量。

输出

教学表四列是项目、类别、统计量、取值。A / B / C 是已知组别的占用,分母是完整个案 N。工作台另外给出判别系数、组别重心、分类矩阵时,那些是别的面板,不要给本表加「Wilks」或「准确率」列。先验默认可按占用比例,C 过半会抬高把人判进 C 的基线。

产品限制

  • 线性判别共用一组组内协方差;明显不齐时应改二次判别或逻辑回归。

  • 预测变量个数接近最小类人数时,协方差不稳。

  • 只允许一个分组因素;年级和班级不能同时当两组别。

  • 回代准确率乐观,论文应另留测试切分或交叉验证。

  • 与 SPSS「分类-判别」对格子时,对齐列表删除、先验(相等还是按占用)和进入法。

案例

研究问题。 定量成绩表已有年级标签,并记录语文、数学、英语。研究者想知道三科向量能否把学生判回年级,并先确认三类占用是否严重失衡,而不是先做一次无监督聚类再把簇名写成「高一」。

教学表示例工作表为「Sheet1」。完整个案 288。类占用:A 68(23.61%),B 66(22.92%),C 154(53.47%)。A 与 B 几乎对等,C 过半,多数类基线准确率已是 53.47%。下载后:分组因素选年级;预测变量勾选语文成绩、数学成绩、英语成绩。不要把学号、总分、平均分放进预测变量(总分与三科共线)。

下载教学示例表(定量成绩)

在 StatsX 中操作

  1. 步骤 1 · 上传表格

    打开工作台,将 Excel / CSV / JSON 拖入上传区。本案例使用定量成绩 xlsx,确认工作表为「Sheet1」。单文件不超过 20 MB。

  2. 步骤 2 · 查看画像与质量

    确认年级为三水平定类,语文成绩、数学成绩、英语成绩为定量。学号、姓名排除。若要用物理、化学、生物扩维,先看最小类人数是否仍远大于变量个数。

  3. 步骤 3 · 选择「线性判别」

    在算法目录搜索「判别」或「LDA」,点选线性判别。

  4. 步骤 4 · 指定组别与成绩并运行

    分组因素指定年级。预测变量勾选语文成绩、数学成绩、英语成绩(至少两门)。点击运行分析。

  5. 步骤 5 · 阅读结果

    先核 A/B/C 占用是否与你对年级编码的预期一致,再看判别轴和分类矩阵。准确率必须对照 53.47% 的多数类基线,而不是对照 33%。

StatsX 工作台上传定量成绩表做线性判别
将教学示例表拖入工作台上传区。
列画像确认年级与三门成绩
核对年级为定类,语文、数学、英语为定量。
在目录中选择线性判别
在算法目录中选定「线性判别」。
为线性判别指定年级与三门成绩
分组因素选年级,预测变量勾选语文、数学、英语后运行。

如何阅读输出

下表是已知组别的类占用,不是聚类结果。合计 N=288:A 68(23.61%),B 66(22.92%),C 154(53.47%)。C 占 53.47%,先验若按占用加权,判别器会更常把边界学生推进 C。A 与 B 只差 2 人,这两类的先验几乎对称。表里没有判别系数,也没有 Wilks’ Λ——那些数字若出现在工作台,引用对应面板,不要给本表加列。

线性判别结果表
项目类别统计量取值
线性判别类别 A频数68
线性判别类别 B频数66
线性判别类别 C频数154
线性判别合计有效样本 N288
线性判别类别 A占比(%)23.61
线性判别类别 B占比(%)22.92
线性判别类别 C占比(%)53.47

左右滑动可查看完整表格

教学示例表在 StatsX 工作台中的计算结果口径。

线性判别类占用结果表
工作台线性判别表,三类占用应与上表一致。
线性判别轴上的组别散点
判别平面上的组别重心与重叠;分类计数以矩阵为准。
年级类占用占比图
占比图应与 A/B/C 占比列一致,并提醒多数类基线。

N=288 是年级加三科都非缺失的行,小于成绩全表。C 过半时,即使判别轴很弱,回代准确率也可能「看起来还行」。把占用写进方法,再报告相对 53.47% 基线的提升。字母与高一 / 高二 / 高三的对应只能通过水平编码还原,不能从「C 最大」推出「C 就是高三」。

阅读顺序:类占用与先验 → 判别函数(标准化系数看哪一科拉开组)→ 分类矩阵的对角与混淆对 → 与 MANOVA 的整体检验是否同向。轴显著分开而准确率只略高于基线,应如实写「能分开重心,但个体重叠大」。不要根据占用把 C 写成「成绩最好的年级」。

理论与公式

设 g 个组、p 维预测向量。组内散度矩阵为 S_W,组间散度矩阵为 S_B。Fisher 线性判别寻找方向 w,使

极大化导致广义特征值问题 S_B w=λ S_W w。最多有 min(g−1,p) 条判别轴;本教学 g=3、p=3,至多两条轴。在各组协方差相等、先验为 π_k 的正态假定下,后验对数是 x 的线性函数,决策边界为超平面。先验常取占用比例

本例 (n_A,n_B,n_C)=(68,66,154),N=288,故 π_C≈53.47%。MANOVA 检验的是 μ_1=μ_2=μ_3,用的是同一套 H 与 E 矩阵;LDA 把该几何变成分类规则。逻辑回归不估计 S_W,直接最大化条件似然,两类时二者决策面常接近,三类时逻辑回归要改多项,LDA 仍走两条轴。

注意事项

  • 先报告 68 / 66 / 154。不写占用就谈准确率,等于隐瞒多数类基线。

  • 总分、平均分与单科共线,放进预测变量会把轴变成「自己预测自己的零件」。

  • 线性判别共用协方差;箱线或 Box M 显示不齐时,改二次判别或逻辑回归。

  • 回代准确率不是测试准确率,论文应写切分或交叉验证。

  • 判别轴显著不等于教学上值得改课,效应要对照分数的原始量纲。

  • A/B/C 不是聚类标签,不能和分层聚类页的占用对减。

常见问题

参考文献

  • Fisher, R. A. The use of multiple measurements in taxonomic problems[J]. Annals of Eugenics, 1936, 7(2): 179–188.

  • Hastie, T., Tibshirani, R., Friedman, J. The Elements of Statistical Learning. Springer.

  • Rencher, A. C., Christensen, W. F. Methods of Multivariate Analysis. Wiley.

  • 张文彤, 董伟. SPSS统计分析高级教程[M]. 高等教育出版社.