分类目录:《机器学习中的数学》总目录
相关文章:
· 距离定义:基础知识
· 距离定义(一):欧几里得距离(Euclidean Distance)
· 距离定义(二):曼哈顿距离(Manhattan Distance)
· 距离定义(三):闵可夫斯基距离(Minkowski Distance)
· 距离定义(四):切比雪夫距离(Chebyshev Distance)
· 距离定义(五):标准化的欧几里得距离(Standardized Euclidean Distance)
· 距离定义(六):马氏距离(Mahalanobis Distance)
· 距离定义(七):兰氏距离(Lance and Williams Distance)/堪培拉距离(Canberra Distance)
· 距离定义(八):余弦距离(Cosine Distance)
· 距离定义(九):测地距离(Geodesic Distance)
· 距离定义(十): 布雷柯蒂斯距离(Bray Curtis Distance)
· 距离定义(十一):汉明距离(Hamming Distance)
· 距离定义(十二):编辑距离(Edit Distance,Levenshtein Distance)
· 距离定义(十三):杰卡德距离(Jaccard Distance)和杰卡德相似系数(Jaccard Similarity Coefficient)
· 距离定义(十四):Ochiia系数(Ochiia Coefficient)
· 距离定义(十五):Dice系数(Dice Coefficient)
· 距离定义(十六):豪斯多夫距离(Hausdorff Distance)
· 距离定义(十七):皮尔逊相关系数(Pearson Correlation)
· 距离定义(十八):卡方距离(Chi-square Measure)
· 距离定义(十九):交叉熵(Cross Entropy)
· 距离定义(二十):相对熵(Relative Entropy)/KL散度(Kullback-Leibler Divergence)
· 距离定义(二十一):JS散度(Jensen–Shannon Divergence)
· 距离定义(二十二):海林格距离(Hellinger Distance)
· 距离定义(二十三):α-散度(α-Divergence)
· 距离定义(二十四):F-散度(F-Divergence)
· 距离定义(二十五):布雷格曼散度(Bregman Divergence)
· 距离定义(二十六):Wasserstein距离(Wasserstei Distance)/EM距离(Earth-Mover Distance)
· 距离定义(二十七):巴氏距离(Bhattacharyya Distance)
· 距离定义(二十八):最大均值差异(Maximum Mean Discrepancy, MMD)
· 距离定义(二十九):点间互信息(Pointwise Mutual Information, PMI)
在统计学中,皮尔逊相关系数(Pearson Correlation),又称皮尔逊积矩相关系数(Pearson Product-moment Correlation Coefficient,PPMCC\PCCs),是用于度量两个变量 x x x和 y y y之间的线性相关性,其值介于-1与1之间。前文提到的余弦相似度只与向量方向有关,但它会受到向量的平移影响,在夹角余弦公式中如果将 x x x平移到 x + 1 x+1 x+1,余弦值就会改变。皮尔逊相关系数(Pearson Correlation)就不会受到这种情况的影响,有时候也皮尔逊相关系数也直接被称为相关系数。
n
n
n维空间中的皮尔逊相关系数为:
ρ
(
x
,
y
)
=
cov
(
x
,
y
)
σ
(
x
)
⋅
σ
(
y
)
=
E
[
(
x
−
μ
x
)
(
y
−
μ
y
)
]
σ
(
x
)
⋅
σ
(
y
)
\rho(x, y)=\frac{\text{cov}(x, y)}{\sigma(x)\cdot\sigma(y)}=\frac{E[(x-\mu_x)(y-\mu_y)]}{\sigma(x)\cdot\sigma(y)}
ρ(x,y)=σ(x)⋅σ(y)cov(x,y)=σ(x)⋅σ(y)E[(x−μx)(y−μy)]
我们对皮尔逊相关系数做一些简单的变换就可以得到皮尔逊相关系数与余弦相似度之间的关系:
ρ
(
x
,
y
)
=
cov
(
x
,
y
)
σ
(
x
)
⋅
σ
(
y
)
=
∑
i
=
1
n
(
x
−
x
ˉ
)
(
y
−
y
ˉ
)
∣
x
−
x
ˉ
∣
⋅
∣
y
−
y
ˉ
∣
=
cos
(
x
−
x
ˉ
,
y
−
y
ˉ
)
\rho(x, y)=\frac{\text{cov}(x, y)}{\sigma(x)\cdot\sigma(y)}=\frac{\sum_{i=1}^n(x-\bar{x})(y-\bar{y})}{|x-\bar{x}|\cdot|y-\bar{y}|}=\cos{(x-\bar{x}, y-\bar{y})}
ρ(x,y)=σ(x)⋅σ(y)cov(x,y)=∣x−xˉ∣⋅∣y−yˉ∣∑i=1n(x−xˉ)(y−yˉ)=cos(x−xˉ,y−yˉ)
下面我们来看一下皮尔逊相关系数的Python实现:
def PearsonCorrelation(x, y):
import numpy as np
x = np.array(x)
y = np.array(y)
x_ = x-np.mean(x)
y_ = y-np.mean(y)
return np.dot(x_,y_)/(np.linalg.norm(x_)*np.linalg.norm(y_))