错误博客( cuowu.com )发布于 2019-06-10 17:36:44

搜索引擎文本转换

搜索引擎文本转换教程。本小节内容包括:解析器、停用词去除、词干提取、超链接的抽取和分析、信息抽取和分类器。

解析器

解析组件负责处理文档中的文本词素(tokens)序列,以识别文档中的结构化元素,如标题、图表、超链接和页首文字等等。词素切分(tokenizing)是该项处理中的第一个重要步骤。有时候,词素和词是等同的。文档和查询中的文本必须以同样的方式转换为词素,这样它们之间可以相互比较。对于一个词素会得到多种结果,这会潜在地影响到检索,因此词素切分是一项很有意义的任务。例如,词素的简单定义是由空格分开的字母与数字构成的字符串。然而,这并没有告诉我们如何处理那些特殊的字符,如大写字母、连接符和单撇号。“apple”和“Apple”是一样的吗?“on-line”是一个词还是两个词?“Oonnor”中的单撇号可以看作和所有格是等价的吗?在有些语言中,词素切分的问题更加有趣,如中文,中文里没有像英文那样明显的词之间的分隔符。

文档结构通常由HTML、XML等标记语言来指定。HTML是用来指定网页结构的缺省标记语言。XML相对来说更加灵活,是许多实际应用系统中使用的数据交换格式。文档解析器使用标记语言中的句法(syntax)知识来识别文档的结构。

HTML和XML都使用标签(tag)来定义文档的元素(element)。例如:<h2>Search</h2> 定义“Search”是HTML文档中的二级标题。词素切分时,标签和其他控制序列必须进行相应的处理。其他的文档类型,如电子邮件和讲稿,由指定的句法和方法来规范文档的结构,但大部分对这种文档的处理是在转换组件中删除或简化。

停用词去除

停用词去除组件具有简单的任务,从那些成为索引项的词素序列中删除常用词。最常用的词是一些典型的功能(function)词,这些词有助于构成句子的结构,但对于描述文本所涵盖话题的贡献很小,如:“the”、“of”、“to”和“for”。由于它们的用处太普遍,去除这些词可以相当大程度地减少索引的大小。排序取决于所采用的检索模型,但停用词去除对于搜索引擎的效果没有任何影响,甚至可能会有所改善。尽管停用词去除有这些潜在的优点,但很难确定停用词表(stopword list)中应该包含多少个停用词,一些研究中使用的停用词表包含几百个停用词。使用停用词表的问题是,用户如果提交查询“to be or not to be”或“down under”,搜索引擎不可能返回搜索结果。为了避免这样的问题,搜索引擎系统在处理文本的时候,可以使用一个很小的停用词表(可能仅含有一个停用词“the”),但在对于查询文本进行处理的时候,则用一个较大的停用词表。

词干提取

词干提取是另外一个单词级别的转换任务。词干提取组件(或词干提取器,stemmer)的任务是把同一个词干(stem)得到的派生词进行归类。例如,把“fish”、“fishes”、“fishing”可以归为一类。通过使用一个给定的词(如最短的词,上面的例子中是“fish”)来替换类中的每一个元素,可以进一步提高查询与文档中词之间匹配的可能性。事实上,词干提取对排序的效果通常只有很小的改善。类似于停用词去除,词干提取可以针对所有词进行、谨慎地针对少部分词进行或可以干脆不做。针对所有词进行词干提取可能会导致搜索问题。例如,用户提交查询“fishing”,系统检索回来的文档中包含的是“fish”的其他词形的词,这样的检索结果不是很恰当的。有些搜索引擎应用中,谨慎地对少部分词进行了词干提取,如只用“s”来识别复数形式,或者在处理文档中的文本时不进行词干提取。词干提取的工作集中在对查询文本进行适当的词的变形。

与英语相比,一些语言,如阿拉伯语,具有更复杂的词汇形态(morphology),词干提取必然显得格外重要。阿拉伯语中,高质量的词干提取组件对于搜索效果有着重大的影响。与之相比,其他的语言如中文,词形的变化很少,在这些语言上进行词干提取不会产生任何效果。

超链接的抽取和分析

在对文档进行解析的过程中,网页中的超链接和锚文本可以很容易地被识别并抽取出来。抽取意味着这些信息可以记录在文档数据库中,并且可以和文本内容分开索引。网络搜索引擎通过使用像PageRank(Brin&Page, 1998)这样的链接分析(link analysis)算法,广泛地利用超链接和锚文本这些信息。链接分析向搜索引擎提供一个页面的关注度,并且在一定程度上还向搜索引擎提供一个页面的权威度(authority,换句话说,该页面的重要度)。锚文本(anchor text)是网络链接上可以点击的文本,可以用来提高链接所指向网页的文本内容对用户的吸引力。对于有些类型的查询,这两个因素可以很大程度地改善网络搜索的效果。

信息抽取

信息抽取用于识别更加复杂的索引项,而不是一个单独的词。这些索引项可能简单地是一个黑体、加粗的词,或者是题目中的词,但通常需要更多的附加计算。抽取句法特征,如名词短语,需要某种形式的句法分析和词性标注(part-of-speech tagging)。该领域的研究专注于抽取具有指定语义内容的特征,例如,命名实体(named entity)识别器,能够可靠地识别如人名、公司名称、日期和地名等信息。

分类器

分类器组件为文档或文档中的部分内容识别出与类别相关的元数据,这覆盖了那些经常单独描述的功能。分类技术给文档分配事先定义好的类别标签,这些标签代表性地表达话题的类别,如“体育”、“政治”或“商业”。其他类型的分类技术的两个重要实例是,判别一个文档是否是垃圾文档,以及识别文档中的非内容部分,如广告。聚类技术用于在没有事先定义类别标签的基础上,将相关的文档聚集在一起。在排序或用户交互过程中,这些经过聚类的文档可以以多种方式使用。


2020年错误博客亲测项目系列

错误教程( cuowu.com )专注网推培训、SEO培训和网赚培训,微信/电话:13722793092

关注微信公众号:第一时间获得错误博客最新教程,让我们一起成长!

公众号二维码