主坐标分析(PCoA)及非度量多维标度(NMDS)概述
主坐标分析(PCoA)
主坐标分析(Principal Coordinates Analysis,PCoA)是一种探索和可视化数据相似性或相异程度的方法。它以对象间相异矩阵开始,为每个对象分配低维空间中的位置。
作为基于距离的排序方法,PCoA的输入数据为已经计算好的对象间距离测度矩阵,可以灵活地选择任意关联测度类型。这点和PCA或CA不同,它们的输入数据为原始的对象-变量组成矩阵,排序结果仅表征了欧几里得距离或卡方距离。尽管如此,PCoA在计算过程中仍然涉及到特征向量提取,就这点而言,PCoA也可同PCA以及CA一起归类于基于特征向量提取的排序方法。
PCoA算法简述
若忽略输入数据类型的差异,PCoA的计算原理大致与PCA相似,通过特征向量提取实现降维,尽可能通过低维空间把x个对象间的相互关系(相似、相异程度)表现出来。
PCoA算法的简化描述如下,更多关于PCoA的细节部分可参考Legendre和Legendre(1998)“Numerical Ecology”,424页后的内容。
假设存在x个对象、p个变量的矩阵(x, p ≥ 2):
(1)基于变量组成,计算x个对象间的距离矩阵,计算时根据实际情况选择合适的距离测度。
(2)按行和列中心化矩阵。
(3)对中心化后的距离矩阵执行特征分解。
(4)新的特征向量即表征了主坐标。
关于PCoA轴
同PCA或CA,PCoA最终获得一系列的正交轴,轴的数量由数据集的固有属性决定(对象数x-1)。各轴的重要性由特征值衡量,代表了数据集的变差,各轴特征值与特征值总和的比例即为各轴的“贡献率”。
对于一个有代表性的PCoA而言,前几轴的特征值一般不能过低。
各对象在各轴中都分配了一个得分,即理解为排序图中的坐标。
关于PCoA的负特征根
PCoA算法本身的问题,如果输入的距离测度并非欧式距离属性,则PCoA的计算结果中可能会产生负特征根,正负特征根之间可能还会夹带0值的特征根。负特征根不能有效反映真实的PCoA轴贡献度信息。
由于绝大多数情况下,负特征根产生在末端的几个轴中,一般不会带来很大影响,此时大可忽略它们。少数情形中,负特征根的绝对值大小与前几轴的正特征根相当,此时必须重视。
可通过转化原始距离测度解决PCoA负特征根的问题。例如,将非欧式距离测度转化为欧式几何性质,Bray-curtis距离是在群落分析中典型的非欧式距离测度,可对其平方根转化,即可使它获得了欧式距离属性;或者直接在距离的平方基础上加个常数(Lingoes校正);或是距离本身直接加个常数(Cailliez校正)等。
但是,整个数据集(距离测度矩阵)的变动可能会影响排序精度,使对象模式的可解读性降低。所以转化数据也需慎重。
排序图的理解
和PCA或CA一致,相似相近原则,对象在排序图上的距离远近代表对象在关联测度上的相似度。
PCoA与PCA和CA
前篇提到,尽管PCA通过输入原始测量数据用于计算,但本质上代表了对象间的欧几里得距离;同样地,CA代表了对象间的卡方距离。
因此可知,对于PCoA,若输入的距离测度为欧几里得距离,则PCoA将产生与基于变量协方差矩阵的PCA(I型标尺)相同的排序结果;类似地,输入卡方距离测度,获得与CA相似的结果(但不完全相同,CA在计算中考虑了对象及变量的权重)。
尽管在算法本身上,PCoA与PCA和CA之间起源于独立的过程。
在这一点上,PCoA表现出优越性,在于它理论上可基于任意的距离测度执行排序,因此可以更灵活地处理复杂的生态学数据。
补充变量信息
就物种组成数据的排序为例,由于PCoA的输入数据是样方(对象)间的距离测度,而物种(变量)信息在计算距离测度的过程中丢失,故原始的PCoA空间中不包含物种得分(排序)信息。
如若期望补充物种得分,物种变量可以直接与PCoA轴进行相关分析,或者通过与它们所在样方得分的多度加权平均与PCoA轴建立关联而投影到PCoA空间中,用以表明物种变量对PCoA排序的贡献程度。
非度量多维标度(NMDS)
非度量多维标度(Non-metric Multidimensional Scaling,NMDS)分析,是PCoA的非度量替代方法。NMDS排序目的不是最大限度地保留对象之间给定的原始距离,而是反映对象之间的顺序关系。它尝试在预先设定数量的排序轴中排序对象,目标是保持这些对象排位关系不变。
注:鉴于NMDS和PCoA的关系,PCoA也常被称为度量多维标度(Metric Multidimensional Scaling),缩写为MDS;但有时NMDS也被缩写为MDS……总之看到“MDS”这个缩写的时候,最好仔细留意下。
NMDS算法简述
NMDS基于对象之间给定的距离测度(可以为任意类型的距离),将对象定位到指定维度的低维排序空间中,以使这些对象在低维空间中的欧几里得距离能够最大程度地代表原始给定的距离测度类型。
NMDS算法的简化描述如下,更多关于NMDS的细节部分可参考Legendre和Legendre(1998)“Numerical Ecology”,444页后的内容。
(1)预指定排序维度m。
(2)在m维空间内,构建所有对象的初始结构,作为调整对象位置顺序迭代过程的起点。整个迭代过程的结果可能取决于此步骤,因此初始结构可能在某种程度上很关键。初始结构可以随机生成,但可能需要进行多次独立的尝试,一各可行的替代方法是使用PCoA结果作为初始结构。
(3)迭代过程尝试在给定的m维空间内重新排列对象,以使排序空间中对象之间的实际距离(以欧几里得距离表征)最好地反映原始矩阵中的距离测度值。两组参量之间的相异度通过应力函数值(stress function,取值范围0-1)表示,该值越低越好。
(4)当新一轮的迭代无法再降低应力函数值,或者到达预先指定的值或迭代次数时,迭代过程将停止,排序结束。
(5)通常,NMDS会根据PCA旋转最终的排序图,便于结果解读(这就是为什么最终排序图具有排序轴的原因,即使原始算法不产生任何排序轴)。
NMDS评估
由算法可知NMDS不是基于特征向量提取的排序方法,明显区别于PCA、CA或上述的PCoA。NMDS中不存在变差一说,NMDS轴也无解释量信息。
对于NMDS结果的优度,如上提到,通过应力函数值评判,值越低越好。一般而言,一个有代表性的NMDS的应力函数值不要大于0.2。
以及通过比较NMDS中对象间距离与原始距离测度矩阵中的值去评估(Shepard图),或者通过二者间进行线性或非线性拟合的R2评估,二者越一致越好。
NMDS与PCoA比较
相似点:
(1)均可基于任意的距离测度执行排序。
(2)如果直接使用对象间的距离测度作为输入数据,则变量信息均会丢失,若期望补充变量信息,均可通过多度加权平均方式建立变量与排序轴的关联,被动投影到排序图中。
(3)排序图解读方式一致,相似相近原则。
图注:根据Bray-curtis距离测度(平方根转化后,避免负特征根)计算的PCoA(左)和NMDS(右)。包含4组样方,物种信息通过丰度的加权平均值被动添加到排序图中,仅显示在大于等于20个样方中出现的物种。
区别点:
(1)NMDS是一种迭代方法,在对相同数据进行重新分析时可能返回不同值(但差异非常小,可忽略),而PCoA的返回值是唯一的。
(2)NMDS不是基于特征向量提取的排序方法,不以排序轴承载更多的变差为目的。NMDS需要在一开始就要指定维度(轴)的数量,如预设2-3个排序轴,计算过程中将根据已定义好的轴数分配对象坐标。而PCoA则基于特征向量提取,维度(轴)的数量由数据集的固有属性决定(对象数-1),获得样方排序后再根据特征值等信息自定义确定选择的轴数。
因此相较之下,NMDS排序图可以任意选择、中心化或倒置。并且如果NMDS和PCoA应用于同一数据(距离矩阵),在相同的轴数下(如NMDS设定2个轴,而PCoA提取前2轴),NMDS通常能够获得比PCoA更少失真的对象之间的关系。
但是由于NMDS是迭代算法,因此通常需要消耗更多的计算资源。特别是在大样本数据量时,可能受到计算资源的限制,迭代次数有限,最小化应力函数可能并未真正最小化。
参考资料
DanielBorcard, FranoisGillet, PierreLegendre, et al. 数量生态学:R语言的应用(赖江山 译). 高等教育出版社, 2014.
Legendre P, Legendre L. Numerical Ecology. Second English edition. Developments in Environmental Modelling, 1998, 20, Elsevier
David Zeleny:https://www.davidzeleny.net/anadat-r/doku.php/en:pcoa_nmds
GUSTA ME:https://mb3is.megx.net/gustame/dissimilarity-based-methods/principal-coordinates-analysis
XLSTAT:https://www.xlstat.com/en/solutions/features/principal-coordinate-analysis
Sequentix:https://www.sequentix.de/gelquest/help/principal_coordinates_analysis.htm
R包ade4的模糊主成分分析(FPCA)及模糊对应分析(FCA)
对应分析(CA)和去趋势对应分析(DCA)在群落分析中的应用