赞
踩
词干提取和词形还原是英语语料预处理中的重要环节。虽然他们的目的一致,但是两者还是存在一些差异。
本文将介绍他们的概念、异同、实现算法等。
词干提取是英文语料预处理的一个步骤(中文并不需要),而语料预处理是NLP的第一步,下面这张图将让大家知道词干提取在这个知识结构中的位置。
词干提取:
词干提取(百度百科)
在词法学和信息检索里,词干提取是去除词缀得到词根的过程(得到单词最一般的写法)。对于一个词的形态词根,词干并不需要完全相同;相关的词映射到同一个词干一般能得到满意的结果,即使该词干不是词的有效根。从1968年开始在计算机科学领域出现了词干提取的相应算法。很多搜索引擎在处理词汇时,对同义词采用相同的词干作为查询拓展,该过程叫做归并。词干提取项目一般涉及到词干提取算法或词干提取器。
词干提取(维基百科)
在语言形态学和信息检索中,词干化是将变形(或有时衍生)词语减少到词干,词根或词形的过程 – 通常是书面形式。茎不必与该词的形态根相同; 通常,相关的单词映射到同一个词干就足够了,即使这个词干本身并不是一个有效的词根。自20世纪60年代以来,已经在计算机科学中研究了词干化的算法。许多搜索引擎将具有相同词干的单词视为同义词作为一种查询扩展,一个叫做混淆的过程。
词形还原:
词形还原(维基百科)
语言学中的Lemmatisation(或 词形还原)是将单词的变形形式组合在一起的过程,因此它们可以作为单个项目进行分析,由单词的引理或字典形式标识。
在计算语言学中,lemmatisation是基于其预期含义确定单词的引理的算法过程。与词干化不同,词汇化取决于正确识别句子中的预期词性和词语的含义,以及围绕该句子的较大语境,例如邻近句子甚至整个文档。因此,开发有效的lemmatisation算法是一个开放的研究领域。
词干提取是去除单词的前后缀得到词根的过程。
大家常见的前后缀有:名词的复数,单词的不同时态变形等等。
词形还原是基于词典,将单词的复杂形态转变成最基础的形态。
词形还原不是简单的将前后缀去掉,而是会根据词典将单词进行转换。比如drove会转换为drive。
为什么要做词干提取和词形还原?
比如当我搜索 play baskball 时,Bob is playing basketball 也符合我的要求,但是 play 和 playing对于计算机来说是两种完全不同的东西,所以我们需要将playing转换成play。
词干提取和词形还原的目的就是将长相不同,但是含义相同的词统一起来,这样方便后续的处理和分析。
1. Porter
这种词干算法比较旧。它是从20世纪80年代开始的,其主要关注点是删除单词的共同结尾,以便将它们解析为通用形式。它不是太复杂,它的开发停止了。
通常情况下,它是一个很好的起始基本词干分析器,但并不建议将它用于复杂的应用。相反,它在研究中作为一种很好的基本词干算法,可以保证重复性。与其他算法相比,它也是一种非常温和的词干算法。
2. Snowball (推荐)
种算法也称为 Porter2 词干算法。它几乎被普遍认为比 Porter 更好,甚至发明 Porter 的开发者也这么认为。Snowball 在 Porter 的基础上加了很多优化。Snowball 与 Porter 相比差异约为5%。
3. Lancaster
Lancaster 的算法比较激进,有时候会处理成一些比较奇怪的单词。如果在 NLTK 中使用词干分析器,则可以非常轻松地将自己的自定义规则添加到此算法中。
词形还原是基于词典的,每种语言都需要经过语义分析、词性标注来建立完整的词库,目前英文词库是很完善的。
Python 中的 NLTK 库包含英语单词的词汇数据库。这些单词基于它们的语义关系链接在一起。链接取决于单词的含义。特别是,我们可以利用 WordNet。
import nltk
from nltk.stem import WordNetLemmatizer
lemmatizer = WordNetLemmatizer()
print(lemmatizer.lemmatize("blogs"))
#Returns blog
import nltk
from nltk.stem import WordNetLemmatizer
lemmatizer = WordNetLemmatizer()
print(lemmatizer.lemmatize("blogs"))
#Returns blog
词干提取和词形还原都是将长相不同,但是含义相同的词统一起来,这样方便后续的处理和分析。
他们是英文语料预处理中的一个环节。
词干提取和词形还原的 4 个相似点:
词干提取和词形还原的 5 个不同点:
3种词干提取的主流算法:
英文的词形还原可以直接使用 Python 中的 NLTK 库,它包含英语单词的词汇数据库。
词干提取(百度百科)
词干提取(维基百科)
词形还原(维基百科)
词干提取 – Stemming | 词形还原 – Lemmatisation (easyai)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。