1.线性判别分析
Linear Discriminant Analysis(线性判别分析)(sklearn.discriminant_analysiss.LinearDiscriminantAnalysis
) 和 Quadratic Discriminant Analysis (二次判别分析)(discriminant_analysis.QuadraticDiscriminantAnalysis) 是两个经典的分类器。 正如他们名字所描述的那样,他们分别代表了线性决策平面和二次决策平面。
以上这些图像展示了 Linear Discriminant Analysis (线性判别分析)以及 Quadratic Discriminant Analysis (二次判别分析)的决策边界。其中,最后一行表明了线性判别分析只能学习线性边界, 而二次判别分析则可以学习二次边界,因此它相对而言更加灵活。
1.1 使用线性判别分析来降维
discriminant_analysis.LinearDiscriminantAnalysis
通过把输入的数据投影到由最大化类之间分离的方向所组成的线性子空间,可以执行有监督降维(详细的内容见下面的数学推导)。输出的维度必然会比原来的类别数量更少的。因此它总体而言是十分强大的降维方式,同样也仅仅在多分类环境下才能感觉到。
实现方式在 discriminant_analysis.LinearDiscriminantAnalysis.transform
中。关于维度的数量可以通过 n_components
参数来调节。 值得注意的是,这个参数不会对 discriminant_analysis.LinearDiscriminantAnalysis.fit
或者 discriminant_analysis.LinearDiscriminantAnalysis.predict
产生影响。