Tag: stanford nlp

加载自定义NER模型Stanford CoreNLP

我用Stanford的“Stanford-NER”软件创建了我自己的NER模型,并遵循这些指示。 我知道CoreNLP按以下顺序加载了三个NER模型: edu/stanford/nlp/models/ner/english.all.3class.distsim.crf.ser.gz edu/stanford/nlp/models/ner/english.muc.7class.distsim.crf.ser.gz edu/stanford/nlp/models/ner/english.conll.4class.distsim.crf.ser.gz 我现在想在上面的列表中包含我的NER模型,并首先使用我的NER模型标记文本。 我之前发现了两个关于这个主题的StackOverflow问题,它们是“Stanford OpenIE使用定制的NER模型”和“为什么Stanford CoreNLP NER-annotator默认加载3个模型?” 这两篇文章都有很好的答案。 答案的一般信息是您必须编辑文件中的代码。 斯坦福OpenIE使用定制的NER模型 从这篇文章中它说要编辑corenlpserver.sh但我在Stanford CoreNLP下载的软件中找不到这个文件。 有人能指出我这个文件的位置吗? Stanford CoreNLP NER-annotator默认加载3个型号吗? 这篇文章说我可以使用-ner.model的参数来专门调用要加载的NER模型。 我将此参数添加到初始服务器命令( java -mx4g -cp “*” edu.stanford.nlp.pipeline.StanfordCoreNLPServer -port 9000 -timeout 15000 -ner.model *modlefilepathhere* )。 这不起作用,因为服务器仍然加载所有三个模型。 它还声明您必须更改一些Java代码,尽管它没有特别指出要进行更改的位置。 我是否需要修改或添加此代码props.put(“ner.model”, “model_path1,model_path2”); 到CoreNLP软件中的特定类文件? 问题:从我的研究中看来,我需要添加/修改一些代码来调用我独特的NER模型。 上面概述了这些“编辑”,这些信息已从其他StackOverflow问题中提取出来。 我需要编辑哪些文件? 这些文件到底在哪里(即edu / Stanford / nlp / …等)? 编辑:我的系统在本地服务器上运行,我正在使用API​​ pycorenlp打开到我的本地服务器的管道并发出请求。 python / pycorenlp代码的两个关键行是: nlp = […]

执行和测试stanford核心nlp示例

我下载了stanford core nlp软件包并试图在我的机器上测试它。 使用命令: java -cp “*” -mx1g edu.stanford.nlp.sentiment.SentimentPipeline -file input.txt 我以positive或negativeforms获得情绪结果。 input.txt包含要测试的句子。 更多命令: java -cp stanford-corenlp-3.3.0.jar;stanford-corenlp-3.3.0-models.jar;xom.jar;joda-time.jar -Xmx600m edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,parse -file input.txt在执行时给出以下行: H:\Drive E\Stanford\stanfor-corenlp-full-2013~>java -cp stanford-corenlp-3.3.0.j ar;stanford-corenlp-3.3.0-models.jar;xom.jar;joda-time.jar -Xmx600m edu.stanford .nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,parse -file input.txt Adding annotator tokenize Adding annotator ssplit Adding annotator pos Reading POS tagger model from edu/stanford/nlp/models/pos-tagger/english-left3wo rds/english-left3words-distsim.tagger … done [36.6 sec]. […]

通过传递String而不是字符串数组来解析Stanford Parser

