大语言模型-检索测评指标
1. MRR (Mean Reciprocal Rank)平均倒数排名:
衡量检索结果排序质量的指标。
计算方式: 对于每个查询,计算被正确检索的文档的最高排名的倒数的平均值,再对所有查询的平均值取均值。
意义: 衡量对于多次查询,检索结果的排名,适用于评估检索结果排序效果好坏的情况。强调“顺序性”。
公式: |Q|表示查询的总次数, r a n k i rank_{i} ranki表示第i次查询中第一个准确结果的排序。
M R R = 1 ∣ Q ∣ ∑ i = 1 ∣ Q ∣ 1 r a n k i MRR = \frac{1}{{|Q|}}\sum_{i=1}^{|Q|}\frac{1}{rank_{i} } MRR=∣Q∣1i=1∑∣Q∣ranki1
2. AP(Average Precision)平均精度:
衡量检索结果排序质量的指标。
计算方式: 一次查询结果正确结果的精确率求和除以查询结果的总数
意义: 衡量对于一个查询,检索结果中所有与 ground-truth相关的文档是否都有较高的排序。AP衡量的是整个排序的平均质量。
公式: K表示一次查询共查询K个文档,Pre代表精确率,Rel(n)表示这次查询结果中的第n个结果相关性分数,这里命中为1,未命中为0。
A P = ∑ n = 1 K P r e @ n ∗ R e l ( n ) K AP = \frac{\sum_{n=1}^{K}Pre@n*Rel(n)}{K} AP=K∑n=1KPre@n∗Rel(n)
2. MAP(Mean Average Precision)平均准确率:
衡量检索结果排序质量的指标。
计算方式: 对于每个查询,计算被正确检索的文档的平均精确率,再对所有查询的平均值取均值。
意义: 衡量对于多个查询,检索结果的平均精确率,适用于评估排序结果精确度的情况。
公式: |Q|表示查询的总次数,AP(i)表示第i次查询的平均精度。
M A P = 1 ∣ Q ∣ ∑ i = 1 ∣ Q ∣ A P ( i ) MAP = \frac{1}{{|Q|}}\sum_{i=1}^{|Q|}AP(i) MAP=∣Q∣1i=1∑∣Q∣AP(i)
3. NDCG(Normalized Discounted Cumulative Gain)归一化折损累积增益:
衡量检索结果排序质量的指标。
计算方式: 对于每个查询,对每个被检索到的结果计算其相对于理想排序的增益值,然后对这些相对增益值进行加权求和,再除以理想排序的增益值。
意义: 衡量对于一个查询,检索结果的绝对和相对排序质量,适用于评估排序结果的质量与排名准确度的情况。
公式: @k表示一次查询搜索k个文档;
N D C G @ k = D C G @ k I D C G @ k NDCG@k = \frac{DCG@k}{IDCG@k} NDCG@k=IDCG@kDCG@k
其中:
DCG@k(Discounted Cumulative Gain)代表这次k个查询结果列表中每个文档与查询的相关程度。
IDCG@k代表最理想的这次k个查询结果列表中的结果。
DCG@k的公式为: Rel(n)表示这次查询结果中的第n个结果相关性分数,这里命中为1,未命中为0。
D C G @ k = ∑ i = 1 k R e l ( i ) log 2 i + 1 R e l ( i ) DCG@k=\sum_{i=1}^{k}\frac{Rel(i)}{\log_{2}{i+1} }Rel(i) DCG@k=i=1∑klog2i+1Rel(i)Rel(i)
IDCG@k是按照Rel(i)从高到低排序的DCG@k
4. Recall(召回率)
计算方式: 对于一个查询,所有被召回的样本中正样本的比例。
意义: 关注于用户感兴趣的物品。
公式: 符号含义见下面的混淆矩阵。
r e c a l l = T P T P + F N recall = \frac{TP}{TP+FN} recall=TP+FNTP
在搜索任务中,R表示检索出的正确文档集合,T表示检索出的所有文档。
r e c a l l = R ∩ T T recall = \frac{R\cap T}{T} recall=TR∩T
5. Hit Rate(Recall@K)命中率
衡量检索结果准确性的指标。
计算方式: 对于一个查询,计算被正确检索的文档的占所有被检索的文档的比例。
意义: 衡量用户想要的项目有没有被检索到,强调预测的“准确性”。
公式:
6. Precision(精确率)
计算方式: 对于一个查询, 预测为正样本的样本中确实为正样本的比例。
意义: 关注于要推荐的物品。
公式: 符号含义见下面的混淆矩阵。
P r e = T P T P + F P Pre = \frac{TP}{TP+FP} Pre=TP+FPTP
在搜索任务中,R表示检索出的正确文档集合,T表示检索出的所有文档。
r e c a l l = R ∩ T T recall = \frac{R\cap T}{T} recall=TR∩T
7. Accuracy (准确率)
计算方式: 预测正确的样本在所有样本中的比例。
意义: 每个样本的预测是否正确。
公式: 符号含义见下面的混淆矩阵。
A C C = T P + T N T P + F P + T N + F N ACC = \frac{TP+TN}{TP+FP+TN+FN} ACC=TP+FP+TN+FNTP+TN
参考
【基础】推荐系统常用评价指标Recall、NDCG、AUC、GAUC
信息检索与数据挖掘 | 【实验】检索评价指标MAP、MRR、NDCG
谈谈NDCG的计算
相关文章:
大语言模型-检索测评指标
1. MRR (Mean Reciprocal Rank)平均倒数排名: 衡量检索结果排序质量的指标。 计算方式: 对于每个查询,计算被正确检索的文档的最高排名的倒数的平均值,再对所有查询的平均值取均值。 意义: 衡量…...
Zookeeper集群中节点之间数据是如何同步的
1.首先集群启动时,会先进行领导者选举,确定哪个节点是Leader,哪些节点是Follower和Observer 2.然后Leader会和其他节点进行数据同步,采用发送快照和发送Diff日志的方式 3.集群在工作过程中,所有的写请求都会交给Lead…...
HTTPServer改进思路2(mudou库核心思想融入)
mudou网络库思想理解 Reactor与多线程 服务器构建过程中,不仅仅使用一个Reactor,而是使用多个Reactor,每个Reactor执行自己专属的任务,从而提高响应效率。 首先Reactor是一种事件驱动处理模式,其主要通过IO多路复用…...
Kubernetes Secret 详解
Kubernetes Secret 是一种用于存储和管理敏感信息的对象,如密码、OAuth 令牌和 SSH 密钥等。使用 Secret 可以避免将机密数据直接放在 Pod 规约或容器镜像中,从而增加了应用程序的安全性。 Secret 的类型 Kubernetes 支持多种类型的 Secret,包括: Opaque:默认的…...
docker笔记4-部署
docker笔记4-部署 一、部署nginx二、部署Tomcat三、部署ESKibana3.1 部署ES3.2 部署kibana 一、部署nginx docker search nginx #搜索nginx的最新版本docker pull nginx #这里可以指定nginx版本,如果不指定,那么就拉取最新版本latestdocker run -d --na…...
有监督学习基础
基本概念 给定输入有为(x,y),其中x表示学习特征,y表示输出,m表示输入总数,有监督学习旨在根据输入建立能够预测可能输出的模型,大致可以分为回归和分类两种,代表可能输出是无限的或…...
揭开 AI 绘画提示词的神秘密码!
前言 ** 揭秘AI 绘画 ** 提示词的神秘密码 亲爱的朋友们,今天我们要一起探索 AI 绘画世界中那神秘的“密码”——提示词。 在 AI 绘画的奇妙领域里,提示词就像是一把神奇的钥匙,能够开启无尽的创意之门。它是我们与 AI 进行心灵对话的桥…...
macOS 10.15中屏蔽Microsoft Edge浏览器的更新提示
文章目录 1.效果对比2.安装描述文件3.停用描述文件4.高级操作(可选)参考文献 最近在macOS10.15系统,打开Microsoft Edge浏览器,每次打开都有个烦人的提示“ 要获取将来的 microsoft edge 更新,需要 macos 10.15 或更高…...
Qt 实战(3)数据类型 | 3.2、QVariant
文章目录 一、QVariant1、存储数据1.1、存储Qt内置数据1.2、存储自定义数据 2、获取数据3、判断数据类型4、清空数据5、总结 前言: QVariant是Qt框架中一个非常强大且灵活的类,它提供了一种通用的方式来存储和转换几乎任何类型的数据。无论是基本数据类型…...
Docker中安装的postgresql14在启用vector扩展的时候,找不到该扩展的控制文件。
ERROR: could not open extension control file “/usr/share/postgresql/14/extension/vector.control”: No such file or directory 进入容器 docker exec -it CONTAINER ID /bin/bash 1.更新 apt-get apt-get update 2.安装插件 #不同版本对应修改数字即可 apt-get i…...
JS防抖和节流
一、防抖和节流的适用场景 防抖(Debounce): 适合在输入框输入时的实时搜索、窗口大小调整时的resize事件等。节流(Throttle): 适合如页面滚动时的scroll事件、按钮点击时的请求发送等需要控制频率的场景。 …...
OpenWrt 为软件包和docker空间扩容
参考资料 【openwrt折腾日记】解决openwrt固件刷入后磁盘空间默认小的问题,关联openwrt磁盘扩容空间扩容【openwrt分区扩容】轻松解决空间可用不足的尴尬丨老李一瓶奶油的YouTube 划分空间 参考一瓶奶油的YouTube 系统 -> 磁盘管理 -> 磁盘 -> 修改 格…...
重要的工作任务,怎么在电脑桌面设置倒计时?
在日常工作中,我们总是面临着众多工作任务,如何高效地管理和完成这些任务成为了每个职场人的必备技能。为任务设置倒计时,不仅能让我们清晰地看到任务的先后顺序,还能帮助我们更好地把握时间,提高工作效率。想象一下&a…...
Failed to build get_cli:get:的解决方案
项目场景: 今天安装Getx命令行的时候,输入这面文档报了一个错: dart pub global activate get_cli 问题描述 提示:这里描述项目中遇到的问题: 例如:数据传输过程中数据不时出现丢失的情况,偶尔…...
短视频矩阵源码技术分享
在当今数字媒体时代,短视频已成为吸引观众和传递信息的重要手段。对于开发者而言,掌握短视频矩阵源码技术不仅是提升自身技能的需要,更是把握行业发展趋势的必然选择。本文将深入探讨短视频矩阵源码的关键技术要点及其实现方法,帮…...
轮播图自定义内容
官网:Swiper演示 - Swiper中文网 下载: npm i swiper Vue3示例代码: <template><div class"swiper mySwiper"><div class"swiper-wrapper"><div class"swiper-slide"><div>…...
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...
Istio_01_Istio初识
文章目录 IstioService Mesh Istio Istio: 以服务网格形态用于服务治理的开放平台和基础设施 本质: 以非侵入式治理服务之间的访问和调用服务治理: 流量管理、可观测性、安全性可同时管理多类基础设施(多种网络方案) 如: Istio和Kubernetes架构的结合 Istio通过Kubernetes的域…...
leetcode日记(47)螺旋矩阵Ⅱ
这题思路不难,就是找规律太难了。 我首先的思路是一行一行来,根据规律填入下一行的数组,第i行是由前i个数字(n-2*i)个增序数列后i个数字组成,后来觉得太难找规律了就换了一种思路。 思路大致是先计算出需…...
centos系统mysql主从复制(一主一从)
文章目录 mysql80主从复制(一主一从)一、环境二、服务器master1操作1.开启二进制日志2. 创建复制用户3. 服务器 slave1操作4. 在主数据库中添加数据 mysql80主从复制(一主一从) 一、环境 准备两台服务器,都进行以下操…...
国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...
【UE5 C++】通过文件对话框获取选择文件的路径
目录 效果 步骤 源码 效果 步骤 1. 在“xxx.Build.cs”中添加需要使用的模块 ,这里主要使用“DesktopPlatform”模块 2. 添加后闭UE编辑器,右键点击 .uproject 文件,选择 "Generate Visual Studio project files",重…...
Mac flutter环境搭建
一、下载flutter sdk 制作 Android 应用 | Flutter 中文文档 - Flutter 中文开发者网站 - Flutter 1、查看mac电脑处理器选择sdk 2、解压 unzip ~/Downloads/flutter_macos_arm64_3.32.2-stable.zip \ -d ~/development/ 3、添加环境变量 命令行打开配置环境变量文件 ope…...
Python环境安装与虚拟环境配置详解
本文档旨在为Python开发者提供一站式的环境安装与虚拟环境配置指南,适用于Windows、macOS和Linux系统。无论你是初学者还是有经验的开发者,都能在此找到适合自己的环境搭建方法和常见问题的解决方案。 快速开始 一分钟快速安装与虚拟环境配置 # macOS/…...
