# knitr::opts_chunk$set(warning = FALSE, message = FALSE, cache = T)
knitr::opts_chunk$set(warning = FALSE, message = FALSE, eval=F)
library(tidyverse)## Error in `library()`:
## ! there is no package called 'tidyverse'
## Error in `library()`:
## ! there is no package called 'formattable'
新增
- LDA和PCA的优劣
LDA
- Linear Discriminant Analysis
- 线性判别分析
LDA介绍
类似于PCA,投影到一个降维的平面上或者直线上。 使得 投影后类内方差最小,类间方差最大 [@宏基因组LDA]。

如图[@刘建平2016],
- 分类变量y用颜色表示
- 特征变量分别是横纵轴,图中点的坐标,反映特征向量决定样本在空间相对位置。
每幅图都出现了一条直线,这条直线的被决定的,
- 它将每个样本投影在这条直线上,
- 使得同颜色的样本彼此靠近
- 不同颜色的样本彼此远离
- 完成以上两个最优化问题后,直线位置决定
- 整个过程就是LDA形成的过程
LDA可视化
# 按物种分组LDA排序
ord <- MASS::lda(Species ~ ., iris, prior = rep(1, 3)/3)
# 展示LDA分析
library(ggord)
ggord(ord, iris$Species)@ggord 可以可视化LDA的结果。
LDA与PCA比较

如图[@刘建平2016], 实现方式不一样,
- PCA 寻找最大方差方向
- LDA 寻找投影后类内方差最小,类间方差最大
因此分类和降维的时候,会发现两者的产生平面和直线会差异到垂直。
@刘建平2016 认为,
- LDA要求投影后类内方差最小,类间方差最大,因此如果样本分类信息依赖均值,那么LDA的效果好。
- PCA是comp 1 是选择方差最大的地方,因此如果样本分类信息依赖方差,那么PCA的效果好。