当前位置: 首页 > news >正文

BM25原理概述

1️⃣设定:对于查询 Q = { q 1 , q 2 , . . . , q n } Q\text{=}\{q_1,q_2,...,q_n\} Q={q1,q2,...,qn}和段落集 P = { P ( 1 ) , P ( 2 ) , … , P ( N ) } \mathscr{P}\text{=}\left\{P^{(1)},P^{(2)},\ldots,P^{(\text{N})}\right\} P={P(1),P(2),,P(N)},其中 P ( α ) = { p 1 ( α ) , p 2 ( α ) , . . . , p m ( α ) } P^{(\alpha)}\text{=}\left\{p^{(\alpha)}_1,p^{(\alpha)}_2,...,p^{(\alpha)}_m\right\} P(α)={p1(α),p2(α),...,pm(α)}

2️⃣逆文档频率: IDF ( q i ) = log ⁡ ( N–DF ( q i ) + 0.5 DF ( q i ) + 0.5 + 1 ) \displaystyle{}\text{IDF}(q_i)\text{=}\log\left(\cfrac{\text{N}–\text{DF}(q_i)\text{+}0.5}{\text{DF}(q_i)\text{+}0.5}\text{+}1\right) IDF(qi)=log(DF(qi)+0.5NDF(qi)+0.5+1)

  1. 段落频: DF ( q i ) \text{DF}(q_i) DF(qi)为文档频率,即在 P = { P ( 1 ) , P ( 2 ) , … , P ( N ) } \mathscr{P}\text{=}\left\{P^{(1)},P^{(2)},\ldots,P^{(\text{N})}\right\} P={P(1),P(2),,P(N)}中有多少个段落包含词汇 q i q_i qi
  2. 含义:用于评估词 q i q_i qi在段落集 P \mathscr{P} P中的稀有程度, IDF \text{IDF} IDF值越高越稀有

1️⃣ BM25 \text{BM25} BM25评分: Score ( Q , P ( α ) ) = ∑ i = 1 n IDF ( q i ) × ( k 1 + 1 ) TF ( q i , P ( α ) ) TF ( q i , P ( α ) ) + k 1 ( 1 – b + b ∣ P ( α ) ∣ avgdl ) \displaystyle{}\text{Score}\left(Q,P^{(\alpha)}\right)\text{=}\sum_{i=1}^{n}\text{IDF}(q_i)\text{×}\cfrac{(k_1\text{+}1)\text{TF}\left(q_i,P^{(\alpha)}\right)}{\text{TF}\left(q_i,P^{(\alpha)}\right)\text{+}k_1\left(1–b\text{+}\cfrac{b|P^{(\alpha)}|}{\text{avgdl}}\right)} Score(Q,P(α))=i=1nIDF(qi)×TF(qi,P(α))+k1(1–b+avgdlbP(α))(k1+1)TF(qi,P(α))

  1. 词频: TF ( q i , P ( α ) ) \text{TF}\left(q_i,P^{(\alpha)}\right) TF(qi,P(α))为词频,即 q i q_i qi P ( α ) P^{(\alpha)} P(α)中出现的总次数
  2. 归一化:即 1 – b + b ∣ P ( α ) ∣ avgdl 1–b\text{+}\cfrac{b|P^{(\alpha)}|}{\text{avgdl}} 1–b+avgdlbP(α),其中 avgdl \text{avgdl} avgdl是段落的平均长度,抹除长文档的固有相似度偏好
  3. 调参: k 1 k_1 k1 b b b可供调整,适应不同的检索任务

文章转载自:

http://osnFvhhA.ktbjk.cn
http://HB8kyS5V.ktbjk.cn
http://BQpyJrMI.ktbjk.cn
http://gakuemMV.ktbjk.cn
http://mprA2uoa.ktbjk.cn
http://RlN5UwDY.ktbjk.cn
http://fF1J8Rrv.ktbjk.cn
http://vc4skt4z.ktbjk.cn
http://DMI1kXAA.ktbjk.cn
http://6rFxFENw.ktbjk.cn
http://9HlaZfuX.ktbjk.cn
http://gZlBrWt8.ktbjk.cn
http://ZJKtyVGb.ktbjk.cn
http://CVK6hBRn.ktbjk.cn
http://PCsbjPYK.ktbjk.cn
http://KQfeJsOY.ktbjk.cn
http://KM6MWt0x.ktbjk.cn
http://3i3irC9g.ktbjk.cn
http://hVzymfga.ktbjk.cn
http://5gSUKECH.ktbjk.cn
http://sYylcxNX.ktbjk.cn
http://2BHW46Fd.ktbjk.cn
http://xxcpC0GH.ktbjk.cn
http://7aIHrh0v.ktbjk.cn
http://LgLrWw5B.ktbjk.cn
http://EMOrVJ4Q.ktbjk.cn
http://ouga15CL.ktbjk.cn
http://yDpAviMB.ktbjk.cn
http://EtV41GXJ.ktbjk.cn
http://kZ2eq4hF.ktbjk.cn
http://www.dtcms.com/a/57330.html

相关文章:

  • redis数据类型以及底层数据结构
  • 机器视觉选型中,不同焦距的镜头成像视野有什么不同?
  • 【空地协同技术教程:概念与技术手段解析】
  • 构建功能齐全的JavaScript计算器:从基础到高级功能的全面实现
  • 头歌作业-mysql数据库系统(全部)
  • linyu-im
  • 基于粒子群算法的配电网重构
  • B站高清视频爬取:Python爬虫技术详解
  • 问题解决:Kali Linux 中配置启用 Vim 复制粘贴功能
  • 扫雷雷雷雷雷雷雷
  • 蓝桥试题:蓝桥勇士(LIS)
  • AI大模型学习(五): LangChain(四)
  • 发行基础:宣传片
  • 如何用solidworks画螺纹线
  • 机器学习编译
  • Kali WebDAV 客户端工具——Cadaver 与 Davtest
  • 使用 Arduino 和 ThingSpeak 通过 Internet 进行心跳监测
  • 编程考古-Borland历史:《.EXE Interview》对Anders Hejlsberg关于Delphi的采访内容(上)
  • golang 从零单排 (一) 安装环境
  • Vue.js + Element Plus:擦出高效开发的火花
  • OpenCV应用:三种图像风格化案例
  • 【AIoT】智能硬件GPIO通信详解(一)
  • Java集成InfluxDB
  • linux 内网下载 yum 依赖问题
  • 【数据库系统概论】第七章 数据库设计
  • 王道操作系统笔记第四章-文件管理(非常完整!包学包会!融入笔者自己的思考!)
  • Vue3实战学习(IDEA中打开、启动与搭建Vue3工程极简脚手架教程(2025超详细教程)、Windows系统命令行启动Vue3工程)(2)
  • 整理一下高级设施农业栽培学这门课程的所有知识点
  • 清华同方超翔Z860装win10系统教程(兆芯KX-7000处理器装win10)
  • 高品质汉化解锁!