搜索引擎的检索模型-查询与文档的相关度计算

2024-01-05 21:32

本文主要是介绍搜索引擎的检索模型-查询与文档的相关度计算,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

               


1. 检索模型概述

      搜索结果排序时搜索引擎最核心的部分,很大程度度上决定了搜索引擎的质量好坏及用户满意度。实际搜索结果排序的因子有很多,但最主要的两个因素是用户查询和网页内容的相关度,以及网页链接情况。这里我们主要总结网页内容和用户查询相关的内容。

       判断网页内容是否与用户査询相关,这依赖于搜索引擎所来用的检索模型。检索模型是搜索引擎的理论基础,为量化相关性提供了一种数学模型,是对查询词和文档之间进行相似度计算的框架和方法。其本质就是相关度建模。如图所示,检索模型所在搜索引擎系统架构位置:

   

    

    当然检索模型理论研究存在理想化的隐含假设,及即假设用户需求已经通过查询非常清晰明确地表达出来了,所以检索模型的任务不涉及到对用户需求建模。但实际上这个和实际相差较远,即使相同的查询词,不同用户的需求目的可能差异很大,而检索模型对此无能为力。

   

2. 检索模型分类

   大学学习的《数学模型》(姜启源第三版),现在还有点印象。数学模型将现实问题归结为相应的数学问题,并在此基础上利用数学的概念、方法和理论进行深入的分析和研究,从而从定性或定量的角度来刻画实际问题,并为解决现实问题提供精确的数据或可靠的指导。
    所以我们从所使用的数学方法上分:
1)基于集合论的IR模型(Set Theoretic models)
     布尔模型
     基于模糊集的模型
     扩展布尔模型
2)基 于代数论的IR模型(Algebraic models)
     向量空间模型
     潜性语义索引模型
     神经网络模型
3)基 于概率统计的IR模型(Probabilistic models)
     回归模型
     概率模型
     语言模型建模IR模型
     推理网络模型
     信任度网络模型

此外还有基于统计的机器学习排序算法。
这里主要介绍 布尔模型,向量空间模型,概率模型,语言模型,机器学习排序算法

3. 布尔模型

布尔模型:

        是最简单的信息检索模型,是基于集合理论和布尔代数的一种简单的检索模型。

基本思想:

    文档和用户查询由其包含的单词集合来表示,两者的相似性则通过布尔代数运算来进行判定;

相似度计算:

         查询布尔表达式和所有文档的布尔表达式进行匹配,匹配成功的文档的得分为1,否则为0。 

         如查询词:

                 苹果 and (iphone OR Ipad2)

         文档集合:

         D1:IPhone 5于9月13号问世。

         D2: 苹果公司于9月13号发布新一代IPhone。

         D3:Ipad2将于3月11日在美上市。

         D4:Iphone和ipad2的外观设计精美时尚

         D5:80后90后都喜欢iphone,但不喜欢吃苹果。

         那么单词与文档关系如下图:

    

这篇关于搜索引擎的检索模型-查询与文档的相关度计算的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/574217

相关文章

MySQL高级查询之JOIN、子查询、窗口函数实际案例

《MySQL高级查询之JOIN、子查询、窗口函数实际案例》:本文主要介绍MySQL高级查询之JOIN、子查询、窗口函数实际案例的相关资料,JOIN用于多表关联查询,子查询用于数据筛选和过滤,窗口函... 目录前言1. JOIN(连接查询)1.1 内连接(INNER JOIN)1.2 左连接(LEFT JOI

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

MySQL中的交叉连接、自然连接和内连接查询详解

《MySQL中的交叉连接、自然连接和内连接查询详解》:本文主要介绍MySQL中的交叉连接、自然连接和内连接查询,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、引入二、交php叉连接(cross join)三、自然连接(naturalandroid join)四

mysql的基础语句和外键查询及其语句详解(推荐)

《mysql的基础语句和外键查询及其语句详解(推荐)》:本文主要介绍mysql的基础语句和外键查询及其语句详解(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录一、mysql 基础语句1. 数据库操作 创建数据库2. 表操作 创建表3. CRUD 操作二、外键

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Mybatis 传参与排序模糊查询功能实现

《Mybatis传参与排序模糊查询功能实现》:本文主要介绍Mybatis传参与排序模糊查询功能实现,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、#{ }和${ }传参的区别二、排序三、like查询四、数据库连接池五、mysql 开发企业规范一、#{ }和${ }传参的

Java利用docx4j+Freemarker生成word文档

《Java利用docx4j+Freemarker生成word文档》这篇文章主要为大家详细介绍了Java如何利用docx4j+Freemarker生成word文档,文中的示例代码讲解详细,感兴趣的小伙伴... 目录技术方案maven依赖创建模板文件实现代码技术方案Java 1.8 + docx4j + Fr

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI