【信息检索与数据挖掘期末复习】(五)Language Model

news2024/12/28 18:58:46

什么是语言模型?

一个传统的语言生成模型可以用于识别或生成字符串

我们可以将有穷自动机看作是一种确定性的语言模型
在这里插入图片描述

基本模型:每一个文档都是通过一个像这样的自动机生成的,只不过这种自动机是有概率的

一种最简单的语言模型等价于一个概率有穷自动机,该自动机仅仅由一个节点组成,它也只有一个生成不同词项的概率分布

  • STOP 并不是一个词,它是一个结束符
    在这里插入图片描述

eg:
在这里插入图片描述

不同的语言模型(我们将文档看作一个生成查询的语言模型

在这里插入图片描述

可以看到,对于该查询, P ( q u e r y ∣ M d 1 ) < P ( q u e r y ∣ M d 2 ) P(query|M_{d1}) < P(query|Md2) P(queryMd1)<P(queryMd2) 。因此,文档 d 2 d_2 d2 与查询的相关性更大

IR中的语言模型

IR中最早使用也是最基本的语言模型是查询似然模型

查询似然模型

每个文档都被看作一个语言模型(d -> M d M_d Md。检索的目标是按照其与查询相关的概率 p ( d ∣ q ) p(d|q) p(dq) 进行排序。

在这里插入图片描述

  • p ( q ) p(q) p(q) 对所有文档来说是一样的,所以可以忽略

  • p ( d ) p(d) p(d) 是先验概率,我们常常将其视为对所有文档是相同的

    • 我们也可以对高质量文档赋予更高的先验概率
  • p ( q ∣ d ) p(q|d) p(qd) 是文档 d 在对应语言模型下,生成 q 的概率

我们按照 p ( d ∣ q ) p(d|q) p(dq) 排序,实际上就是按照查询似然 p ( q ∣ d ) p(q|d) p(qd) 进行排序

如何计算 p ( q ∣ d ) p(q|d) p(qd) 呢?

计算 p ( q ∣ d ) p(q|d) p(qd)

等价于多项式朴素贝叶斯模型(基于条件独立假设)

在这里插入图片描述

  • 其实前面还有一个系数 K q K_q Kq ,但是对于一个特定的查询,它是一个常数,因此被忽略

我们可以将上式转化为

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FHdugd5E-1670240021845)(C:\Users\nishiyu\AppData\Roaming\Typora\typora-user-images\image-20211228201737438.png)]

如何得到 p ( t ∣ M d ) p(t|M_d) p(tMd)

查询生成概率的估计

在最大似然估计及一元语言模型假设的情况下

在这里插入图片描述

问题:

  • 该模型有一票否决权。即,若查询中出现了文档 d d d 中没有的词,概率为 0
  • 对文档中出现的词的估计有问题,特别是那些在文档中只出现一次的词往往会被过度估计(一次出现在一定程度上出于偶然性)

解决上述两个问题的方法是平滑

平滑

不仅仅是为了避免零概率,实际上实现了词项权重计算的主要部分

想法:对非零的概率结果进行折扣,对未出现的词的概率赋予一定的值

在一般的参照概率分布中,文档中未出现的查询项都可能在查询中出现,它的概率在某种程度上接近但不可能超过整个文档集中偶然出现的概率。

也就是说,若 t f t , d = 0 tf_{t,d} = 0 tft,d=0,那么 $\hat{P}\left(t \mid M_{d}\right) \le \frac{\mathrm{cf}_{t}}{T} \$

  • c f t cf_t cft 是 t 在整个文档集中出现的次数
  • T 是所有文档集中词条的个数

Jelinek-Mercer 平滑

将基于文档的多项式分布和基于全部文档集估计出的多项式分布相混合,这类模型称为线性插值语言模型

在这里插入图片描述

  • 基于全部文档集估计出的多项式分布

在这里插入图片描述

  • M c M_c Mc 是基于全部文档集构造的语言模型

  • 如何设置正确的 λ \lambda λ 是获得良好性能的关键

    • 取大值:倾向于检索包含所有查询词的文档
    • 取小值:适用于长查询。较小的 λ \lambda λ 意味着更平滑(似然估计的概率贡 献更小)

上面是对一个词的平滑,对整个查询的平滑就是乘积

在这里插入图片描述

Dirichlet 平滑

在这里插入图片描述

  • P ^ ( t ∣ M c ) \hat{P}(t|M_c) P^(tMc) P ^ ( t ∣ d ) \hat{P}(t|d) P^(td) 的先验
  • 我们将 P ^ ( t ∣ M c ) \hat{P}(t|M_c) P^(tMc) 设置为 P ^ ( t ∣ d ) \hat{P}(t|d) P^(td) 的初始值
  • 当我们阅读一篇文档时,我们根据文档内容,更新 P ^ ( t ∣ d ) \hat{P}(t|d) P^(td)
  • α = 0 \alpha = 0 α=0,则相当于没进行平滑, α \alpha α 越大,先验概率的权重就越大,也就越平滑

