我想对一组评论进行词形还原。据我所知,nltk无法对英语以外的语言进行词形还原。经过一番研究,我发现了pattern,它可以对多种语言的单词进行词形还原。我该如何使用pattern对文本进行词形还原呢?
这是我的测试语料库:
# -- coding: utf-8 --from pattern.es import lemma #unresolved referenceopinions = ["Este es un post de juguetes de aprendizaje \automático. En realidad, contiene no mucho \material interesante.","Las bases de datos de imágenes proporcionan \capacidades de almacenamiento.","La mayoría de las bases de datos de imágenes \imágenes seguras de forma permanente.","Los datos de imagen de tienda bases de datos.","Imagina almacenar bases de datos de bases de \datos de imágenes. Almacenar datos. Bases de datos \de imágenes de datos de la tienda."]print lemma(opiniones)
输出:
File "/Users/user/PycharmProjects/Pruebas/Lemmatizacion.py", line 18, in <module> print lemma(opiniones) File "/usr/local/lib/python2.7/site-packages/pattern/text/__init__.py", line 1591, in lemma if verb.lower() in self._inverse:AttributeError: 'list' object has no attribute 'lower'
我该如何对opinions
进行词形还原?
回答:
你可以使用pattern的parsetree函数,并将lemmata参数设置为True来对文本进行词形还原。
from pattern.es import parsetreeparsetree("buena", lemmata=True)# Returns [Sentence('buena/JJ/B-ADJP/O/bueno')]