线性判别法
原理:用一条直线来划分已有的学习集的数据,然后根据待测点在直线的那一边决定的分类。如下图可以做出一条直线来划分两种数据的分类。

但是一般情况下特征数很多,想降低特征数维度。可以通过投影的方式进行计算。然而使得一个多维度特征数变换到一条直线上进行计算。可以减少计算工作的复杂度。

推算过程:
R语言中使用
线性判别法(flasher):
#安装MASS包
install.packages("MASS")
#导入MASS包
library(MASS)
#初始化数据
G=c(1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2)
x1=c(-1.9,-6.9,5.2,5.0,7.3,6.8,0.9,-12.5,1.5,3.8,0.2,-0.1,0.4,2.7,2.1,-4.6,-1.7,-2.6,2.6,- 2.8)
x2=c(3.2,0.4,2.0,2.5,0.0,12.7,-5.4,- 2.5,1.3,6.8,6.2,7.5,14.6,8.3,0.8,4.3,10.9,13.1,12.8,10.0)
#使用lda函数进行线性判别建模
ld=lda(G~x1+x2)
#对数据进行预测
z=predict(ld)
#获得预测后的数据
newG=z$class
#预测后的数据与建模之前的数据进行对比
cbind(G,z$x,newG)
#计算线性判别后的准确率
length(which(G==newG))/length(G)