两种平滑的对比

  • 前一种在冗余查询上表现更好,后一种在关键词查询上效果更好
  • 两种模型都对平滑参数很敏感,不能在没调参的情况下使用这两种模型

向量空间 VS BM25 VS LM

  • 向量空间模型是基于相似度的,是几何 / 线性代数的概念。其余两个都是基于概率论的

  • t f tf tf在三个模型中都用了

    • L M LM LM:直接使用 t f tf tf
    • 其他两个使用得更复杂一点
  • d f df df

    • 在BM25和向量空间中都直接使用了
    • L M LM LM:混合 t f tf tf c f cf cf,与 i d f idf idf 有类似的效果
      • 在一般集合中罕见的词项,但是在一些文档中很常见,将会对排名产生很大的影响
  • c f cf cf

    • 只有 L M LM LM 使用了 c f cf cf,其他的都是用的 d f df df
    • c f cf cf是基于整个集合的, d f df df以文档为单位的
  • 长度归一化

    • 向量空间:余弦或主元归一化
    • L M LM LM:概率是固有的长度归一化
    • B M 25 BM25 BM25:优化长度归一化的参数

理论基础的对比使用指标的对比长度归一化的对比

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

阿拉伯糖偶联核苷酸,UDP-b-L-arabinopyranose disodium salt,UDP-β-L-Ara.2Na

产品名称&#xff1a;阿拉伯糖偶联核苷酸 英文名称&#xff1a;UDP-b-L-arabinopyranose disodium salt&#xff0c;UDP-β-L-Ara.2Na CAS号&#xff1a;15839-78-8 分子式&#xff1a;C14H22N2O16P2 分子量&#xff1a;536.27600 纯度&#xff1a;98% 规格&#xff1a;1mg …

从零开始的Linux 阿里云ECS服务器搭建、FileZilla和宝塔

云服务器ECS概述 云服务器ECS&#xff08;Elastic Compute Service&#xff09;是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS级别云计算服务&#xff0c;让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器&#xff0c;免去了您采购IT硬件的前期准备&#x…

会员一卡通是什么?

昨天我们讨论了收银系统和给公众号的联合使用&#xff0c;最大的功能就是实现会员卡电子化、双方可以互动交流、会员账号信息随时可查看&#xff0c;但如果店铺比较小&#xff0c;不愿意花时间经营公众号或者小程序&#xff0c;那么还有什么办法做到电子会员卡呢? 会员一卡通可…

Java9-17新特性一览,了解少于3个你可能脱节了

前言 Java8出来这么多年后&#xff0c;已经成为企业最成熟稳定的版本&#xff0c;相信绝大部分公司用的还是这个版本&#xff0c;但是一眨眼今年Java19都出来了&#xff0c;相信很多Java工程师忙于学习工作对新特性没什么了解&#xff0c;有的话也仅限于某一块。 本篇就是博主对…

基于N32G45的OLED驱动

基于N32G45的OLED驱动 基于N32G45硬件SPI驱动OLED屏幕1.OLED简介 OLED&#xff0c;即有机发光二极管&#xff08; Organic Light Emitting Diode&#xff09;。 OLED 由于同时具备自发光&#xff0c;不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用…

RPC模型

这里写目录标题1. 简介2. RPC有理函数模型3. 优秀的RPC相关知识博文3.1 RPC和RPB文件相关信息3.2 Matlab实现RPC正算反算3.3 使用Gdal进行批量的影像RPC正射校正3.4 &#xff08;Python&#xff09;卫星RPC有理多项式模型读取与正反投影坐标计算原理与实现3.5 高分影像批处理第…

感知算法工程师面试===目标检测===YOLO V4(改)

感觉V3 到V4&#xff0c;YOLO的整体架构并没有重大的改进&#xff0c;只是增加了很多的trick 先展示一下V4的整体网络结构 ↑\uparrow↑这个是对比V3的 如图可见&#xff0c;V4的结构依然是主干网络金字塔头部检测器&#xff0c;所有的改进都是为了更好更快的检测目标。 ↑\…

02-SpringBoot基础

一、回顾 二、知识目标 SpringBoot概述【了解】 SpringBoot快速入门【掌握】 SpringBoot启动原理【重点】 SpringBoot配置文件【掌握】 SpringBoot属性注入【掌握】 三、为什么使用SpringBoot&#xff1f; -SSM开发有哪些痛点&#xff1f; 1、在早期我们都是使用的是SSM来…

web前端期末大作业:美食网站设计与实现——HTML+CSS+JavaScript休闲美食餐饮公司网站静态模板(6个页面)

