Хороший словарь / корпус для перекрестной проверки существительных множественного числа - PullRequest
0 голосов
/ 29 мая 2019

Я использую «nltk», чтобы идентифицировать существительные, а затем «склонить», чтобы найти форму существительного во множественном числе. Я добавил непредвиденное обстоятельство, когда форма множественного числа подвергается перекрестной проверке со словарем / корпусом, и, если это слово во множественном числе отсутствует, добавьте «(s)» вместо использования формы множественного числа. Ниже приведена небольшая часть кода (часть перекрестной проверки).

import inflect    
word = input()
p = inflect.engine()
pluralized = p.plural(word
with open("words.rtf") as f:
  text = f.read().strip().split()
  if pluralized in text:
     newword = pluralized
  else:
     newword = word+"(s)"
print(word," : ",newword)

Проблема в том, что в словаре / корпусе, который я использую, "words.rtf" нет большинства возможных множественных форм слов. Есть ли текстовый файл с множественными примерами или лучший способ перекрестной проверки. Я хочу отвергать множественное число аббревиатур и сокращений и принимать только множественное число правильных английских слов. Например,

knife: knives
ID: ID(s) #not IDS

1 Ответ

0 голосов
/ 04 июня 2019

Если вы ищете что-то, чтобы помочь с перегибами, вы можете оформить заказ pyInflect или LemmInflect .Это сделает вашу работу намного лучше, чем NLTK.

Если вы действительно просто ищете список слов, посмотрите пакет Debian wamerican .Если вы работаете в Linux, возможно, он уже установлен в /usr/share/dict.Я полагаю, что для Windows вы можете использовать 7-zip или несколько других программ для извлечения файла .deb, а затем просто использовать список слов внутри архива.

Существуют также более крупные списки, такие как версии wamerican-large, -huge и -insane и wbritish (см. Аналогичные пакеты в правой части страницы wamerican).

...