当前位置: 首页 > 面试题库 >

从文本中提取名词(Java)

袁山
2023-03-14
问题内容

有谁知道从文本中仅提取名词的最简单方法?

我听说过TreeTagger工具,但尝试尝试一下,但由于某种原因而无法使用。

有什么建议?

谢谢菲尔

编辑:

 导入org.annolab.tt4j。*; 
TreeTaggerWrapper tt =新的TreeTaggerWrapper();

尝试{tt.setModel(“ /名词/english.par”);

tt.setHandler(new TokenHandler(){ 
     无效令牌(字符串令牌,字符串pos,字符串引理){    
     System.out.println(token +“ \ t” + pos +“ \ t” + lemma); }});
     tt.process(words); //单词=单词列表

     }最后{tt.destroy(); 
}

那是我的代码,英语是语言。我遇到了错误:new
TokenHandler(){}类型必须实现继承的抽象方法TokenHandler.token。难道我做错了什么?


问题答案:

首先,您必须标记文本。这看似微不足道(在任何空格处分割都可以为您工作),但从形式上讲,这却很难。然后,您必须确定什么是名词。“停车场”是否包含一个名词(停车场),两个名词(汽车,公园)或一个名词(公园)和一个形容词(汽车)?这是一个很难的问题,但是如果没有它,您也许仍然可以解决。

“我看见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或其他集合进行匹配。



 类似资料:
  • 问题内容: 假设您有一个像这样的文本文件:http : //www.gutenberg.org/files/17921/17921-8.txt 有没有人有一个好的算法或开放源代码从文本文件中提取单词?如何获得所有单词,同时避免使用特殊字符,并保留诸如“ it’s”之类的内容… 我在用Java工作。谢谢 问题答案: 这听起来像是正则表达式的正确工作。如果您不知道如何开始,以下是一些Java代码,可以

  • 问题内容: 有更有效的方法吗?我的代码读取一个文本文件并提取所有名词。 如何减少此代码的时间复杂度?有没有办法避免使用嵌套的for循环? 提前致谢! 问题答案: 如果您不接受其他选项,请签出。它可以轻松提取所有名词和名词短语:

  • 问题内容: AJAX调用返回的响应文本包括JSON字符串。我需要: 提取JSON字符串 修改它 然后重新插入以更新原始字符串 我不太担心步骤2和3,但是我不知道如何执行步骤1。我当时在考虑使用正则表达式,但是我不知道该怎么做,因为我的JSON可能具有嵌套对象的多个级别或数组。 问题答案: 您不能使用正则表达式从任意文本中提取JSON。由于正则表达式通常不够强大,无法验证JSON(除非可以使用PCR

  • 我想从数据帧中的文本中提取特定的单词。这些单词我已经输入到字典的列表中,它们属于某些类别(键)。由此,我想创建与存储单词的类别相对应的列。和往常一样,最好用例子来说明: 我有一个数据框: 它创建表: 还有一本我想从中提取的分类词词典。这些单词都是没有符号的自然语言单词,可以包括短语,例如本例中的“alloy wheels”(这不一定是字典,我只是觉得这是最好的方法): 根据这个,我想创建一个如下所

  • 我想为我的搜索引擎从数据库中提取一个基本的同义词列表。这包括通常拼写的名字,如Shaun vs.Shawn,Muhammad的不同变体,命名实体的首字母缩写,如United Nations(UN)或SARS(Severe acute respiratory syndrome)。 在提取之后,这个同义词列表将被放置在服务器中,并以这样的方式存储--相关术语/同义词的字符串。 示例 我使用了jaws

  • 我是新的Python和nltk。我已经将代码从https://gist.github.com/alexbowe/879414转换为下面给定的代码,使其运行于许多文档/文本块。但我得到了以下错误 有人能帮我解决这个问题吗。我必须从数以百万计的产品评论中提取名词短语。我使用了使用Java的Standford NLP工具包,但速度非常慢,所以我认为在python中使用nltk会更好。如果有更好的解决方案