信息组织与检索| 中英文自然语言处理 词性还原与词干提取的区别 jieba分词

目录

英文自然语言处理

词干处理器(Porter/Snowball/Lancaster)结果对比

词性还原与词干提取的区别

词性还原与词干提取的定义

词性还原与词干提取的相同点

词性还原与词干提取的不同点

中文自然语言处理

三种分词选项(全模式/精确模式/搜索引擎模式)示例对比

三种分词选项(全模式/精确模式/搜索引擎模式)的应用场景


英文自然语言处理

词干处理器(Porter/Snowball/Lancaster)结果对比

英文自然语言处理中使用了三个词干处理器,对比三种处理器的结果差别,如下表

词干提取算法

Porter

Snowball

Lancaster

例子1

  • argue
  • argued
  • argues
  • arguing
  • argus

结果

  • argu
  • argu
  • argu
  • argu
  • argu

结果

  • argu
  • argu
  • argu
  • argu
  • arg

结果

  • argu
  • argu
  • argu
  • argu
  • argus

例子2:

  • caring
  • was
  • this

结果

  • care
  • wa
  • thi

结果

  • care
  • was
  • this

结果

  • car
  • was
  • thi

分析

最原始的算法,准确率较低。

被认为是Porter的改进算法,与Porter相差约5%

算法较为激进

特点

速度慢,但精确度不算高

速度快,精确度高;

速度最快,但精确度低

处理过程

将词干提取划分为一系列线性步骤,Porter算法提取最为宽松

迭代算法,通过循环步骤删除词缀,算法提取最为严格

结论

Snowball Stemmer综合了速度和精确性两个指标,成为了应用较为广泛的算法。值得注意的是,(1)如果数据集中包含带有词干的停用词,则应首先进行词干提取,然后再移除停用词。(2)否则,则应该先移除“停用词”,然后再进行“词干提取”。

词性还原与词干提取的区别

词性还原与词干提取的定义

词干提取是根据语言形态中的规律进行处理,去除屈折或派生形态的词缀,将一个词的不同形式统一为一种具有代表性的标准形式(词干)。

词形还原是基于词典,将单词的复杂形态转变成最基础的形态。词形还原不是简单地将前后缀去掉,而是会根据词典将单词进行转换。

词性还原与词干提取的相同点

  • 目标一致。词干提取和词形还原的目标为将词简化或归并为词干或原形的基础形式,都是一种对词的不同形态的统一归并的过程。
  • 结果部分交叉。词干提取和词形还原不是互斥关系,其结果是有部分交叉的。一部分词利用这两类方法都能达到相同的词形转换效果。

词性还原与词干提取的不同点

  • 原理上,词干提取主要是采用“缩减”的方法,将词转换为词干,而词形还原主要采用“转换”的方法,将词转变为其原形。
  • 复杂性上,词干提取方法相对简单,词形还原则需要返回词的原形,需要对词形进行分析,不仅要进行词缀的转化,还要进行词性识别,区分相同词形但原形不同的词的差别。词性标注的准确率也直接影响词形还原的准确率,因此,词形还原更为复杂。
  • 结果上,词干提取和词形还原也有部分区别。词干提取的结果可能并不是完整的、具有意义的词,而只是词的一部分。而经词形还原处理后获得的结果是具有一定意义的、完整的词,一般为词典中的有效词。
  • 应用领域上,虽然二者均被应用于信息检索和文本处理中,但侧重不同。词干提取更多被应用于信息检索领域,用于扩展检索,粒度较粗;词形还原更主要被应用于文本挖掘、自然语言处理,用于更细粒度、更为准确的文本分析和表达。

参考来源:

https://stackoverflow.com/questions/10554052/what-are-the-major-differences-and-benefits-of-porter-and-lancaster-stemming-alg

https://easyai.tech/ai-definition/stemming-lemmatisation/

https://vprusso.github.io/blog/2018/natural-language-processing-python-5/

https://medium.com/@tusharsri/nlp-a-quick-guide-to-stemming-60f1ca5db49e

中文自然语言处理

三种分词选项(全模式/精确模式/搜索引擎模式)示例对比

原文

分词是文本处理不可或缺的一步

全模式

分词/是/文本/文本处理/本处/处理/不可/不可或缺/或缺/的/一步/

精确模式

分词/是/文本处理/不可或缺/的/一步/

搜索引擎模式

分词/是/文本/本处/处理/文本处理/不可/或缺/不可或缺/的/一步/

三种分词选项(全模式/精确模式/搜索引擎模式)的应用场景

不用的使用场景,对分词提出了不同的要求,不需要片面地追求高准确率。在搜索的索引阶段,往往会召回所有可能切分结果,对切分准确率要求不高,但对分词速度有很高的要求,对于中型搜索系统(e.g.每秒处理的文档字节数达到50MB),如果分词系统太慢的话,需要开大量线程才能处理这些文档。在问答系统中,需要对文本实现较为深入的理解,对分词和实体识别的准确性要求很高。

  • 精确模式,精确模式分词速度为400KB/秒,试图将句子最精确地切开,适合问答系统或文本分析;对于较小的数据集,一般用精确模式即可;
  • 搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎;“搜索引擎模式”下,Jieba将会把分词的所有可能都打印出来,在某些模糊匹配场景下,“搜索引擎模式”较“精确模式”更为适合。
  • 全模式,把句子中所有的可以成词的词语都扫描出来。不同于“搜索引擎分词模式”只提取重要的关键词,“全模式”对于同样的模型训练,正确率会有1%-2%提升;分词速度非常快,能达到1.5MB/秒,但是不能解决歧义。因此,“全模式”可应用于搜索的索引阶段;“全模式”下,Jieba将会把分词的所有可能都打印出来,在某些模糊匹配场景下,“全模式”较“精确模式”更为适合。

参考来源:

https://pypi.org/project/jieba/

https://www.ibm.com/developerworks/cn/cognitive/library/cc-1606-spark-seniment-analysis/index.html

https://www.pythonf.cn/read/87215

猜你喜欢

转载自blog.csdn.net/vv_eve/article/details/107058031