Statistic Learning 3

1. LDA for p > 1

假设$X=(x_1, x_2, …, x_p)$来自多元高斯分布,关于K类有着不同的均值,但协方差矩阵相同。

多元高斯分布的一些直观概念

  • 假设每个$predictor$符合一维高斯分布,每对$predictor$中存在相关性。
    • 当$p=2$时,表面积的高度代表了$(x_1, x_2)$那边附近的概率;若言这$x_1$轴或者$x_2$轴切开,那得到的截面都是一维高斯分布的形状
    • 当$p=2$时,若$Var(x_1) = Var(x_2)$,$Cor(x_1, x_2)=0$,那么表面积将会是钟型。若$x_1,x_2$存在相关性,或者协方差矩阵不相等时,那么表面积的形状就是椭圆了。

多元高斯分布的相关定义

  • 一个p维的多元高斯分布的随机变量表示为$X\sim N(\mu, \Sigma)$

    • 其中$E(x)=\mu$是$X$的均值,一个$1\times p$维的向量

    • $Cov(X) = \Sigma$是$X$的$p\times p$维的协方差矩阵

    • 多元高斯分布的密度函数定义为:

  • 当$p>1$时,$LDA$的分类器第$k$个类别中的观测对象服从多元高斯分布$N(\mu_k, \Sigma)$,有着不同的均值$\mu_k$,相同的协方差矩阵$\Sigma$。将第$k$个类别的$f_k(X=x)$带入贝叶斯公式中,经代数变换后,对于$X=x$得到如下式子:

    最大的$\delta_k(x)$所对应的类别$k$即为$X=x$所属的类别。

  • 假设现在有3个类别,$\mu_k$不同,但$\Sigma$相同。那么将会有3条线充当贝叶斯的决策边界,因为3个类对应了3对类别:1和2,1和3,2和3。为了得到$\delta_k$,就需要去估计未知参数$\mu_1, \mu_2, …, \mu_k$;$\pi_1, \pi_2, …, \pi_k$;以及$\Sigma$。其公式和$p=1$时的十分类似,同样$\delta_k(x)$是$x$的线性函数,这说明$LDA$依赖于其元素的线性组合。

LDA应用于Default数据集

  • 当$LDA$应用于$Default$数据集的时候,可以发现$LDA$拟合10000条训练数据的训练误差为$2.75\%$。这听起来很低,但需要注意两点:

    • 训练误差往往低于测试误差。话句话说,当其用于预测一批新的个体是否会$default$的时候,将会表现的很糟糕。这是因为我们调整了模型的参数使得其在训练集上表现更好,但测试集和训练集的分布还是有差距的。
    • 由于训练集中,仅有$3.33\%$的个体$default$了,在不考虑$balance$和$student ~ status$的情况下,一个简单的分类器总会倾向于预测一个个体将不会$default$。换句话说,一个没有任何参数的分类器预测所有样本为正样本,它的错误率也仅比$LDA$高一点而已。
  • 混肴矩阵

    ​ 在使用$LDA$的过程中,$LDA$可能误把正样本当成负样本;把负样本当成正样本。使用混肴矩阵可以明确的表示这些指标。

    • 对于$default$数据来说,9667人中仅有23人被标记错误会$default$,错误率很低。但是,333个人会$default$的人,仅仅检测出了81个人,错误率高达$(333 - 81)/333 = 75.7\%$。
    • 一般用$sensitivity$和$specificity$来描述医护和生物方面的分类指标。在$default$数据集中,$sensitivity$是被检测到真正会$default$的人,只有$(1 - 75.7\%) = 24.3\%$;而$specificity$是被检测到不会$default$的人,高达$(1-\frac{23}{9667}) \times 100\% = 99.8\%$。
  • 为什么$LDA$在辨别$default$人员时表现的如此差劲?如何去避免这个问题呢?

    • $LDA$尝试去近似贝叶斯分类器,在所有类别中取得较低的整体错误率。为此,贝叶斯分类器为产生尽可能少的错误,再者正负样本不平衡,那么分类器倾向于预测测试样本为正样本。
    • 降低置信度,如$Pr(default=Yes\mid X=x) > 0.2$,那么更多的人将会被预测为$default=Yes$。对于银行来说,预测错几个正样本没问题,但遗漏了负样本将会是致命的问题。

ROC曲线

  • ROC曲线的横坐标是$False ~ Positive ~ Rate$,纵坐标是$True ~ Positive ~ Rate$。
  • ROC曲线下的面积$AUC$反映了当前分类器的好坏。若$AUC$越大,说明该分类器越好。ROC曲线各对用的$FP,TP$值都是调节置信度得到的,但置信度并没有反应在曲线图中。
  • 若是$predictors$和预测的$Response$无关,那么$ROC$曲线应该在$y=x$下面。

