Я хотел бы знать, есть ли способ анализировать существительные в списке. Например, если есть алгоритм, различающий разные категории, например, если существительное входит в категорию «животное», «растение», «природа» и так далее. Я думал, что можно достичь этого результата с Wordnet, но, если я не ошибаюсь, все существительные в WordNet относятся к категории "сущность". Вот сценарий моего анализа WordNet:
lemmas = ['dog', 'cat', 'garden', 'ocean', 'death', 'joy']
hypernyms = []
for i in lemmas:
dog = wn.synsets(i)[0]
temp_list = []
hypernyms_list = ([lemma.name() for synset in dog.root_hypernyms() for lemma in synset.lemmas()])
temp_list.append(hypernyms_list)
flat = list(set([item for sublist in temp_list for item in sublist]))
hypernyms.append(flat)
hypernyms
И результат: [['сущность'], ['сущность'], ['сущность'], ['сущность'], ['сущность'], ['сущность']].
Может ли кто-нибудь предложить мне некоторые методы для получения категории, к которой принадлежат имена, если есть что-нибудь доступное? Заранее спасибо.