搜索引擎评价指标及指标间的关系

目录

  • 二分类模型的评价指标
  • 准确率(Accuracy,ACC)
  • 精确率(Precision,P)——预测为正的样本
  • 召回率(Recall,R)——正样本
    • 注意事项
  • P和R的关系——成反比
  • F值
  • F1值
    • F值和F1值的关系
  • ROC(Receiver Operating Characteristic)——衡量分类器性能的工具
  • AUC(Area Under roc Curve)——ROC曲线下面积的计算
  • MAP (Mean Average Precision@K)——评估检索策略效果评估指标之一
    • Prec@K和AP@K
  • 针对搜索引擎——在不同场景下如何选择合适的评估指标
    • 长尾词

参考文档:
机器学习-模型评价指标
深入理解搜索引擎——搜索评价指标
搜索排序评估方法——产品角度

二分类模型的评价指标

预测值\真实值PositiveNegative
PositiveTrue Positive(TP)False Positive(FP)
NegativeFalse Negative(FN)True Negative(TN)

TP:真正例,真阳性。样本是正例,预测为正,分类正确
FP:假正例,假阳性。样本是负例,预测为正,分类错误。误诊
TN:真负例,真阴性。样本是负例,预测为负,分类正确
FN:假负例,假阴性。样本为正例,预测为负,分类错误。漏诊

准确率和召回率广泛用于信息检索和统计学分类领域的两个度量值,用于评价结果的质量。其中准确率是检索出相关文档数与检索出的文档总数的比率,衡量的是检索系统的查准率;召回率是指检索出的相关文档数和文档库中所有的相关文档数的比率,衡量的是检索系统的查全率

准确率(Accuracy,ACC)

即正确预测的样本数比总体样本数

Alt

优点:

  1. 计算简单:准确率的计算公式简单易懂,只需要将正确分类的样本数除以总样本数即可。
  2. 可解释性强:准确率是一个比例,因此它可以很容易地解释和理解。例如,如果准确率为80%,这意味着模型正确分类了80%的样本。

局限性:

  1. 不适用于不平衡数据集:当数据集中的正负样本不平衡时,准确率可能会给出误导性的结果。例如,如果模型将所有样本预测为负样本,那么准确率会很高,但实际上模型并没有很好地捕捉到正样本的特征。
  2. 对噪声敏感:准确率对噪声比较敏感,一些错误的预测可能会对准确率产生较大的影响。
  3. 无法衡量模型的稳定性:准确率只能衡量模型整体的分类效果,无法衡量模型在不同情况下的稳定性。

举例说明如下:

假设有一个二分类问题,数据集中有100个样本,其中80个是负样本,20个是正样本。
如果我们有一个模型,它能够将所有样本预测为负样本,那么准确率将是80%,因为80个负样本被正确分类了。但是,这个模型并没有很好地捕捉到正样本的特征,因为它没有预测任何正样本为正样本。
因此,在这种情况下,使用准确率作为评估指标是不合适的,因为它不能反映模型对正样本特征的捕捉能力。

精确率(Precision,P)——预测为正的样本

即模型预测为正的样本里,真正为正的比例

Alt

召回率(Recall,R)——正样本

Alt

召回率也叫做敏感度(Sensitivity),即在所有正样本中,模型准确找出的比例

注意事项

P高代表模型预测为正,基本上就是正。表示其很准。但很准的原因可能是模型太严格,例如100个正例,模型只判断了其中1个为正,确实这个样本分对了,但是依旧错分了其他99个,造成假阴性变高。
R高代表模型更能够把正样本从样本中找出来,漏诊率低,很敏感,稍微不对就会判正。但例如模型把所有样本都判为正,此时召回率确实高,但没有意义。会带来很高的假阳性。

举例说明:

假设我们有100个样本,其中99个是正样本,1个是负样本。
现在有一个模型,它预测其中1个样本为正样本。
首先,我们来计算精确率(Precision):
精确率 = 预测为正样本且实际为正样本的样本数 / 预测为正样本的样本数
在这个例子中,预测为正样本的样本数是1,而预测为正样本且实际为正样本的样本数也是1(因为只有一个正样本被预测为正样本)。
所以,精确率 = 1/ 1 = 100%。
接下来,我们来计算召回率(Recall):
召回率 = 预测为正样本且实际为正样本的样本数 /所有实际为正样本的样本数
在这个例子中,所有实际为正样本的样本数是99。
所以,召回率 = 1 / 99 = 0.01。

