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

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

做相似度计算的时候经常会用到皮尔逊相关系数(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],2for it in si])

    sum2Sq = sum([pow(prefs[p2][it],2for 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之间),另一个是独立样本检验系数,用来检验样本一致性。

时间: 2024-12-23 06:18:36

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

pandas通过皮尔逊积矩线性相关系数(Pearson's r)计算数据相关性

皮尔逊积矩线性相关系数(Pearson's r)用于计算两组数组之间是否有线性关联,举个例子: a = pd.Series([1,2,3,4,5,6,7,8,9,10]) b = pd.Series([2,3,4,5,6,7,8,9,10,11]) 计算两组数据的线性相关性,就是,b是否随着a的增长而增长,或者随着a的增长而减小,或者两者不相关: 皮尔逊积矩线性相关系数的公式是: (标准化数据a * 标准化数据b).mean() def correlation(x, y): meanX = x.

Pearson(皮尔逊)相关系数及MATLAB实现

转自:http://blog.csdn.net/wsywl/article/details/5727327 由于使用的统计相关系数比较频繁,所以这里就利用几篇文章简单介绍一下这些系数. 相关系数:考察两个事物(在数据里我们称之为变量)之间的相关程度. 如果有两个变量:X.Y,最终计算出的相关系数的含义可以有如下理解: (1).当相关系数为0时,X和Y两变量无关系. (2).当X的值增大(减小),Y值增大(减小),两个变量为正相关,相关系数在0.00与1.00之间. (3).当X的值增大(减小),

从欧几里得距离、向量、皮尔逊系数到http://guessthecorrelation.com/

一.欧几里得距离就是向量的距离公式 二.皮尔逊相关系数反应的就是线性相关 游戏http://guessthecorrelation.com/ 的秘诀也就是判断一组点的拟合线的斜率y/x ------------------------2016-7-12 23:54:28-- source:如何理解Pearson Correlation Coefficient

皮尔逊系数

https://blog.csdn.net/wangxin1982314/article/details/72152584 https://blog.csdn.net/shijing_0214/article/details/50866477 https://baike.baidu.com/item/%E7%9A%AE%E5%B0%94%E9%80%8A%E7%9B%B8%E5%85%B3%E7%B3%BB%E6%95%B0/12712835?fromtitle=%E7%9A%AE%E5%B0%

隐马尔可夫模型(七)——隐马尔可夫模型的学习问题(前向后向算法)(转载)

隐马尔可夫模型的学习问题:给定一个输出序列O=O1O2...OT,如何调节模型μ=(A,B,π)的参数,使得P(O|M)最大. 最大似然估计是一种解决方法,如果产生的状态序列为Q=q1q2...qT,根据最大似然估计,可以通过以下公式推算: πi' = δ(q1,si) aij' =  Q中从状态qi转移到qj的次数/Q中从状态qi转移到另一状态(包括qj)的次数 bj(k)' = Q中从状态qj发出符号Vk的次数/ Q中到达状态qj的次数 δ(x,y)为克罗奈克函数,当x=y时,δ(x,y)=

探险家皮尔卡为何孤身一人乘坐太阳能飞机飞越太平洋?

近日,阳光动力2号即将飞越太平洋进行科技探险.这次航行为什么是一次惠及人类的科学探险(Explore)?一般而言,探险活动是指人对于具有某种危险性的自然环境进行主动探索的行为.以往国人对于孩子的家庭教育是尽力避开发生危险的地方,不要去冒险,长大了也不要去主动探险. 瑞士探险家贝特朗皮尔卡(Bertrand Piccard1958-)选择从我国南京出发,乘坐阳光动力2号太阳能飞机,孤身一人飞越太平洋,进行个人探险活动,此举,对于教育我们的下一代很有实际意义.但是,乘坐太阳能飞机飞越太平洋究竟是不是

Kendall's tau-b(肯德尔)等级相关系数

Kendall's tau-b(肯德尔)等级相关系数:用于反映分类变量相关性的指标,适用于两个分类变量均为有序分类的情况.对相关的有序变量进行非参数相关检验:取值范围在-1-1之间,此检验适合于正方形表格: 计算积距pearson相关系数,连续性变量才可采用;计算Spearman秩相关系数,适合于定序变量或不满足正态分布假设的等间隔数据; 计算Kendall秩相关系数,适合于定序变量或不满足正态分布假设的等间隔数据. 计算相关系数:当资料不服从双变量正态分布或总体分布未知,或原始数据用等级表示时

亚马逊新手如何系统学习亚马逊的运营和推广店铺!

亚马逊站内运营 1.操作步骤: listing的选品(一周) 产品amazon图片的制作和listing的描述(一周) 三到五个listing 的上传(一天) FBA发货(新品上架一天后) 付费广告cpc 首先automatic 后期根据情况选定特定的关键词做cpc(新品上架一天后 找人做ask和answers和review以及售后的跟踪和客服反馈(新品上架一周后) 2.所需资源和对接部门和人 产品 对接部门和人: 开发 产品文案描述和3d渲染amazon产品图片 对接部门和人:设计部门;美工

MapReduce-皮尔逊(Pearson)线性相关

Pearson相关系数解决了两个群的数据是否线性相关的问题: 先补充一下基本概念: 协方差:如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值时另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值:如果两个变量的变化趋势相反,即其中一个变量大于自身的期望值时另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值. 如果X与Y是统计独立的,那么二者之间的协方差就是0,因为两个独立的随机变量满足E[XY]=E[X]E[Y].但是,反过来并不成立.即如果X与Y的协方差为0,