【NLP入门】Mean Average Precision(MAP)
MAP(Mean Average Precision)是检索与排序任务中常用的评价指标,适合衡量“相关结果排在前面”的程度。它在信息检索、问答检索、文档排序等 NLP 场景里非常常见。
1. 先理解 Precision 与 Average Precision
Precision@k:取前 k 个结果,相关的比例是多少。
Average Precision(AP):把每次命中相关结果时的 Precision 取平均。
2. Mean Average Precision(MAP)
MAP 就是对多条查询的 AP 取平均:
MAP = (AP1 + AP2 + … + APn) / n
它能综合衡量模型对“多条 query 的整体排序质量”。
3. 一个小例子
假设一条查询的前 5 个结果相关性如下:

命中位置:1、3、4。(这里用P@i 表示第i个位置的Precision)
P@1 = 1/1 = 1
P@3 = 2/3 ≈ 0.67
P@4 = 3/4 = 0.75
AP = (1 + 0.67 + 0.75) / 3 ≈ 0.806
如果有 3 条查询,AP 分别是 0.80、0.60、0.90,
MAP = (0.80 + 0.60 + 0.90)/3 = 0.77
4. MAP 的优点与局限
- 优点:强调“相关结果越靠前越好”,直观反映排序质量。
- 局限:对“是否相关”要求二值标签,不适合多级相关性的场景。