需要注意的是,这里计算的召回率非常低,这是因为模型过于严格,只预测了一个正样本。而实际上,应该尽可能提高召回率,以便尽可能多地预测出正样本。因此,在实际应用中,需要根据具体需求来调整模型的预测标准。

P和R的关系——成反比

可以认为P和R在一定程度上是成反比的。图片源于网络 图片源于网络

在二分类问题中,精确率(P)和召回率(R)是一对矛盾的指标:提高一个就意味着另一个的降低

这是因为这两个指标都涉及到预测为正样本的样本中真正为正样本的比例,但它们考察的角度不同。精确率是考虑预测为正样本的样本中有多少是真正的正样本,而召回率是考虑实际为正样本的样本中有多少被预测为正样本。

当模型过于严格时,可能会提高精确率,但可能会导致召回率下降,因为模型过于严格可能会导致将一些正样本误分为负样本。相反,如果模型过于宽松,可能会提高召回率,但可能会导致精确率下降,因为模型过于宽松可能会导致将一些负样本误分为正样本。
因此,可以认为精确率和召回率在一定程度上是成反比的。在评估模型时,需要综合考虑这两个指标,以便更全面地评估模型的性能。同时,也需要根据实际应用场景来调整模型的预测标准,以获得更好的模型性能。

总结:即高P很容易降低R,高R很容易降低P。两者需要权衡

F值

F值是精确率和召回率的调和平均数,用于综合考虑这两个指标,给出更全面的评估结果。
F值越大,说明模型的性能越好。在分类问题中,F值可以用来评估模型的整体性能,特别是当精确率和召回率存在矛盾时。通过绘制Precision-Recall曲线,可以得到不同阈值下的精确率和召回率组合,从而找到最优的F值。

F1值

Alt
F1值越高,说明模型的性能越好。F1值提供了一个平衡的评估标准,在评估分类模型时,我们通常希望同时获得高精确率和召回率,但这是比较困难的。

F1值能够更好地反映模型的总体性能,因为它同时考虑了精确率和召回率。其次,F1值对于不平衡数据集的处理能力更强,因为它通过权重平均的方式处理了不同类别的样本。

F值和F1值的关系

F值和F1值非常相似,都用于综合考虑精确率和召回率,给出更全面的评估结果。

当精确率和召回率相等时,F值和F1值相等。在其他情况下,F1值更注重精确率和召回率的平衡,如果一个模型的精确率很高但召回率很低,或者反之,那么F1值将会比较低。因此,F1值是一个更为严格的评估指标,能够更好地衡量模型的性能。

在分类问题中,F1值通常被用作评估指标,因为它综合考虑了精确率和召回率,能够更全面地反映模型的性能。如果一个模型的F1值很高,说明它在精确率和召回率方面都表现得很好。

ROC(Receiver Operating Characteristic)——衡量分类器性能的工具

在评估搜索引擎策略时,主要用于判断所使用的算法模型,或者说算法组合的性能

ROC(Receiver Operating Characteristic)曲线是一种分类器的综合性能指标,以假阳性率(False Positive Rate, FPR)为横坐标,真阳性率(True Positive Rate, TPR)为纵坐标,在平面直角坐标系中描绘的曲线形状。
在这里插入图片描述

ROC曲线的总面积是1,曲线下方面积越大,分类器的准确性越高。
因此,可以用**曲线下面积(Area Under Curve,AUC)**来衡量预测模型的优劣。AUC的值可以通过积分求得,即对ROC曲线下方的图形面积进行计算。

  • ROC曲线在搜索引擎中有着重要的应用。例如,在信息检索领域,ROC曲线是衡量搜索引擎性能的一个重要因素,可以用来比较不同搜索算法的优劣。利用ROC曲线可以对计算机程序进行性能评估,以选择最佳的词向量表示算法。
  • ROC曲线还可以用来调整搜索引擎的参数和优化模型。通过调整参数或更换模型,可以改变ROC曲线的位置和形状,从而提高搜索引擎的性能。例如,可以调整召回算法的排序权重或增加相关反馈机制等,以改善用户体验和提高搜索引擎的准确性。

