LDA的思想LDA的实际例子LDA与PCA的异同 LDA的思想LDA(Linear Discriminant Analysis,线性判别分析)是一种经典的降维方法。 它是一种有监督的的考虑样本类别的降维方法。有监督的意思是LDA进行计算之前需要知道样本的分类结果,不同于PCA(主成分分析)的无监督,PCA不需要知道样本的类别,直接根据降维变量的数据趋势,计算出所有的主成分。 LDA的基本思想就是将数据降维投影,以最大化的区分样本类别。 举例来说,假设有2种类别的样本:小鼠肝脏和小鼠脾脏细胞的RNA-seq数据,为了简单起见,假设只有2个基因的RNA-seq数据,如下图所示,蓝色为肝脏细胞,红色为脾脏细胞。 LDA就是尽最大化的区分开两种生物样本:肝脏细胞和脾脏细胞。为了完成这项工作,它会将2维散点图投影到1维直线上,并获得最大的区分效果,如下图左LDA所示。 有监督在此处就代表,它会将数据点的分类情况(肝脏或脾脏细胞)纳入计算,获得最佳的分类效果,如上图左,尽可能的分开两个细胞群。而无监督则是完全不管数据的分类情况,如PCA就是直接根据数据趋势,先找到数据变异最大的方向(也就是PC1),再在垂直于PC1的方向上找变异最大的PC2,在这个过程中,PCA完全忽略数据的分类情况,只根据基因Read值来计算,如上图右。 LDA的降维最大可以到 PCA的降维数等于降维变量的数目(此处为基因,两个基因),由于PCA中往往只需要2-3个主成分就可以解释80%以上的数据变异,所以使用2维或3维表征数据也就是相当于降维到2维或3维。 LDA的实际例子以一个生物例子为例,假定现在正在开发一项肿瘤药物,但是它对一些病人有特效,对另一些病人的疗效却很糟糕。那么如何确定此药的受众人群?也许可以考虑基因表达来区分有效与无效的病人。 2分类的情形 先看只有一个Gene的情况: 基因X低表达的人对此药物有较好的反应,基因X高表达的人对此药物无反应。但是基因X中度表达的人中并没有出现一个明确的cutoff值。 再增加一个Gene数据,如下图左,已经可以很好的区分两种病人。 增加Gene到3个时,如下图右,两种病人可以完全得到区分。 我们有理由相信随着纳入考虑的Gene数目越来越多,分类的效果会更好。但是这种分类过程在超过3维之后就已经无法通过图形展示了,也很难通过解析的方式来直接理解它,有没有一种方法可以通过降维而完好的呈现这种思想? LDA就是一种最简单的表征上述思路的方法。 将2基因图中的数据点投影到图中所示的直线上,则可以最大化的区分两个分类。 LDA是如何完成这个过程的呢? LDA会最大化两个分类的均值差,同时最小化两个分类的方差。也就是令 令 三个基因的情形是类似的,LDA的降维轴数是 算法思想仍然是最大化两个分类之间的均值差方( 3分类的情形 如果是三分类的情形,结果就会稍微复杂一下,因为此时降维轴数为2,如下图左,为一组三分类数据。 LDA的算法仍然是最大化距离,最小化方差。计算总体均值和各分类均值,三个分类的距离就是各个分类均值和总体均值的差方( 最终结果如下图右,通过两个轴将数据进行分类。 由于初始是两个轴,最终降维结果也是两个轴,所以看起来并没有太大变化。 然而实际上一个RNA-seq数据会有成千上万的基因,将如此多的基因降维到只有2个轴,并尽可能的区分3个分类就很有意义了。 LDA与PCA的异同
专题以往文章 参考资料 StatQuest课程:https:///video-index/ 线性判别分析LDA原理总结:https://www.cnblogs.com/pinard/p/6244265.html |
|