【搜索推荐】〇、搜索系统与推荐系统常识

news/2024/5/20 0:31:36 标签: 搜索引擎, 推荐算法

0、搜索系统

我们正处在信息过载的时代,Tom Landauer认为人的大脑只能存储约200MB信息,一生只能接触约6G信息。

因此,随着大数据技术的出现和发展、深度学习和网络计算能力的提高,提高了我们对信息的处理能力,但是并没有缓解信息过载的现状,而搜索系统有效的过滤了信息,成为了我们获取信息的重要手段之一。

1、信息检索

狭义上讲,信息检索就是信息搜索;广义上讲,信息检索包括搜索引擎、问答系统、信息抽取、信息过滤和信息推荐等。

搜索引擎包括四个接口:搜索器、索引器、检索器和用户接口。

搜索器:在互联网中漫游,负责发现和搜集信息;
索引器:理解搜索器搜索的信息,抽取索引项,输出用于表示文档和生成文档库的索引表;
检索器:根据用户的查询在索引库中快速检索出文档,进行文档与查询的相关性评价,对输出结果进行排序,实现某种用户相关性反馈机制;
用户接口:输入用户查询、显示查询结果、提供用户相关性反馈机制。

2、搜索引擎的分类

  • 全文搜索引擎:计算机通过扫描文章中的每个词,对每个词建立索引,记录词汇在文章中出现的次数和位置信息。当用户查询时,计算机按照事先建立好的索引进行查找,并将结果反馈给用户。【结构化数据:一般通过关系型数据库的方式进行存储和搜索;非结构化数据:顺序扫描和全文检索】谷歌和百度都是典型的全文搜索引擎
  • 搜索引擎:一种可以调用其他搜索引擎搜索引擎,它能对多个独立搜索引擎进行整合、调用并优化结果。【元搜索引擎常用的排序方式:相关度排序、时间排序、搜索引擎排序等】
  • 独立搜索引擎:主要有网络爬虫、索引、链接分析和排序等部分组成。
  • 垂直搜索引擎:针对某个行业的专业搜索引擎
  • 目录搜索引擎:网站常用的搜索方式,类似于书本章节目录。

3、推荐系统

用户在意图明确的情况下,能够通过关键词进行搜索;当用户不了解自己想要什么的时候,就需要推荐系统解决这类问题。

推荐系统有两个显著的特征:主动性和个性化。

常见的推荐系统的推荐形式:个性化推荐、相关推荐和热门推荐。

4、推荐系统的分类

  • 基于内容的推荐:利用用户已经选择的对象,从候选集中找出与用户已选对象相似的对象作为推荐结果。【主要部分是用户特征的描述和推荐对象内容特征的提取】
  • 基于协同过滤的推荐:【基本思想是聚类主要分为基于用户的协同过滤、基于项目的协同过滤和基于模型的协同过滤】
    • 基于用户的协同过滤:首先找到与目标用户兴趣相似的用户集合,然后找到这个集合中用户喜欢并且没有接触过的物品推荐给目标用户;【将目标用户归为已有用户类】
    • 基于项目的协同过滤:基于所有用户对推荐对象的评价的推荐策略;【根据用户对推荐对象的评价,发现对象间的相似度,根据用户的历史偏好将类似的商品推荐给用户】
    • 基于模型的协同过滤:基于样本用户的喜好信息训练一个推荐模型,然后根据实时的用户喜好信息进行推荐。【常用的方法有机器学习方法、统计模型、贝叶斯模型和线性回归模型等】
  • 混合推荐方法:各个推荐方法都会存在优缺点,因此,在实际应用中,我们采用组合方式。使用最多的混合方法就是将基于内容的推荐和协同过滤的推荐组合。【推荐结果混合:将多种推荐方法产生的结果通过某种方式进行混合计算而产生最终的推荐结果(常用投票机制判断);推荐算法的混合:以某一种推荐策略为框架,混合另外的推荐策略】

5、搜索与推荐的区别

搜索和推荐都是解决信息过载的有效手段,能够帮助用户快速准确地定位到想要的信息。

搜索系统推荐系统
用户意图是否明确明确不明确
个性化个性化较低个性化较高
评价标准能否帮助用户快速找到准确的结果能否推荐给用户所喜爱的内容
评价指标归一化折损累计增益(nDCG)、精确度-召回率(Precision-Recall)MAP或CTR、RMSE或MAE

6、马太效应和长尾理论

马太效应:热门物品会受到更多的关注,冷门物品会越被遗忘的现象;
长尾理论:冷门物品的种类远远高于热门物品的种类。


http://www.niftyadmin.cn/n/5384526.html

相关文章

如何在 Angular 中为响应式表单创建自定义验证器

简介 Angular 的 angular/forms 包提供了一个 Validators 类,支持诸如 required、minLength、maxLength 和 pattern 等有用的内置验证器。然而,可能存在需要更复杂或自定义规则进行验证的表单字段。在这种情况下,您可以使用自定义验证器。 …

Vue模版语法之属性绑定v-bind

双大括号不能在 HTML 属性中使用。想要响应式地绑定一个属性&#xff0c;应该使用 v-bind 指令 1. 使用v-bind绑定属性 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>新建页面</title><sc…

activeMq将mqtt发布订阅转成消息队列

1、activemq.xml置文件新增如下内容 2、mqttx测试发送&#xff1a; 主题&#xff08;配置的模糊匹配&#xff0c;为了并发&#xff09;&#xff1a;VirtualTopic/device/sendData/12312 3、mqtt接收的结果 4、程序处理 package comimport cn.hutool.core.date.DateUtil; imp…

Learn HTML in 1 hour

website address https://www.youtube.com/watch?vHD13eq_Pmp8 excerpt All right, what’s going on? everybody. It’s your Bro, hope you’re doing well, and in this video I’m going to help you started with html; so sit back, relax and enjoy the show. If y…

Bert-VITS-2 效果挺好的声音克隆工具

持中日英三语训练和推理。内置干声分离&#xff0c;切割和标注工具&#xff0c;开箱即用。请点下载量右边的符号查看镜像所对应的具体版本号。 教程地址&#xff1a; sjj​​​​​​​CodeWithGPU | 能复现才是好算法CodeWithGPU | GitHub AI算法复现社区&#xff0c;能复现…

什么是 Wake-on-LAN?如何使用 Splashtop 远程喊醒电脑

在当今数字互联的世界里&#xff0c;远程访问电脑已不仅仅是一种便利&#xff0c;而是许多人的需要。无论是远程工作、IT 支持&#xff0c;还是管理整个网络中的计算机群&#xff0c;我们都必须掌握正确的工具和技术。 其中一项在远程访问中发挥关键作用的技术是 Wake-on-LAN …

webpack打包速度优化思维导图

webpack打包速度优化思维导图 前言附件 前言 去年的时候公司一个项目体积过大&#xff0c;我是m1芯片的macpro&#xff0c;光启动就要1分钟&#xff0c;配置差点都电脑&#xff0c;启动就要3分钟&#xff0c;自然打包速度也会慢很多&#xff0c;我们是gitlab设置成了自动打包的…

语音处理——Pyannote使用学习

文章目录 引言正文Pyannote的介绍Pyannote安装Pyannote使用问题总结SSLError 总结 引言 在进行AD检测的模型中&#xff0c;原来使用的是whisper进行的语音转换&#xff0c;但是whisper只能实现ASR任务&#xff0c;并不能检测出不同说话者&#xff0c;所以需要学习一下SpeechBra…