R语言--判别分析

判别分析(discriminant analysis)是在分类对象的类别归属明确的情况下,根据对象的某些特征指标构造判别函数来判定其类别归属的分类方法。即根据已掌握的若干个样本的数据信息,总结出客观的样本分类的规律,建立判别公式和判别准则。再遇到新的样本的时候,根据已总结出来的判别公式,来判断样本所属的类别。
三大主流判别分析算法:

  • 费希尔(Fisher)判别:线性判别分析(Linear Discriminant Analysis,LDA)和二次判别分析(Quadratic Discriminant Analysis,QDA)
  • 贝叶斯(Bayes)判别:朴素贝叶斯分类算法(Naive Bayesian Classification)
  • 距离判别:K最近邻(K-Nearest Neighbor,KNN)和有权重的K最近邻(Weighted K-Nearest Neighbor)

Fisher判别

判别原理

已知A、B两类观察对象,A类有 \(n_{A}\) 例,B类有 \(n_{B}\) 例,分别记录了 \(X_{1},X_{2},...X_{m}\) 个观察指标,称为判别指标或变量。Fisher判别法就是找出一个线性组合: \[ Z=C_{1}X_{1}+C_{2}X_{2}+...+C_{M}X_{M} \] 使得综合指标Z在A类的均数 \(\overline{Z}_{A}\) 与在B类的均数 \(\overline{Z}_{B}\) 的差异尽可能的大,而两类内综合指标Z的变异 \(S_{A}^{2}+S_{B}^{2}\) 尽可能小,即使 \[\lambda =\frac{|\overline{Z_{A}}-\overline{Z_{B}}|}{S_{A}^{2}+S_{B}^{2}}\] 达到最大。此时,$ Z=C_{1}X_{1}+C_{2}X_{2}+...+C_{M}X_{M} $ 称为Fisher判别函数。$ C_{1},C_{2},...,C_{M} $ 称为判别系数。
对 $\lambda $ 求导,判别系数可由下列方程组解出: \[\begin{Bmatrix} S_{11}C_{1}+S_{12}C_{2}+...+S_{1m}C_{m}=D_{1}\\ S_{21}C_{1}+S_{22}C_{2}+...+S_{2m}C_{m}=D_{2}\\ ...\\ S_{m1}C_{1}+S_{m2}C_{2}+...+S_{mm}C_{m}=D_{m} \end{Bmatrix}\] 其中, \(D_{j}=\overline{X}_{j}^{(A)}-\overline{X}_{j}^{(B)}\)\(\overline{X}_{j}^{(A)},\overline{X}_{j}^{(B)}\)分别是A类和B类第j个指标的均数(j = 1,2,...,m); \(S_{ij}\)\(X_{1},X_{2},...,X_{m}\) 合并协方差阵的元素。 \[ S_{ij}=\frac{\sum (X_{i}^{(A)}-\overline{X}_{i}^{(A)})(X_{j}^{(A)}-\overline{X}_{j}^{(A)})+\sum (X_{i}^{(B)}-\overline{X}_{i}^{(B)})(X_{j}^{(B)}-\overline{X}_{j}^{(B)})}{n_{A}+n_{B}-2} \] 。其中 \(\overline{X}_{i}^{(A)},\overline{X}_{i}^{(B)},\overline{X}_{j}^{(A)},\overline{X}_{j}^{(B)}\) 分别为 \(X_{i},X_{j}\) 于A类和B类的观察值。

判别规则

建立判别函数后,按Fisher判别式逐例计算判别函数值 \(Z_{i}\) ,进一步计算 \(Z_{i}\) 的两类均数 \(\overline{Z}_{A}\)\(\overline{Z}_{B}\) 与总均数 \(\overline{Z}\) ,按照式子: \(\overline{Z}_{c} = \frac{\overline{Z}_{A}+\overline{Z}_{B}}{2}\) 计算判别界值。 \[Discriminant \ Rule\begin{Bmatrix} Z_{i}>\overline{Z}_{c} & Judged\ as\ A\\ Z_{i}<\overline{Z}_{c} & Judged\ as\ B\\ Z_{i}=\overline{Z}_{c} & Judged\ as\ both \end{Bmatrix}\]

例子

收集了24例妇女的两个指标:抗血友病因子( \(X_{1}\) )和类抗血友病因子抗原( \(X_{2}\) )的资料,如下表。其中正常人(A)类12例,血友病基因携带者(B)类12例

<
编号 类别 \(X_{1}\) \(X_{2}\) 编号 类别 \(X_{1}\) \(X_{2}\)
1 A -0.5628 0.3716 13 B -0.3866 0.1642
2 A -0.9337 -0.5568 14 B -0.1925 0.0244
3 A -0.4016 0.4356 15 B -0.4557 -0.0012
4 A -0.4324 0.5779 16 B -0.1755 -0.0903
5 A -0.7718 0.2015 17 B -0.4405 -0.4888
6 A -0.0539 0.1851 18 B -0.2514 -0.2740
7 A -0.6083 0.1996 19 B -1.2130 -1.0990
8 A -0.2220 0.1223 20 B -0.1939 -0.0571
9 A -0.3472 0.2618 21 B -0.0518 -0.1335
10 A -0.3260 0.3781 22 B 0.0193 0.1801
  • 1
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值