繁体   English   中英

如何分析列表中的名词

[英]How to analyze nouns in a list

我想知道是否有一种方法可以分析列表中的名词。 例如,如果有一种算法可以识别不同的类别,则该名词是否属于“动物”,“植物”,“自然”等类别的一部分。 我以为可以用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

结果是:[['entity'],['entity'],['entity'],['entity'],['entity'],['entity']]。

如果有可用的方法,有人可以建议我一些技巧来检索名称所属的类别吗? 提前致谢。

我可以建议的一种方法是使用Google的NLP API。 此API具有将“词性”识别为“语法分析”的功能。 请在此处参考文档-Google的NLP API-语法分析

另一个选择是斯坦福大学的NLP API。 以下是参考文档- 斯坦福大学的NLP API

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM