LLM(大语言模型)常用评测指标-MAP

MAP (Mean Average Precision)

MAP (平均平均精度) 是一种常用于评估信息检索系统、推荐系统或其他排名模型的性能指标。它特别适用于任务中涉及到返回一组排序结果的场景,如搜索引擎、推荐系统、图像检索等。

计算方法

  1. 计算平均精度 (Average Precision, AP):对于每个查询,首先计算其精度(Precision)在不同截断级别(即不同数量的返回结果)的值,然后计算这些精度值的平均值。精度是指检索到的相关文档数量与检索到的总文档数量的比值。
  2. 计算平均精度的平均值 (Mean AP):对所有查询的平均精度(AP)进行平均。

应用场景

MAP常用于评估搜索引擎、推荐系统、文本检索、图像检索等领域中的模型性能,尤其是在关注排名顶部结果的精确性时。

计算实例

假设有一个推荐系统,它针对两个不同的用户返回了以下推荐结果(这里的"相关"和"不相关"是基于用户偏好预先定义的):

  • 用户 1:
    • 推荐结果:[相关, 不相关, 相关, 不相关, 相关]
  • 用户 2:
    • 推荐结果:[相关, 相关, 不相关, 相关, 不相关]

步骤

  1. 计算每个用户的平均精度 (AP):

    • 对于用户 1:

      • 第一个相关结果的精度 = 1/1
      • 第二个相关结果的精度 = 2/3
      • 第三个相关结果的精度 = 3/5
      • AP1 = (1/1 + 2/3 + 3/5) / 3 = 0.867
    • 对于用户 2:

      • 第一个相关结果的精度 = 1/1
      • 第二个相关结果的精度 = 2/2
      • 第三个相关结果的精度 = 3/4
      • AP2 = (1/1 + 2/2 + 3/4) / 3 = 0.917
  2. 计算 MAP:

    • MAP = (AP1 + AP2) / 2 = (0.867 + 0.917) / 2 = 0.892

因此,在这个例子中,MAP的值是0.892。这意味着在所有返回结果中,模型在这两个用户上的平均表现接近于89.2%的准确率。在实际应用中,通常会对大量用户或查询进行此类计算,以得到更为可靠的平均值。

相关推荐
mit6.82437 分钟前
[nanoGPT] configurator.py | exec() & globals()
人工智能
rengang6641 分钟前
132-Spring AI Alibaba Vector Neo4j 示例
人工智能·spring·neo4j·rag·spring ai·ai应用编程
mit6.82442 分钟前
[nanoGPT] 性能与效率 | `torch.compile()` |`Flash Attention`|`混合精度训练`|`estimate_mfu`
人工智能
豆芽脚脚2 小时前
机器学习之数字识别
人工智能·机器学习
智海观潮2 小时前
Flink在与AI集成的路上再次“遥遥领先” - Flink Agents
大数据·人工智能·flink
honeysuckle_luo3 小时前
RandLA-net-pytorch 复现
人工智能·pytorch·python
_BugMan4 小时前
【大模型】理论基础(1):函数与神经网络
人工智能·深度学习·神经网络
AI模块工坊5 小时前
CVPR 即插即用 | PConv:重新定义高效卷积,一个让模型“跑”得更快、更省的新范式
人工智能·深度学习·计算机视觉·transformer
lzjava20246 小时前
Spring AI加DeepSeek实现一个Prompt聊天机器人
人工智能·spring·prompt
fanstuck7 小时前
AI辅助数学建模有哪些优势?
人工智能·数学建模·语言模型·aigc