搜索引擎主题模型优化(【】搜索引擎:核心技术详解(一))

优采云 发布时间: 2022-01-02 02:11

  搜索引擎主题模型优化(【】搜索引擎:核心技术详解(一))

  搜索引擎的基本原理

  总结:最近看了《这就是搜索引擎:核心技术详解》一书,做一个简单的记录。

  __________________________________________________

  内容

  【1】搜索引擎概述

  [2] 搜索引擎基础技术

  [3] 搜索引擎的平台基础

  [4] 搜索结果的改进和优化

  __________________________________________________

  【1】搜索引擎概述

  过去15年,互联网信息快速扩张,已经无法通过人工方式过滤获取有用信息。于是,搜索引擎应运而生。按其发展可分为四个时代。

  说到开发,不得不提一下搜索引擎的三个主要目标。无论发展到哪里,以下三个目标始终是一个很好的评价标准:

  

  [2] 搜索引擎基础技术

  这部分主要从以下四个部分介绍搜索引擎的基本技术,也是搜索引擎的重要环节。

  2.1 个网络爬虫

  网络爬虫是搜索引擎的下载系统。它的功能是获取内容。其方法是通过万维网中的链接不断爬取和采集各种网页。然而,互联网上的页面如此之多,每天都在不断地产生新的内容。根据爬取目标和范围,爬虫可以简单分为以下几类:

  抓取网页时,抓取工具应该如何确定下一个目标?主要策略如下:

  接下来简单介绍一下搜索引擎中的一个重要问题:暗网爬虫。所谓暗网,是指通过常规方法难以抓取的网页,互联网上存在大量此类网页。有些网页没有外部链接,有些主要内容存储在数据库中(如携程),这些记录没有链接。暗网挖掘是商业搜索引擎的一大研究重点,谷歌就是这样,百度的“阿拉丁”计划也来了。

  2.2 创建索引

  对于搜索引擎来说,搜索是最重要的核心技术之一。面对海量的网页内容,如何快速找到所有收录用户查询的网页?倒排索引在其中起到了关键作用。

  对于一个网页,我们把它看成一个文档,它的内容是由单词组成的。为了快速为用户的搜索词提供文档结果,我们必须建立一个word-document存储结构。倒排索引是实现word-document矩阵的一种特定的存储形式。通过倒排索引,您可以根据单词快速获取收录该单词的文档列表。倒排索引主要由词词典和倒排文件两部分组成。

  单词词典主要有两种存储方式:hash加链接和树结构。

  如何创建索引:

  (1)两次文档遍历

  在扫描文档集合的第一遍时,该方法不会立即开始索引,而是采集一些全局统计信息。例如,文档集合中收录的文档数为N,文档集合中收录的不同词的个数为M,每个词出现在多少个文档中的信息DF。 得到以上三类信息后,可以知道最终索引的大小,然后在内存中分配足够的空间来存放倒排索引的内容。在第二次扫描中,实际构建了每个词的倒排列表信息,即对于一个词,获取每个收录该词的文档的文档ID,以及该词在文档中出现的次数TF

  (2)排序方法

  排序方法对此进行了改进。这种方法在索引过程中总是在内存中分配固定大小的空间来存储字典信息和索引的中间结果。当分配的空间用完时,将中间结果写入磁盘,将中间结果在内存中占用的空间清空,作为下一个存储索引中间结果的存储区圆形的。这种方法只需要固定大小的内存,所以它可以索引任意大小的文档集合。

  (3)合并方法

  当分配的内存配额用完时,排序方法只是将中间结果写入磁盘,字典信息一直保存在内存中。随着处理的文档越来越多,字典中收录的字典项也越来越多。越来越多,所以占用的内存越来越多,导致后期中间结果可用的内存越来越少。合并方法对此进行了改进,即每次将内存中的数据写入磁盘时,将包括字典在内的所有中间结果信息写入磁盘,从而可以清空内存中的所有内容,并且后续索引可以使用所有配额内存。

  索引更新策略:

  2.3 内容检索

  内容检索模型是搜索引擎排名的理论基础,用于计算网页与查询的相关性。

  常用检索模型

  检索系统评价指标

  查询相关

  查询无关

  在搜索结果中

  A

  B

  不在搜索结果中

  C

  D

  2.4 链接分析

  搜索引擎在寻找能够满足用户请求的网页时,主要考虑两个因素:一是用户发送的查询与网页内容的内容相似度得分,即网页和网页内容的相关性。查询;另一个是通过链接分析方法计算出的分数,即网页的重要性。链接分析是一种通过网络的链接结构获取网页重要性的方法。

  有很多链接分析算法。从模型上看,主要分为两类:

  常用算法:

  [3] 搜索引擎的平台基础

  这部分主要讲搜索引擎的平台支持,主要是云存储和云计算模型。

  对于商业搜索引擎来说,需要存储大量的数据,而这些海量的海量数据需要进行处理。云存储和云计算是解决这个问题的方法。

  服务器上不能存在大量数据,必须是分布式存储。当数据更新时,这会导致多台服务器上的数据不一致,以及如何选择服务器的问题。

  先介绍一些基本原理:

  (1)CAP原理

  CAP是Consistency, Availability, Partition Tolerance的缩写,意思是一致性、可用性和分区容错性。

  对于一个数据系统来说,这三个原则不能兼得。云存储往往侧重于 CA,牺牲了一些一致性。

  (2)ACID 原理

  这是关系型数据库采用的原则。是Atomity、Consistency、Isolation、Durability的缩写,即原子性、一致性、事务独立性、持久性。

  (3)BASE 原理

  采用的大型多云存储系统,不同于ACID,牺牲了数据的强一致性来换取高可用。因为用户可能对数据的变化很敏感,无法提供服务。

  它的三个方面是:

  Google 的云存储和云计算架构

  云存储:

  云计算

  其他云存储系统

  [4] 搜索结果的改进和优化

  如前所述,搜索引擎追求的三个目标是更快、更全面、更准确。但是要实现这些目标并不是一件很容易的事,它需要很多环节来处理。这部分主要从以下几个方面谈,如何改善搜索引擎的搜索结果,提高搜索质量,提高搜索性能。

  4.1 作弊分析

  作弊方法

  反作弊的总体思路

  (1) 所谓信任传播模型,基本思想是:在海量的网络数据中,通过一定的技术手段或者人工和半人工手段,筛选出一些完全可信的页面,这绝对不是作弊页面(可以理解为白名单),算法以白名单中的这些页面为起点,为白名单中的页面节点分配更高的信任分数。其他页面是否作弊取决于它们是否是是否在白名单中 确定节点的链接关系 白名单中的节点通过链接关系向外传播信任分数 如果节点获得的信任分数高于某个阈值,则认为有没问题,但低于这个。门槛网页将被视为作弊网页。

  (2)不信任传播模型在框架上类似于信任传播模型。最大的不同是页面的初始子集不是可信页面节点,而是确认存在作弊的集合不可信的页面(可以理解为黑名单)。为黑名单中的页面节点分配一个不信任分数,并通过链接关系传播这种不信任关系。如果最后一个页面节点的不信任分数如果值为大于设置的阈值,将被视为作弊页面。

  (3)异常发现模型也是一个高度抽象的算法框架模型。它的基本假设是:作弊的网页必须具有与普通网页不同的特征。这个特征可能与内容有关,也可能与与链接关系有关。制定具体算法的过程往往是找到一组作弊网页,分析异常特征,然后利用这些异常特征来识别作弊网页。

  只要操纵搜索引擎搜索结果可以带来利润,那么作弊的动机就会一直存在,尤其是在网络营销在宣传中发挥越来越重要作用的时代。作弊与反作弊是一个相互抑制、相互促进的互动过程。 “一尺高一尺”的故事不断重复。上述内容主要是基于技术手段进行反作弊。事实上,目前单纯的技术手段并不能完全解决作弊问题。需要人工和技术手段相结合,才能达到更好的防作弊效果。技术方法可以分为比较通用的方法和比较特殊的方法。相对通用的方法对可能出现的新作弊方法有一定的预防能力,但由于其普遍性,针对性不强,对特殊作弊方法有一定的效果。不一定好。专门的反作弊方法往往事后进行,只有在作弊已经发生且严重的情况下,才能总结作弊的特征,采用事后过滤的方法。人工手段与技术手段高度互补。一旦出现新的作弊方法,它们就可以被发现,并且可以作为作弊进行时的预防措施。因此,从时间维度考虑对作弊手段的抑制,一般反作弊手段侧重预防,人工手段侧重发现,专用反作弊手段侧重事后处理,两者具有内在联系和互补关系。

  4.2 分析用户意图

  准确分析用户的搜索意图是当前搜索引擎研究的重点。

  用户意图大致可以分为

  搜索日志是挖掘用户意图的重要数据源

  用户在搜索时可能没有想到合适的搜索词,或者关键词输入错误。这个时候,他们需要帮助用户明确他们的搜索意图。

  常用的方法是:

  4.3 网页去重

  据统计,互联网上相当比例的网页大致相同或相同,高达29%。如果搜索返回大量相似页面,显然会降低搜索结果的质量。针对这种现象,非常有必要去除重复的网页。

  网页的重复数据删除一般在爬虫抓取网页之后、索引之前执行。去重算法要兼顾准确性和运行效率。

  典型的网页去重算法:

  几种典型的去重算法:

  4.4 缓存机制

  缓存机制可以加快用户响应速度,节省计算资源

  缓存系统的目标是最大化缓存命中率并保持缓存和索引的一致性

  缓存的对象主要是网页搜索结果和查询词对应的倒排列表

  缓存消除策略主要包括动态策略和混合策略

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线