вопрос с лемматизатором Wordnet - PullRequest
0 голосов
/ 08 июня 2010

Я попробовал лемматизатор wordnet, но обнаружил, что некоторые распространенные слова, такие как «изучение» или «ожидание», не обрабатываются должным образом.

Я что-то упустил?

Ответы [ 2 ]

2 голосов
/ 08 июня 2010

Как вы можете видеть в онлайн-сети Wordnet, изучение и ожидание также являются существительными (также как герундами глаголов), и поэтому неудивительно, что они могут получить лемматизацию как сами .

Если это неудовлетворительно, вам нужно найти более «агрессивный» лемматизатор (тот, который намеренно игнорирует совершенно правильные, но «менее вероятные» интерпретации слова), или, если вы можете сначала выполнить тегирование частей речи на основе целого предложения, используйте лемматизатор, который может быть сказано, например, данный экземпляр studying является глаголом, а не существительным.

1 голос
/ 27 июня 2013

По умолчанию WordNetLemmatizer в NLTK предполагает, что слово является NOUN.см. http://nltk.org/_modules/nltk/stem/wordnet.html

Чтобы правильно лемматизировать глаголы, необходимо указать pos (часть речи)

>>> from nltk.stem.wordnet import WordNetLemmatizer
>>> wnl = WordNetLemmatizer()
>>> wnl.lemmatize('studying','v')
'study'
>>> wnl.lemmatize('studying','n')
'studying'
>>> wnl.lemmatize('studying')
'studying'
>>> wnl.lemmatize('waiting','n')
'waiting'
>>> wnl.lemmatize('waiting','v')
'wait'
...