首先,您必须标记文本。这看似微不足道(在任何空格处分割都可以为您工作),但从形式上讲,这却很难。然后,您必须确定什么是名词。 “停车场”是否包含一个名词(停车场),两个名词(汽车,公园)或一个名词(公园)和一个形容词(汽车)?这是一个很难的问题,但是没有它,您也许仍然可以解决。
“我看见xyzzy”是否识别出不在词典中的名词?单词“ the”可能将xyzzy标识为名词。
“时光如箭”中的名词在哪里?比较“果蝇像香蕉”(感谢格劳乔·马克思)。
我们在OpenNLP工具包(opennlp.tools.lang.english.PosTagger; opennlp.tools.postag.POSDictionary on http://上使用了Brown标记器(Java)( http://en.wikipedia.org/wiki/Brown_Corpus ) opennlp.sourceforge.net/ )来查找普通英语中的名词,我建议从此开始-它为您完成了大部分思考。否则,请查看任何POSTaggers( http://en.wikipedia.org/wiki/POS_tagger )或( http://www-nlp.stanford.edu/links/statnlp.html#Taggers )。
在计算机进行词性标注时,通常要区分50到150个英语单独的词性,例如NN表示单数普通名词,NNS表示复数普通名词,NP表示单数专有名词(请参阅POS)布朗语料库中使用的标签)
http://en.wikipedia.org/wiki/Natural_language_processing_toolkits中有NLP工具包的完整列表。我强烈建议您使用其中之一,而不要尝试与Wordnet或其他集合进行匹配。
0
有谁知道从文本中仅提取名词的最简单方法?
我听说过TreeTagger工具 ,但尝试尝试一下,但由于某种原因而无法使用。
有什么建议么?
谢谢菲尔
编辑:
那是我的代码,英语是语言。我收到错误消息:类型new TokenHandler(){}必须实现继承的抽象方法TokenHandler.token。难道我做错了什么?