0 样本
$n$维向量$\mathbf{a}$与$\mathbf{b}$为我们想要度量相似性的两个样本。
$$
\mathbf{a}, ~ \mathbf{b} \in \mathbb{R}^{n \times 1}
$$
$$
\mathbf{a}=\begin{pmatrix} {a}_1 \\ {a}_2 \\ \vdots \\ {a}_n \end{pmatrix}, \quad \mathbf{b}=\begin{pmatrix} {b}_1 \\ {b}_2 \\ \vdots \\ {b}_n \end{pmatrix}
$$
0.1 $L_p$-norm
考虑一$n$维向量$\mathbf{x}$,有$L_p$范数如下:
$$
L_{p}(\mathbf{x}) = \lVert \mathbf{x} \rVert_p = \sqrt[p]{\sum\limits_{i=1}^{n}\vert x_i \vert ^ p}
$$
特别地,我们考虑$p$为$+\infty$或$-\infty$时的$L_p$范数:
$$
L_{+\infty}(\mathbf{x}) = \lVert \mathbf{x} \rVert_{+\infty} = \lim\limits_{p
\rightarrow+\infty} \Bigg( \sqrt[p]{\sum\limits_{i=1}^{n}\vert x_i \vert ^ p} \Bigg) = \max\limits_{i}\vert x_i \vert$$
$$
L_{-\infty}(\mathbf{x}) = \lVert \mathbf{x} \rVert_{-\infty} = \lim\limits_{p
\rightarrow -\infty} \Bigg( \sqrt[p]{\sum\limits_{i=1}^{n}\vert x_i \vert ^ p} \Bigg) = \min\limits_{i}\vert x_i \vert$$
1 Cosine Similarity,余弦相似度
$$
cos \theta = \frac {\mathbf{a} \cdot \mathbf{b}} {\lVert \mathbf{a} \rVert_2 \cdot \lVert \mathbf{b} \rVert_2}
$$
2 Minkowski Distance,闵可夫斯基距离
也被称为 闵氏距离
$$
d_{Mink}(\mathbf{a}, \mathbf{b},p) = \sqrt[p]{\sum\limits_{i=1}^{n}\vert a_i-b_i \vert ^ p} = \lVert \mathbf{a} – \mathbf{b} \rVert_p =\lVert \mathbf{b} – \mathbf{a} \rVert_p
$$
2.1 Manhattan Distance
曼哈顿距离
$$
d_{Mink}(\mathbf{a}, \mathbf{b},1) = d_{Manh}(\mathbf{a}, \mathbf{b}) = \sum\limits_{i=1}^{n}\vert a_i-b_i \vert
$$
2.2 Euclidean distance
欧几里得距离
$$
d_{Mink}(\mathbf{a}, \mathbf{b},2) = d_{Euc}(\mathbf{a}, \mathbf{b}) = \sqrt{\sum\limits_{i=1}^{n}(a_i-b_i)^ 2}
$$
3 皮尔逊相似系数,Pearson Correlation
皮尔逊相关系数(Pearson Correlation)是衡量向量相似度的一种方式。输出范围为-1到+1,其中0代表无相关性,负值代表负相关,正值代表正相关。皮尔逊相关系数在欧几里德距离上做出了优化,对向量的值做了中心化处理,即对两个向量中的所有维度都减去元素的平均值,中心化后所有维度的平均值基本为0;然后对中心化结果求余弦距离。
$$
a_i \sim A, \quad b_i \sim B
$$
$$
\overline{a} = \frac{\sum\limits_{i = 1}^{n} a_i}{n} ,\quad \overline{b} = \frac{\sum\limits_{i = 1}^{n} b_i}{n}
$$
$$
r = \frac{\sum\limits_{i = 1}^{n}(a_i – \overline{a}) \cdot (b_i – \overline{b})}{\sqrt{\sum\limits_{i=1}^{n}(a_i-\overline{a})^ 2} \cdot \sqrt{\sum\limits_{i=1}^{n}(b_i-\overline{b})^ 2}} = \frac{cov(A,B)}{\sigma_A \cdot \sigma_B} = \frac {(\mathbf{a} – \overline{a}) \cdot (\mathbf{b} – \overline{b})} {\lVert (\mathbf{a} – \overline{a}) \rVert_2 \cdot \lVert (\mathbf{b} – \overline{b}) \rVert_2}
$$
注:$\mathbf{a} – \overline{a}$及$\mathbf{b} – \overline{b}$的向量和标量的运算运用了广播机制,即自动把轴缺少的数据按照轴多的数据进行轴的补充(二者至少具有一个维度相同的轴)。
4 Hamming Distance,汉明距离
在信息论中,两个等长字符串之间的汉明距离(英语:Hamming distance)是两个字符串对应位置的不同字符的个数。换句话说,它就是将一个字符串变换成另外一个字符串所需要替换的字符个数。
对于两个数字来说,汉明距离就是转成二进制后,对应的位置值不相同的个数。例如,假设有两个十进制数a=93
和b=73
,如果将这两个数用二进制表示的话,有a=1011101
、b=1001001
,可以看出,二者的从右往左数的第3位、第5位不同(从1开始数),因此,a
和b
的汉明距离是2
。
汉明距离是以理查德·卫斯里·汉明的名字命名的。在通信传输过程中,累计定长二进制字中发生翻转的错误数据位,所以它也被称为信号距离。汉明距离在包括信息论、编码理论、密码学等领域都有应用。
5 Jaccard Index,杰卡德相似系数
杰卡德系数,又称为杰卡德相似系数,用于比较两个样本之间的差异性和相似性。杰卡德系数越高,则两个样本相似度越高。
有两个集合A和B,那么这两个集合的杰卡德系数为A和B的交集除以A和B的并集。
$$
J(A,B) = \frac{\lvert A \cap B \rvert } {\lvert A \cup B \rvert}
= \frac{\lvert A \cap B \rvert } {\lvert A \rvert + \lvert B \rvert – \lvert A \cap B \rvert}$$