本文主要介绍相关系数的概念,以及简单相关系数中的pearson相关系数及其局限性。随后介绍pearson相关系数无法解决的问题(两个变量组之间的相关性问题)的解决方案。
1、pearson相关系数
在日常中,我们经常会遇到一些关于相关性的分析,例如,一个人每日的运动量与他体重之间的相关性,一支股票的价格与该公司的盈利状况的相关性等等。在上述两种情况下,我们给出的结论一般是,一个人每日的运动量越大,他的体重就越轻;公司的盈利状况越好股票的价格越高。那么相关性到底是个什么东西呢?根据维基百科的定义:
相关(Correlation,或称相关系数或关联系数),显示两个随机变量之间线性关系的强度和方向。在统计学中,相关的意义是用来衡量两个变量相对于其相互独立的距离。
实际上,早在19世纪80年代相关性在统计学上有明确的定义,由卡尔·皮尔逊提出的pearson相关系数就是最常用的相关系数,是一种简单相关系数。我们平时谈论的相关,基本上指的都是线性相关,在线性相关中最常用的就是pearson相关系数。除了此之外,还有其他的一些相关系数如:Spearman相关系数,称为“秩相关系数”是反映等级相关程度的统计分析指标,描述的是变量间等级、序数之间的关系。而与pearson相关系数同为简单相关系数的是夹角的余弦值,也就是余弦相似度。本文将主要介绍pearson相关系数。
pearson相关系数的取值在-1到+1之间,其中取值为-1时表示完全负相关,+1时表示完全正相关,0为不相关。具体的计算公式如下:
其中,是X与Y的协方差,,分别为X与Y的标准差。
下图是《数据挖掘导论》中关于pearson相关系数的图,能够比较直观的展示pearson相关系数值得大小与相关性的关系。
《数据挖掘导论》:pearson相关系数
正如之前说的,pearson相关系数是一种简单相关系数,反映的是两个变量之间的线性关系,因此对于非线性的关系,pearson相关系数会接近于0,无法描述,如下图:
维基百科相关系数(x,y)点集图
2、典型相关性分析(CCA)
pearson相关系数描述的是一个变量与另外一个变量之间的相关性。但是现实中,多个变量与多个变量之间的关系往往会更常见。例如,我们想知道一个人的日常情况(每日运动量X1、日常饮食X2)与他的健康状况(血压Y1、血糖Y2)之间的相关性;一支股票的价格(开盘价X1、收盘价X2、最高价X3)与它公司(盈利情况Y1,所处行业整体趋势Y2,负面消息量Y3)的相关性。
如果我们直接使用pearson相关系数来解决上述例子的话,就需要考虑所有变量,两两之间的相关性。但是这种做法只能孤立的考虑单个变量Xi与Yj间的关系,没有考虑变量所在的变量组本身各个子变量的相关性。
了解多元回归分析的人可能知道,以股票为例,如果我们只想知道它的每日最高价与公司之间(盈利情况,所处行业整体趋势,负面消息量)的相关性,就可以将股票最高价最为Y,公司情况分别为X1,X2,X3,通过数据进行拟合,来找到Y与X之间的最佳线性组合。但是如果考虑多个Y,那么多元回归分析就显得有些无从下手。
实际上,典型相关性分析就是利用综合变量对之间的相关关系来反映两组指标之间的整体相关性的多元统计分析方法,是简单相关的推广,是多元回归分析的延伸。它的应用场景主要是多视图分析与两组变量之间的相关性分析,且每组变量包含多个子变量,且子变量相互有一定的相关性。
典型相关性分析(CCA)算法的基本思想是在两组变量上分别找到一种线性组合
使得X与Y之间的pearson相关系数最大。所以CCA就转化为如何去求解这两组线性组合的系数,使得线性表示后的变量能够取到最大的相关系数,因此CCA也可以理解为一种降维的方法。具体地,可以将其转化为一个最优化问题:
具体求解的方法则采用奇异值分解(SVD)的方法进行求解。