如何在python中计算异常情况下的平均精度

2024-10-02 14:19:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在照图中的例子计算平均精度(MAP)。

enter image description here

按照幻灯片中的4个项目排序顺序示例的概念,我们期望所有4项都正确:^{{cd1>}平均精度为

(1 + 0.5) / 2 = 0.75

考虑一个比上面更差的系统,它只得到1个项目正确:^{{cd2>}平均精度为

^{pr2}$

我觉得计算平均精度的概念是错误的。也许我理解的方式是错误的。

在本教程中,他们给出了计算平均精度的不同定义:https://medium.com/@pds.bangalore/mean-average-precision-abd77d0b9a7e

^{pr3}$

我还尝试了sklearn的平均精度如下。

^{pr4}$

输出似乎也是^{cd3>,这很令人困惑。

请告诉我我在哪里做错了事情,或者是什么正确的方法来计算所提到的两种情况的平均精度。

如果需要,我很乐意提供更多的细节。


Tags: 项目概念示例map排序顺序系统错误