自然语言处理包括文本朗读、语音识别、分词、词性标注、句法分析、文本分类、自动摘要等技术范畴。在中文搜索领域, 自然语言处理可以帮助搜索引擎深入认知中文语言表达的含义和意图。
自然语言处理作为搜索引擎的技术之本、核心技术之一,几乎搜索引擎的每个技术环节都需要自然语言处理技术,也没有其他领域比搜索引擎更依赖于自然语言处理技术。所以学习SEO务必要学习搜索引擎的自然语言处理原理。
英文分词
分词是自然语言处理过程中对文本处理的最基本工作,是自然语言理解的基础。从语言学的角度讲,分词技术是将语句拆分成语句的习的各个组成的单元;从搜索引擎角度讲,分词技术是将长文本拆分为可理解的短文本信息,目的是更好地进行文本分析。在中文搜索引擎领域,分词主要包含英文分词和中文分词。
英文分词作为中文搜索领域中非常重要的一部分,它的分词效果也会对结果产生非常重要的影响。然而英文分词相对中文分词算法比较简单,首先只需要通过指定分隔符进行英文单词切分;其次是对切分好的单词进行单词还原(lemmatization),例如,将“got”还原为“get”;最后,可以选择是否移除用词即可。
(1)单词还原。
单词还原涉及两个问题,一个是词形还原:把一个单词还原为单词的一般形式;另外一个是词干提取,并不是指利用词形还原词典对英文单词进行词形还原。
通过波特词干算法( Porter Stemmer)进行词干提取,词干提取是还原词语的修饰形式,得到单词最一般的写法形式,并不完全是词形还原,而是将词转换为词根,例如“fishing”“fished”“fish”和“fisher”为同一个词根“fish”通过转变而来,因此只需要将前四个单词还原为“fish”即可。
波特词干算法可以利用词库实现,也可以利用规则实现。在工程应用中,一般采用基于规则实现,首先处理单词复数形式及“ed”和“ing”结束的单词,例如,将“meetings”转换为“meet”;
其次是如果单词中包含元音并且以“y”结尾,将“y”改为“i”;然后将双后缀的单词映射为单后缀;最后再处理类似“-ic-”“-full”“-ness”“-ant"‘-ence”等后缀;波特词干算法中提取到的词干并不一定正确,但可以保证用户的输入和后台的处理是一致的。
(2)停用词处理。
在搜索引擎的搜索及数据分析过程中,为节省存储空间和提高效率,对被处理的自然语言数据(或文本)执行分析之前,会自动过滤掉一些字符或单词,这些词又称为停用词。
原因在于停用词对于搜索引擎无法产生具体价值,对搜索结果也无法做到区分,与句子中的关键词恰好相反。
停用词并非自动生成,而是手动创建。这些停用词包括“is”“on”“at”等词汇,主要包括广泛无意词和无明确限定词。广泛无意词是表示被广泛使用的词汇,但是在实际搜索中不会产生实际意义的词。
从词性角度讲,停用词是一些无明确限定词,涵盖语气助词、副词、介词、连接词等词语,这些词语对于句子的重要性需要在具体的语义环境中才能足够体现。
过滤掉停用词,有助于搜索引擎减小搜索范围,减少搜索索引量和文档量,对于提升搜索整体性能,有着积极效果和作用。
对于英文分词,除按照空格正常分词的方法之外,还可以采用N-Gram分词方法。N-Gram是一种基于前后词语关系的语言模型,该模型表示当前词语仅与前面第N-l个词语相关,而与其他词汇均不相关。
中文分词
不言而喻,中文中最小白是字,但具有语义的最小单位是词,这是区分中文分词技术和英文分词技术中最重要的理论基础,也是导致切分方式不同的原因。
中文分词技术是一项关键的技术,尽管目前的中文分词技术已经比较成熟,但是它依然在语义分析方向上有很大的发展空间,需要尽可能以自然语言的理解方式去分词。
中文分词概述
文章评论 本文章有个评论