AUC(Area Under roc Curve)——ROC曲线下面积的计算

通俗来说,ROC曲线就像一个跷跷板,敏感性和特异性是跷跷板的两端。

当敏感性和特异性都高的时候,ROC曲线就会更靠近左上角,曲线下方的面积就更大,表示分类器的准确性更高。相反,如果敏感性和特异性都低,那么ROC曲线就会更靠近右下角,曲线下方的面积就小,表示分类器的准确性低。

AUC就是计算ROC曲线下的面积,其值介于0和1之间。如果AUC接近1,表示分类器的准确性很高;如果AUC接近0或0.5,则表示分类器的准确性较低。

因此,通过ROC曲线和AUC值,我们可以更直观地评估分类器的性能,从而在实际应用中做出更好的决策。

MAP (Mean Average Precision@K)——评估检索策略效果评估指标之一

MAP评估的是一组检索结果的平均精度,即每个查询的平均相关文档数。它通过计算每个查询的平均精度,然后将这些平均精度相加,最后除以查询的总数。MAP考虑了每个查询的返回结果,并对其精度进行了加权处理,因此可以更好地反映检索策略的整体性能。

与传统的精确率、召回率和F1分数相比,MAP更加符合实际检索任务的需求。在信息检索领域中,用户通常更加关注检索结果的相关性和准确性,而MAP正是从用户的角度出发,对检索结果进行评估的一种指标。

因此,在搜索引擎和信息检索领域中,MAP已经成为评估检索策略效果的重要指标之一。通过提高MAP值,可以提高搜索引擎的性能和用户体验。

Prec@K和AP@K

Prec@K和AP@K是MAP的组成部分,并且都是用来评估检索策略效果的指标。

具体来说,

  • Prec@K表示设定一个阈值K,在检索结果到第K个正确召回为止,排序结果的相关度。
  • AP@K则是指到第K个正确的召回为止,从第一个正确召回到第K个正确召回的平均正确率。
  • MAP则是Mean Average Precision的缩写,表示一组检索结果的平均精度,即每个查询的平均相关文档数。

MAP的计算需要使用到Prec@K和AP@K,通过计算每个查询的平均精度(AP),然后将这些平均精度相加,最后除以查询的总数,得到MAP的值。

举例说明:
案例来源:人人都是产品经理

在这里插入图片描述
注:绿色表示搜索结果与搜索词相关,红色表示不相关。

在这个案例中Prec@1=1、Prec@3=2/3、Prec@5=3/5。也许你已经发现了,Prec@K也只能表示单点的策略效果,为了体现策略的整体效果,我们需要使用AP@K。

假设存在以下两个排序,我们直观的理解,结果1是优于结果2的,那么这种优劣会如何体现在AP@K值中呢?

这里是引用

对于结果1,
AP@K=(1.0+0.67+0.75+0.8+0.83+0.6)/6=0.78

对于结果2,
AP@K=(0.5+0.4+0.5+0.57+0.56+0.6)/6=0.52
可以看到,效果优的排序结果的AP@K值大于效果劣的那一组。

在这里插入图片描述

在以上案例中,
查询1的AP@K=(1.0+0.67+0.5+0.44+0.5)/5=0.62,
查询的2的AP@K=(0.5+0.4+0.43)/3=0.44,
则我们计算这个策略的MAP@K=(0.62+0.44)/2=0.53。
对使用MAP@K进行评估的系统,我们认为MAP@K值较高的策略效果更好。

针对搜索引擎——在不同场景下如何选择合适的评估指标

由于搜索引擎需要处理海量数据,如果召回率R(即召回的相关文档的比例)过高↑,会对后续的排序和引擎的整体性能产生负面影响。具体来说,高召回率会导致需要处理的数据量增加,从而增加排序和返回结果的时间,降低搜索引擎的性能↓。

如果过度追求精确率P,可能会导致召回率R降低,即很多真正的正样本没有被预测出来。在一些场景中,如搜索引擎的垂直搜索(垂搜)场景,可能需要更多的长尾词来带流量。但由于对精确率P的要求极高,很多相关的词可能无法出现在搜索结果中,导致召回率R降低。