是否可以通过传递字符串而不是字符串数组来解析使用Stanford Parser的句子。 这是他们在简短教程中给出的示例( 参见文档 ): 这是一个例子: import java.util.*; import edu.stanford.nlp.ling.*; import edu.stanford.nlp.trees.*; import edu.stanford.nlp.parser.lexparser.LexicalizedParser; class ParserDemo { public static void main(String[] args) { LexicalizedParser lp = LexicalizedParser.loadModel(“edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz”); lp.setOptionFlags(new String[]{“-maxLength”, “80”, “-retainTmpSubcategories”}); String[] sent = { “This”, “is”, “an”, “easy”, “sentence”, “.” }; // This is the sentence to be parsed List rawWords = Sentence.toCoreLabelList(sent); Tree […]

stanford nlp核心出错

我下载了stanford nlp,当我运行他们网站上给出的代码时。 我在这行中收到错误: StanfordCoreNLP pipeline = new StanfordCoreNLP(props); 错误如下: Exception in thread “main” java.lang.NoClassDefFoundError: nu/xom/Node at sample1.main(sample1.java:35) Caused by: java.lang.ClassNotFoundException: nu.xom.Node at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) … 1 more 我使用eclipse,我应该做一些配置吗? 请帮帮我吧!

stanford core nlp java输出

我是Java和Stanford NLP工具包的新手,并尝试将它们用于项目。 具体来说,我正在尝试使用Stanford Corenlp工具包来注释文本(使用Netbeans而不是命令行),我尝试使用http://nlp.stanford.edu/software/corenlp.shtml#Usage上提供的代码(使用Stanford CoreNLP API)..问题是:有人能告诉我如何在文件中获取输出以便我可以进一步处理它吗? 我已经尝试将图形和句子打印到控制台,只是为了查看内容。 这样可行。 基本上我需要的是返回带注释的文档,这样我就可以从我的主类中调用它并输出一个文本文件(如果可能的话)。 我正在尝试查看stanford corenlp的API,但由于缺乏经验,我不知道返回此类信息的最佳方法是什么。 这是代码: Properties props = new Properties(); props.put(“annotators”, “tokenize, ssplit, pos, lemma, ner, parse, dcoref”); StanfordCoreNLP pipeline = new StanfordCoreNLP(props); // read some text in the text variable String text = “the quick fox jumps over the lazy dog”; // create an empty Annotation just […]

Stanford Core NLP – 了解共同参与解决方案

我在理解上一版斯坦福NLP工具中对coref解析器所做的更改时遇到了一些麻烦。 作为示例,下面是一个句子和相应的CorefChainAnnotation: The atom is a basic unit of matter, it consists of a dense central nucleus surrounded by a cloud of negatively charged electrons. {1=[1 1, 1 2], 5=[1 3], 7=[1 4], 9=[1 5]} 我不确定我理解这些数字的含义。 查看源代码也没有任何帮助。 谢谢

如何使用Open nlp的分块解析器提取名词短语

我是自然语言处理的新手。我需要从文本中提取名词短语。到目前为止,我已经使用open nlp的分块解析器来解析我的文本以获得树结构。但是我无法从中提取名词短语。树结构,在打开的nlp中是否有任何正则表达式模式,以便我可以用它来提取名词短语。 下面是我正在使用的代码 InputStream is = new FileInputStream(“en-parser-chunking.bin”); ParserModel model = new ParserModel(is); Parser parser = ParserFactory.create(model); Parse topParses[] = ParserTool.parseLine(line, parser, 1); for (Parse p : topParses){ p.show();} 在这里,我得到的输出为 (TOP(S(S(ADJP(JJ欢迎)(PP(TO to)(NP(NNP Big)(NNP Data。)))))(S(NP(PRP We))(VP(VP(VBP)) (VP(VBG工作)(PP(IN)(NP(NNP自然)(NNP语言)(NNP Processing.can)))))(NP(DT some)(CD one)(NN帮助))(NP( PRP us))(PP(IN in)(S(VP(VBG提取)(NP(DT)(NN名词)(NNS短语))(PP(IN))(NP(DT))(NN树)( WP结构。)))))))))) 有人可以帮助我获取像NP,NNP,NN等名词短语。可以告诉我,我是否需要使用任何其他NP Chunker来获取名词短语?是否有任何正则表达式模式来实现相同的目的。 请帮帮我。 提前致谢 Gouse。

使用Stanford Parser(CoreNLP)查找短语头

我将使用Stanford Corenlp 2013找到短语标题。 我看到了这个post 。 但是,答案对我来说并不清楚,我无法添加任何评论来继续该线程。 所以,我很抱歉重复。 我现在所拥有的是一个句子的解析树(使用Stanford Corenlp)(我也尝试过由Stanford Corenlp创建的CONLL格式)。 而我所需要的只是名词短语的头部。 我不知道如何使用依赖关系和解析树来提取名词短语的头部。 我所知道的是,如果我有nsubj (x, y) ,y就是主题的头部。 如果我有dobj(x,y) ,则y是直接对象的头部。 f我有iobj(x,y) ,y是间接对象的头部。 但是,我不确定这种方式是否是找到所有短语头的正确方法。 如果是,我应该添加哪些规则来获取所有名词短语? 也许,值得一提的是,我需要在java代码中使用名词短语的头部。

文本简化工具(Java)

使用Java进行文本简化的最佳工具是什么? 以下是文本简化的示例: John, who was the CEO of a company, played golf. ↓ John played golf. John was the CEO of a company.

如何训练斯坦福NLP情绪分析工具

大家好! 我正在使用Stanford Core NLP软件包,我的目标是在实时推文上进行情绪分析。 使用情绪分析工具返回对文本“态度”的非常差的分析。许多正面被标记为中性,许多负面评价为正面。 我已经在一个文本文件中获得了超过一百万条推文,但我不知道如何实际训练该工具并创建我自己的模型。 链接到斯坦福情绪分析页面 “可以使用以下命令使用PTB格式数据集重新训练模型:” java -mx8g edu.stanford.nlp.sentiment.SentimentTraining -numHid 25 -trainPath train.txt -devPath dev.txt -train -model model.ser.gz 来自dev.txt的样本(前4位表示5 … 4/5正极性) (4 (4 (2 A) (4 (3 (3 warm) (2 ,)) (3 funny))) (3 (2 ,) (3 (4 (4 engaging) (2 film)) (2 .)))) 来自test.txt的示例 (3 (3 (2 If) (3 (2 you) (3 […]