Я использую 2 модуля для NLP, один - nltk, а другой - hunspell.Причина использования hunspell заключается в том, что у меня есть суффикс и аффикс-правила, которым необходимо следовать.
from nltk.stem.porter import *
stemmer = PorterStemmer()
stemmer.stem('ladies')
ladi
from nltk.stem import WordNetLemmatizer
lemmatizer = WordNetLemmatizer()
lemmatizer.lemmatize('ladies')
lady
Модуль nltk работает, как и ожидалось, как показано выше.Но модуль hunspell, похоже, поддерживает только лемматизацию, и нет способа вернуть стемовую форму.
import hunspell
hobj = hunspell.HunSpell('en_US.dic', 'en_US.aff')
hobj.stem('ladies')
Это возвращает « lady », а не «ladi», как можно было бы ожидать.Есть ли какой-нибудь способ вернуть основанную на слове форму слова, используя модуль hunspell?