2. Quadratic Discriminant Analysis

Quadratic Discriminant Analysis(二次型判别分析)

$LDA$假设样本来自多元高斯分布,均值向量不同,但$k$个类别的协方差矩阵相同。$QDA$和$LDA$类似,但$QDA$假设每个类别都有不同的协方差矩阵,即来自第$k$类的样本服从:

在这个假设下,贝叶斯分类器可简化为:

所以,$QDA$需要估计$\Sigma_k,\mu_k,\pi_k$,然后将$X=x$代入$\delta_k(x)$,最大的那一项所对应的$k$即为$X=x$所属的类别。由于$x$在上式中是二次函数,故$QDA$由此得名。

QDA和LDA,用哪个更好?

为什么要假设$X$是否共享同一协方差矩阵呢?或者$LDA$,$QDA$,用哪个更好?回答在于,bias-variance trade-off

  • 若现在有$p$个$predictors$,为每一类别估计一个协方差矩阵总共需要$\frac{p(p+1)}{2}$个参数,$QDA$为每个类别都估计了$\Sigma$,那么就需要$k\frac{p(p+1)}{2}$个参数。若有50个$predictors$,那么就接近$1275$个参数,参数较$LDA$多了很多。所以$LDA$的灵活度没有$QDA$高。但反过来讲,$LDA$的$variance$更低,可能提高模型的能力。但需要注意的是,一旦$LDA$关于$k$个类共享同一个协方差矩阵的假设是错误的,那$LDA$就会受到高偏差的影响。
  • 一般来说,若训练样本较少,$LDA$比$QDA$更加适合,因为减少$variance$很重要。相反,若是训练集很大,分类器的$variance$不是主要考虑的问题,或者说$k$类共享同一个协方差矩阵的假设站不住脚的,这时候就推荐使用$QDA$了。当贝叶斯的决策边界接近于非线性的时候,$QDA$是明显优于$LDA$的。

3. A comparison of Classification Methods

主要比较:$Logistic ~ Regression$,$LDA$,$QDA$,$KNN$。

  • 首先比较$Logistic ~ Regression$和$LDA$

    • $LDA$:$\delta_k(x) = x\frac{\mu_k}{\sigma^2} - \frac{\mu_k^2}{2\sigma^2} + log(\pi_k)$

      对于二分类问题,且$p=1$时,$\begin{cases} P_1(x) \\ P_2(x)=1-P_1(x) \end{cases}$,可以推出:

      这里的$c_0$,$c_1$都是$\mu_1, \mu_2, \sigma^2$的方法。

    • 在$Logistic ~ Regression$中,

    • 公式(1)和公式(2)都是$x$的线性方法,因此$Logistic ~ Regression$和$LDA$都产生了线性决策边界。两个方法唯一不同的是,$Logistic ~ Regression$和$LDA$只在拟合的过程中不同,大多数人可能认为它俩结果类似,虽然如此但也并不一直如此。那么它们分别在什么时候用呢?

      • $LDA$假设样本来自高斯分布,且每个类别的方差相同。当该假设被满足时,$LDA$优于$Logistic ~ Regression$。
      • 当高斯分布的假设未被满足时,$Logistic ~ Regression$优于$LDA$。
  • 再谈谈$KNN$

    • 当预测$X=x$的类别时,$KNN$使用离$x$最近的$k$个样本中,出现此处最多的类别作为$x$的类别。
    • 由于$KNN$是完全没有参数的方法,即对于决策边界的形状没有任何的约束,当真实决策边界为非线性时,使用$KNN$将会超越$LDA$和$Logistic ~ Regression$。
  • 然后谈谈$QDA$

    • $QDA$是无参数$KNN$,线性$LDA$,$Logistic ~ Regression$三个方法折衷的一个版本。由于$QDA$假设了决策边界为二次型,比起线性模型,能解决更广的问题。虽然没有$KNN$灵活,当训练样本数量有限的时候,$QDA$能产生较好的效果,因为它确实对决策边界做了假设。
  • 最后总结一下各个方法应用的场景

    • 当真实的决策边界为线性时,$LDA$,$Logistic ~ Regression$都会产生比较好的效果。
    • 当真实的决策边界为非线性时,$QDA$表现更加出色
    • 当真实的决策边界更为复杂时,$KNN$能够表现的更好,但需合理的控制$K$值。