因此,在不同的应用场景中,需要根据实际需求来选择合适的评估指标。如果希望模型的预测尽可能准确,那么可以选择较高的精确率;如果希望模型能够尽可能多地覆盖正样本,那么可以选择较高的召回率。

为了更好地分析精确率和召回率之间的关系,可以绘制Precision-Recall曲线。这条曲线可以通过改变模型的阈值来获得不同的精确率和召回率组合,从而帮助我们更好地理解模型的性能。

此外,还可以使用F值来调和精确率和召回率的互斥关系。F值是精确率和召回率的调和平均数,它能够综合考虑这两个指标,给出更全面的评估结果。

总之,选择合适的评估指标需要根据实际应用场景来决定,并综合考虑不同指标的优缺点和需求来进行权衡。

长尾词

长尾词是指非目标关键词但与目标关键词相关的,能够带来搜索流量的组合型关键词。
长尾词通常较长,可能是2-3个词组成,甚至是短语,存在于内容页面,除了内容页的标题,还存在于内容中。长尾词具有可延伸性、针对性强、范围广等特征。

在搜索引擎优化(SEO)中,长尾词是非常重要的概念。长尾理论认为,通过大量的小市场累积起来,可以占据市场中可观的份额。对于网站来说,长尾词带来的总流量非常大。

例如,如果一个网站的目标关键词是“服装”,那么其长尾词可能包括“男士服装”、“冬装”、“户外运动装”等。

因此,在网站优化中,需要关注长尾词的优化。通过合理地选择和利用长尾词,可以提高网站的流量和转化率。同时,需要分析市场趋势和用户需求,以便找到更有价值的长尾词,并选择有利可图的优化词类,实现搜索条件的最优化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/250513.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【AI_Design】Midjourney学习笔记

