1 min read

LDA 理解

# knitr::opts_chunk$set(warning = FALSE, message = FALSE, cache = T)
knitr::opts_chunk$set(warning = FALSE, message = FALSE, eval=F)
library(tidyverse)
library(formattable)

新增

  • LDA和PCA的优劣

LDA

  • Linear Discriminant Analysis
  • 线性判别分析

LDA介绍

类似于PCA,投影到一个降维的平面上或者直线上。 使得 投影后类内方差最小,类间方差最大 (宏基因组 2018)

如图(刘建平 2016)

  • 分类变量\(y\)用颜色表示
  • 特征变量分别是横纵轴,图中点的坐标,反映特征向量决定样本在空间相对位置。

每幅图都出现了一条直线,这条直线的被决定的,

  • 它将每个样本投影在这条直线上,
  • 使得同颜色的样本彼此靠近
  • 不同颜色的样本彼此远离
  • 完成以上两个最优化问题后,直线位置决定
  • 整个过程就是LDA形成的过程

LDA可视化

# Installation
devtools::install_github('fawda123/ggord')
# 按物种分组LDA排序
ord <- MASS::lda(Species ~ ., iris, prior = rep(1, 3)/3)

# 展示LDA分析
library(ggord)
ggord(ord, iris$Species)

Beck (2018) 可以可视化LDA的结果。

LDA与PCA比较

如图(刘建平 2016), 实现方式不一样,

  • PCA 寻找最大方差方向
  • LDA 寻找投影后类内方差最小,类间方差最大

因此分类和降维的时候,会发现两者的产生平面和直线会差异到垂直。

刘建平 (2016) 认为,

  • LDA要求投影后类内方差最小,类间方差最大,因此如果样本分类信息依赖均值,那么LDA的效果好。
  • PCA是comp 1 是选择方差最大的地方,因此如果样本分类信息依赖方差,那么PCA的效果好。

Beck, Marcus W. 2018. Ggord: Ordination Plots with Ggplot2.

刘建平. 2016. “线性判别分析LDA原理总结.” 2016. https://www.cnblogs.com/pinard/p/6244265.html.

宏基因组. 2018. “比PCA更好用的监督排序—Lda分析、作图及添加置信-Ggord.” 2018. https://mp.weixin.qq.com/s/F9c_ISpOpjHyiCNahoYTqQ.