&#x1f468;‍&#x1f393;静态网站的编写主要是用HTML DIVCSS JS等来完成页面的排版设计&#x1f469;‍&#x1f393;,常用的网页设计软件有Dreamweaver、EditPlus、HBuilderX、VScode 、Webstorm、Animate等等&#xff0c;用的最多的还是DW&#xff0c;当然不同软件写出的…

POI在指定excel插入行java

我想在第三行&#xff0c;插入数据库的数据&#xff0c;这里假如数据库有10条&#xff0c;并且继承第二行的格式 数据库数据 {"clark",25}&#xff0c;我写个json对象&#xff0c;10条这个 造数据代码 JSONArray jsonArray new JSONArray();for (int i 0; i <…

Mac 安装mysql8.0

1. 确认下载的版本 并下载dmg文件 官网下载dmg安装文件 &#xff0c;查看自己电脑用的是什么芯片 选择对应版本的安装包&#xff0c;终端命令&#xff1a; uname -a 参考&#xff1a;http://www.yaotu.net/biancheng/13817.html 系统偏好设置里是 英特尔的i7处理器 并且查询…

可观测性-Metrics-Tomcat连接数、线程数理解以及压测记录

文章目录背景原理压测5个并发压测10个并发压测60个并发压测61个并发压测背景 为了搞懂Tomat的连接线程模型&#xff0c;搞清楚每个配置参数的作用&#xff0c;实际压测看一下是否与预期一致。 Tomcat配置如下&#xff1a; server:# tomcat配置tomcat:# 允许最大连接数,默认8…

磁盘和文件系统管理(一)

检测并确认新硬盘 fdisk命令 查看或管理磁盘分区 fdisk -l [磁盘设备] 或 fdisk [磁盘设备] 交互模式中的常用指令 m、p、n、d、t、w、q d delete a partition * 删除分区 g create a new empty GPT partition table 创建一个新的空的GPT分区表(可以对大于2T磁盘进行分区) l…

Java - Object#finalize在JDK9中被标记废弃了!

Java - Object#finalize在JDK9中被标记废弃了&#xff01; 时间&#xff1a;2022年12月6日01:34:10 目录&#xff1a; ① 为什么要废弃&#xff1f; ② 废弃后&#xff0c;使用什么方式主动监测对象是否被回收&#xff1f; 一、为什么要废弃&#xff1f; ⚡注意&#xff1a;废…

ChatGPT成精了!

最近几天&#xff0c;朋友圈、公众号都被 ChatGPT 刷屏了。 更有不少标题党吹嘘 “谷歌要完&#xff0c;百度也危了”。 那么它到底有没有网上吹的这么神奇呢&#xff1f; 我亲测了一把&#xff0c;感觉确实非常惊艳&#xff01; 例如&#xff1a; 看着还不错&#xff0c;每…

20221206英语学习

今日新词&#xff1a; outwards adv.向外, 朝外 outrage n.义愤&#xff0c;愤慨&#xff1b;暴行&#xff0c;骇人听闻的事件 drown v.淹没, 溺死, 浸透, 浸泡 visit n.访问, 参观, 看望, 游览 setting n.环境, 背景, &#xff08;戏剧、小说等的&#xff09;情节背景&am…

面试题: Hive-SQL查询连续活跃登录用户思路详解

文章目录创造数据登录日志去重一、思路一1.1、分组排序1.2、日期减去计数值得到结果, 用户连续登陆情况下&#xff0c;每次相减的结果都相同1.3、根据 user_id 和 dis 分组&#xff0c;得到用户的 开始、结束时间、连续登录天数1.4、连续登录超过两天用户二、思路二&#xff1a…

【Rust日报】2022-12-05 探索 docker 的 WASM 技术预览

探索 docker 的 WASM 技术预览docker于近日发布了支持 WASM 容器的预览版本,本文带你体验使用 Rust 编写代码,并且编译成 WASM 最终运行于 docker 的过程.原文链接: https://medium.com/shyamsundarb/exploring-docker-hubs-wasm-technical-preview-76de28c3b1b4使用 Rust 破解…

Matlab学习——变量与档案存取

一、变量 1. char和string MATLAB里面的字符和字符串都是用单引号括起来的。 % 示例&#xff1a;aI like China; n0; for n1:1:size(a,2)b(size(a,2)-n1)a(n); end disp(a); disp(b);% 输出&#xff1a;>> work I like China anihC ekil I >> % 示例&#xff…

Dockerfile的常用指令和构建案例

一、Dockerfile操作常用的指令 (1) FROM 镜像 指定新镜像所基于的基础镜像&#xff0c;第一条指令必须为FROM指令&#xff0c;每创建一个镜像就需要一条FROM指令 (2) MAINTAINER 名字 说明新镜像的维护人信息 (3) RUN命令 在所基于的镜像上执行命令&#xff0c;并提交到新的…