目录 后缀解析Promot合格使用prompt关键词描述 关键词化合作用关键词网站推荐 联合Chatgpt使用总结 后缀解析 –ar:宽高比设置–c:多样性设置(数值0-100,默认值0)–s:风格化设置(数值0-1000&am…

电脑怎么录屏?打造专业级视频内容!

随着科技的进步,电脑已经深入到我们的日常生活和工作中。而在这个数字时代,录制屏幕内容变得日益重要。无论是制作教程、分享游戏技巧,还是记录重要的演示,录屏都是一个不可或缺的功能。可是电脑怎么录屏呢?本文将深入…

web应用课——(第四讲:中期项目——拳皇)

代码AC Git地址:拳皇——AC Git链接

机器学习系列-2 线性回归训练损失

机器学习系列-2 线性回归&训练损失 学习内容来自:谷歌ai学习 https://developers.google.cn/machine-learning/crash-course/framing/check-your-understanding?hlzh-cn 本文作为学习记录1 线性回归: 举例:蝉(昆虫物种&…

2024年美赛数学建模A题思路分析 - 资源可用性和性别比例

# 1 赛题 问题A:资源可用性和性别比例 虽然一些动物物种存在于通常的雄性或雌性性别之外,但大多数物种实质上是雄性或雌性。虽然许多物种在出生时的性别比例为1:1,但其他物种的性别比例并不均匀。这被称为适应性性别比例的变化。…

机器学习复习(3)——分类神经网络与drop out

完整的神经网络 以分类任务为例,神经网络一般包括backbone和head(计算机视觉领域) 下面的BasicBlock不是一个标准的backbone,标准的应该是复杂的CNNs构成的 Classfier是一个标准的head,其中output_dim表示分类类别,一般写作num…

LabVIEW传感器通用实验平台

LabVIEW传感器通用实验平台 介绍了基于LabVIEW的传感器实验平台的开发。该平台利用LabVIEW图形化编程语言和多参量数据采集卡,提供了一个交互性好、可扩充性强、使用灵活方便的传感器技术实验环境。 系统由硬件和软件两部分组成。硬件部分主要包括多通道数据采集卡…

go grpc高级用法

文章目录 错误处理常规用法进阶用法原理 多路复用元数据负载均衡压缩数据 错误处理 gRPC 一般不在 message 中定义错误。毕竟每个 gRPC 服务本身就带一个 error 的返回值,这是用来传输错误的专用通道。gRPC 中所有的错误返回都应该是 nil 或者 由 status.Status 产…

如何在 Golang 中使用 crypto/ed25519 进行数字签名和验证

如何在 Golang 中使用 crypto/ed25519 进行数字签名和验证 引言crypto/ed25519 算法简介环境搭建和准备工作生成密钥对进行数字签名 验证签名实际应用场景案例总结 引言 在当今数字化时代,网络安全显得尤为重要。无论是在网上进行交易、签署合同,还是发…

笔记---容斥原理

AcWing,890.能被整除的数 给定一个整数 n n n 和 m m m 个不同的质数 p 1 , p 2 , … , p m p_{1},p_{2},…,p_{m} p1​,p2​,…,pm​。 请你求出 1 ∼ n 1∼n 1∼n 中能被 p 1 , p 2 , … , p m p_{1},p_{2},…,p_{m} p1​,p2​,…,pm​ 中的至少一个数整除的整数有多少…

element-ui link 组件源码分享

link 组件的 api 涉及的内容不是很多,源码部分的内容也相对较简单,下面从以下这三个方面来讲解: 一、组件结构 1.1 组件结构如下图: 二、组件属性 2.1 组件主要有 type、underline、disabled、href、icon 这些属性,…

Golang `crypto/hmac` 实战指南:代码示例与最佳实践

Golang crypto/hmac 实战指南:代码示例与最佳实践 引言HMAC 的基础知识1. HMAC 的工作原理2. HMAC 的应用场景 Golang crypto/hmac 库概览1. 导入和基本用法2. HMAC 的生成和验证3. crypto/hmac 的特性 实战代码示例示例 1: 基本的 HMAC 生成示例 2: 验证消息完整性…

C语言:内存函数(memcpy memmove memset memcmp使用)

和黛玉学编程呀------------- 后续更新的节奏就快啦 memcpy使用和模拟实现 使用 void * memcpy ( void * destination, const void * source, size_t num ) 1.函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。 2.这个函数在遇到 \0 的时候…

STM32 有源蜂鸣器

模块介绍: 结构:有源蜂鸣器通常由一个振膜和一个驱动电路组成。振膜是负责产生声音的部分,而驱动电路则负责控制振荡频率和幅度。 工作原理:有源蜂鸣器的驱动电路会向振膜施加电压,使其振动产生声音。驱动电路可以根据输入信号的…

阿里云a10GPU,centos7,cuda11.2环境配置

Anaconda3-2022.05-Linux-x86_64.sh gcc升级 centos7升级gcc至8.2_centos7 yum gcc8.2.0-CSDN博客 paddlepaddle python -m pip install paddlepaddle-gpu2.5.1.post112 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html 报错 ImportError: libssl.so…

基于Springboot的高校心理教育辅导设计与实现(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的高校心理教育辅导设计与实现(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,…

flask基于django大数据的证券股票分析系统python可视化大屏

证券分析系统采用B/S架构,数据库是MySQL。网站的搭建与开发采用了先进的Python进行编写,使用了Django框架。该系统从两个对象:由管理员和用户来对系统进行设计构建。主要功能包括:个人信息修改,对股票信息、股票买入、…

深度学习——pycharm远程连接

目录 远程环境配置本地环境配置(注意看假设!!!这是很多博客里没写的)步骤1步骤2步骤2.1 配置Connection步骤2.2 配置Mappings 步骤3 配置本地项目的远程解释器技巧1 pycharm中远程终端连接技巧2 远程目录技巧3 上传代码文件技巧4 …

【无标题】yarn报错 “https://registry.npm.taobao.org/...: certificate has expired“如何处理

前言 今天在jenkins打包项目时yarn打包报错,查看log发现npm淘宝镜像报错 原因 在 1 月 22 日,淘宝原镜像域名(registry.npm.taobao.org)的 HTTPS 证书正式到期。如果想要继续使用,需要将 npm 源切换到新的源&#…

【LVGL环境搭建】

LVGL环境搭建 win模拟器环境搭建一.二.三.四.五. Ubuntu模拟器环境搭建一. 前置准备二. 下载LVGL Source code:三. 安装sdl2:四. 开启VScode执行五. 安装扩展套件六. 按F5执行七. 执行结果 win模拟器环境搭建 一. 二. 三. 四. 五. Ubuntu模拟器环境…