理论基础(4)其他评价指标

一、相似性度量指标

机器学习中的相似性度量方法 - 天下客的文章 - 知乎 https://zhuanlan.zhihu.com/p/411876558

描述样本之间相似度的方法有很多种,一般来说常用的有相关系数和欧式距离。本文对机器学习中常用的相似性度量方法进行了总结。在做分类时,常常需要估算不同样本之间的相似性度量(Similarity Measurement),这时通常采用的方法就是计算样本间的“距离”(distance)。采用什么样的方法计算距离是很讲究的,甚至关系到分类的正确与否。

  • 欧式距离:k-means
  • 曼哈顿距离
  • 切比雪夫距离
  • 闵可夫斯基距离
  • 标准化欧氏距离
  • 马氏距离
  • 夹角余弦
  • 汉明距离:simhash
  • 杰卡德距离&杰卡德相似系数: 杰卡德相似系数是衡量两个集合的相似度一种指标。
  • 相关系数&相关距离
  • 信息熵

二、推荐算法评价指标

  • 推荐算法评价指标 - 一干正事就犯困的文章 - 知乎 https://zhuanlan.zhihu.com/p/359528909

2.1 AP

AP 衡量的是训练好的模型在每个类别上的好坏;

img

AP总结了一个精确召回曲线,作为在每个阈值处获得的精度的加权平均值, 并且与以前的阈值相比, 召回率的增 加用作权重: \[ A P=\sum_n\left(R_n-R_{(n-1))} P_n)\right. \] 其中和分别是第 \(\mathrm{n}\) 个阈值 1 时的精度和召回率。此实现末进行揷值, 并且与使用梯形规则计算精确调用曲线下的面 积有所不同,后者使用线性揷值并且可能过于乐观。

2.2 MAP

MAP (Mean Average Precision) 常用于排序任务,MAP的计算涉及另外两个指标:Precision和Recall

  • Precision和Precision@k, 推荐算法中的精度precision计算如下:

\[ \text { precision }=\frac{\text { 算法结果中相关的item数量 }}{\text { 推荐的item总数量 }} \]

可以看出Precision的计算没有考虑结果列表中item的顺序,Precision@k则通过切片的方式将顺序隐含在结果 中。Precision@k表示列表前k项的Precision, 随着k的变化, 可以得到一系列precision值, 用 \(P(k)\) 表示。

  • Recall和Recall@k, 推荐算法中的召回率recall计算如下:

\[ \text { recall }=\frac{\text { 算法结果中相关的 } i t e m \text { 数量 }}{\text { 所有相关的item数量 }} \]

与Precision@kk相似, recall@k表示结果列表前k项的recall, 随着k的变化, 可以得到一系列的recall值, 用 \(r(k)\) 表示。

  • AP@N, AP (Average Precision) 平均精度的计算以Precision@k为基础, 可以体现出结果列表中item顺序的重要性, 其 计算过程如下:

\[ A P @ N=\frac{1}{m} \sum_{k=1}^N(P(k) \quad \text { if kth item is relevant })=\frac{1}{m} \sum_{k=1}^N P(k) \cdot r e l(k) \]

其中, \(\mathrm{N}\) 表示要求推荐的 \(\mathrm{N}\) 个item, \(\mathrm{m}\) 表示所有相关的item总数, \(r e l(k)\) 表示第 \(k\) 个item是否相关, 相关为 1 , 反 之为 0

AP@N的值越大,表示推荐列表中相关的item数量越多以及相关item的排名越靠前

  • MAP@N

AP@N评价了算法对单个用户的性能,MAP@N则是算法对多个用户的平均值,是平均数的平均,其计算过程如下\[ M A P @ N=\frac{1}{|U|} \sum_{u=1}^{|U|}(A P @ N) u=\frac{1}{|U|} \sum u=1^{|U|}\left(\frac{1}{m} \sum_{k=1}^N P_u(k) \cdot r e l_u(k)\right) \]