问题标签 [precision-recall]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1057 浏览

recommendation-engine - 推荐引擎的准确率和召回率评估

我正在使用精度和召回率评估推荐引擎。到目前为止,我已经使用 4 个不同的数据集评估了系统,精度值为 0.833、0.857、0.857 和 0.769。相同数据集的召回值分别为 0.448、0.875、0.5504 和 0.512。如何使用这些结果来评估正在测试的推荐引擎?我应该在同一数据集上应用标准 CF 并检查值,还是有任何标准的精度和召回率基准来对推荐系统进行分类?例如,如果精度是 x,召回率是 y,那么这个算法应该被丢弃还是接受?

0 投票
3 回答
1357 浏览

machine-learning - 如何计算 Web 服务排名算法的准确率和召回率?

我想计算 Web 服务排名算法的精度和召回率。我在数据库中有不同的 Web 服务。

客户在他/她的搜索中指定了一些条件。根据客户的要求,我的算法应该为数据库中的每个 Web 服务分配一个分数,并检索得分最高的 Web 服务。

我已经在网上搜索并阅读了本网站上有关该主题的所有问题,并且了解精确度和召回率,但我不知道如何计算它们。最相关的搜索在此链接中:http: //ijcsi.org/papers/IJCSI-8-3-2-452-460.pdf

根据这篇文章,

精度 = 最高排名分数 / 所有服务的总排名分数

召回=最高等级分数/第二高服务分数

但是,我认为这不是真的。你能帮我吗?

非常感谢。

0 投票
2 回答
1966 浏览

python - 计算点击数据中的精度和召回率

我正在尝试使用点击数据构建精确度和召回率图表。我有两个数据源。

  1. 第一个数据源具有基于给定 query_id 的所有用户单击 item_ids。
  2. 第二个数据源具有给定 query_id 的所有相关 item_id。

我使用python并将它们放在两个数据源中的字典中,如下所示:

我正在阅读 scikit-learn 网站 ( http://scikit-learn.org/stable/auto_examples/plot_precision_recall.html ) 中的文章,并尝试遵循公式,但在设置 False Positive 和 False Negative 时真的很困惑。

遵循 scikit-learn 中的方程式:根据上述示例预置项目101

但是当我试图弄清楚 Recall 时,我在获取点击数据的 False Negative 项目时遇到了麻烦。理论上,假阴性意味着错误标记。我所拥有的只是用户点击给定 ID 的数据以及与该 ID 相关的所有项目。

如何正确计算精度和召回率,以便构建图表。

另一方面,如果这不是评估结果的好指标,考虑到我只有上述数据这一事实,那么好的指标是什么?

0 投票
1 回答
6341 浏览

python - 列表评估:AvgP@K 和 R@K 是否相同?

我的目标是了解 AveragePrecision at KRecall at K. 我有两个列表,一个是预测的,另一个是实际的(基本事实)

让我们将这两个列表称为预测的和实际的。现在我想做precision@kand recall@k

使用 python,我在 K 处实现了 Avg 精度,如下所示:

假设我们的预测有 5 个字符串,顺序如下: predicted = ['b','c','a','e','d'] andactual = ['a','b','e'] since we are doing @k would the precision@k is same asrecall@k ? If not how would I dorecall@k`

如果我想做f-measure (f-score)上述列表的最佳途径是什么?

0 投票
1 回答
1208 浏览

cluster-analysis - 在聚类位置数据的情况下找到真阳性、真阴性等?

我一直在尝试评估一种聚类技术。我知道 F1 分数是做到这一点的有效方法之一。根据我通过的链接

基本上是精度和召回率的调和平均值。我也知道了什么是精确度和召回率。还有那个

真阳性 = 正确识别

误报 = 错误识别

真阴性 = 正确拒绝

假阴性 = 错误拒绝

但我的问题是我无法将其与集群联系起来。例如,如果我有以下情况

我的聚类结果是

在这种情况下,如何使用我的测试数据找到真阳性等?我在分类的情况下理解它,但在这种情况下我无法弄清楚,因为没有上课。

更新:

我的场景中没有分类指标。由于我使用的是位置数据,所以我可以从形成的集群中找到可能的结果是

我可以使用以下内部评估措施

但我想进一步研究这方面的真正聚类。我知道真正的集群是手动创建集群并进一步评估集群。我想知道他们是如何评价的?我找不到任何与之相关的文章或论文。

0 投票
0 回答
79 浏览

python-2.7 - 为什么有两个precision和两个recall?

我正在使用 Python、Pandas 和 NLTK 运行朴素贝叶斯分类器。

我一般了解什么以及如何计算精度和召回率,但我不明白为什么在使用以下命令时会有一对精度和一对召回率

使用人名(特征)的第一个字母进行分类是中文与非中文。

我的理解是精度 = A/(A+C) 和召回率 = D/(B+D)

0 投票
1 回答
40 浏览

information-retrieval - 如何计算提取的正确数据记录的数量?

我想计算需要提取正确数据记录、数据记录总数和提取不正确数据记录的召回率和精度。

我有输入 html 页面,我正在从中提取有用的数据并使用包装器生成输出 html 页面。

0 投票
1 回答
1364 浏览

matlab - 在 WANG 数据库上计算准确率和召回率

我在 MATLAB 中制作了一个 CBIR 系统,并使用相似度测量作为欧几里得距离。对每个查询图像使用它,我检索前 20 个图像。

我已经使用WANG Dataset来测试我的系统。
它包含 10 个类别(如非洲人、公共汽车、玫瑰等),每个类别包含 100 张图像。(总共 1000 张图像)。

我的方法:
1. 我使用相关图、共生矩阵(CCM)和像素扫描模式之间的差异(DBPSP)来构建我的向量(分别为 64+196+28=288 维)。

  1. 每个 1000 db 图像我都预先构建了它的向量。
  2. 现在出现了一个查询图像,我也构造了它的向量(再次为 228 维)。
  3. 我使用欧几里得距离进行相似性,并按欧几里得距离的降序对 db 图像向量进行排序。
  4. 显示前 20 个结果。

  5. 在这 20 个人中,我可以拥有 TP 或 FP。

对于单个查询图像,我可以使用此链接轻松计算 Precision 和 Recall 并绘制 PR 曲线。

我怎样才能为整个班级做同样的事情?

我的方法:对于属于 A 类的每个图像,找到前 20 个图像,它们分别是 TP(真阳性)和 FP(假阳性)。

A 类精度 =1500/(2000) = .75(对吗??)
A 类召回率 ---> 卡住??
PR曲线---->卡住了??一些链接说我需要一个分类器,而有些则不需要......我真的很困惑。

0 投票
1 回答
1013 浏览

python - 如何在 sklearn.metrics 中为 Precision_recall_curve 和 roc_curve 函数获得相同的阈值

我需要制作一个包含 TPR 和 FPR 值以及精度和召回率的表格。我在 python 中使用 sklearn.metrics 包中的 roc_curve 和 precision_recall_curve 函数。我的问题是每个函数都为我提供了不同的阈值向量,而我只需要一个即可将值合并为单个表中的列。有人可以帮我吗?

提前致谢

0 投票
1 回答
1258 浏览

machine-learning - 负类罕见时的 F 分数

我有数据集,其中 20% 的数据是负类,80% 是正类。在计算 F 分数时,我假设精度为 TP/(TP+FP)。我应该“逆”公式,因为我的频率较低的课程是负数吗?所以是TN/(TN+FN)?