皮尔逊积矩相关系数的学习


皮尔逊积矩相关系数的学习

  做相似度计算的时候经常会用到皮尔逊相关系数(Pearson Correlation Coefficient),那么应该如何理解该系数?其数学本质、含义是什么?

   皮尔逊相关系数理解有两个角度

   一、以高中课本为例,将两组数据首先做Z分数处理之后,然后两组数据的乘积和除以样本数。

   Z分数一般代表正态分布中数据偏离中心点的距离。等于变量减掉平均数再除以标准差。标准差则等于变量减掉平均数的平方和再除以样本数最后再开方。所以我们可以将公式依次精简为:

   

   以下为python的实现:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from  math  import  sqrt
#返回p1和p2的皮尔逊相关系数
def  sim_pearson(prefs,p1,p2):
     #得到双方曾评价过的物品列表
     si  =  {}
     for  item  in  prefs[p1]:
         if  item  in  prefs[p2]:
             si[item]  =  1
     #得到列表元素个数
     =  len (si)
      
     #如果两者没有共同之处,则返回1
     if  not  n:
         return   1
      
     #对所有偏好求和
     sum1  =  sum ([perfs[p1][it]  for  it  in  si])
     sum2  =  sum ([perfs[p2][it]  for  it  in  si])
      
     #求平方和
     sum1Sq  =  sum ([ pow (prefs[p1][it], 2 for  it  in  si])
     sum2Sq  =  sum ([ pow (prefs[p2][it], 2 for  it  in  si])
      
     #求乘积之和
     pSum  =  sum ([prefs[p1][it]  *  prefs[p2][it]  for  it  in  si])
      
     #计算皮尔逊评价值
     num  =  pSum  - (sum1  *  sum2  /  2 )
     den  =  sqrt((sum1Sq  -  pow (sum1, 2 /  n)  *  (sum2Sq  - pow ((sum2, 2 /  2 )))
     if  not  den:
         return  0
     =  num / den
     return  r

   二、 按照大学的线性数学水平来理解,它比较复杂一点可以看做是两组数据的向量夹角的余弦。

   

   对于没有中心化的数据, 相关系数与两条可能的回归线y=gx(x) 和 x=gy(y) 夹角的余弦值一致。

   1、n个数值组成的行(x1, x2, x3,… xn)称为n维向量简记为大写字母X

                                                           

           |X| = √x12+x22+x32+…+xn2     定义为向量X的模,向量X与Y的内积为:   X·Y=x1*y1+x2*y2+..xn*yn

    2、向量X及Y的向量夹角余弦按照下式计算:

                            X·Y

           cosθ =                              

                        |X|×|Y|

    3、向量夹角余弦约接近1说明两向量相似度越高。

   以下为Python的实现:

?
1
2
3
import  math,numpy
def  cosine_distance(u, v):
     return  numpy.dot(u, v)  /  (math.sqrt(numpy.dot(u, u))  * math.sqrt(numpy.dot(v, v)))

   从以上解释,也可以理解皮尔逊相关的约束条件:

    • 两个变量间有线性关系

    • 变量是连续变量

    • 变量均符合正态分布,且二元分布也符合正态分布

    • 两变量独立

   在实践统计中一般只输出两个系数,一个是相关系数也就是计算出来的相关系数大小(在-1到1之间),另一个是独立样本检验系数,用来检验样本一致性。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM