如果我使用TokenizerNotator、WordsToSentencesAnnotator、POSTaggerAnnotator和sutime创建一个AnnotationPipeline,我会将TimexAnnotations附加到生成的注释上。
但是,如果我创建一个StanfordCoreNLP管道,并将“annotators”属性设置为“tokenize,ssplit,pos,lemma,ner”,那么即使相关的单个标记被标记为DATE,我也不会得到TimexAnnotations。
为什么会有这种区别?
当我们运行注释时,我们从文档中提取所有实体提及,并将日期视为实体提及。下面是一些示例代码。我添加了一些注释掉的选项,如果你只想提取时间表达式,并且想要时间注释。要填充的类字段。
package edu.stanford.nlp.examples;
import edu.stanford.nlp.ling.*;
import edu.stanford.nlp.util.*;
import edu.stanford.nlp.time.TimeAnnotations;
import edu.stanford.nlp.pipeline.*;
import java.util.*;
public class SUTimeExample {
public static void main(String[] args) {
Annotation document =
new Annotation("The date is 1 April 2017");
Properties props = new Properties();
//props.setProperty("customAnnotatorClass.time", "edu.stanford.nlp.time.TimeAnnotator");
//props.setProperty("annotators", "tokenize,ssplit,pos,lemma,time");
props.setProperty("annotators", "tokenize,ssplit,pos,lemma,ner,entitymentions");
StanfordCoreNLP pipeline = new StanfordCoreNLP(props);
pipeline.annotate(document);
for (CoreMap entityMention : document.get(CoreAnnotations.MentionsAnnotation.class)) {
if (entityMention.get(CoreAnnotations.EntityTypeAnnotation.class).equals("DATE"))
System.out.println(entityMention);
}
}
}
当我运行此命令时:
java -Xmx8g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,ner -file data-example.txt -outputFormat text
我得到了日期的TIMEX注释。默认情况下,ner
注释器应该应用SUTime。
当我使用StanfordCoreNLP的SUTime功能,使用其留档中给出的代码,其中涉及使用AnnotationPipeline创建管道对象时,我能够成功地从字符串中提取TIME。 我还尝试了@StanfordNLPHelp在这个链接中建议的解决方案:使用StanfordCoreNLP管道的日期 但错误仍然存在:
传递参数 链接管道 我们可以将多个管道连接在一起,以便在一个表达式中使用多个管道。
我从https://stanfordnlp.github.io/CoreNLP/然后将其解压并放入cd。现在我试着运行下面的java文件<代码>javac-cp“*”分析。java工作正常,但是java情感分析在线程“main”java中抛出异常错误。lang.NoClassDefFoundError:edu/stanford/nlp/pipeline/StanfordCoreNLP。 导入jav
假设我有+10000个句子,我想像这个例子一样分析。有可能并行处理这些和多线程吗?
我正在使用管道来格式化我的日期,但如果没有解决方法,我就无法获得我想要的确切格式。我是误解了管道还是根本不可能? PLNKR视图
低于我的情况。 我有一个处理文本的类文本处理器。我需要在这样的文本中找到相关的引用,然后用斯坦福大学的OpenIE工具提取信息。我使用这两条管道: “标记化、ssplit、pos、引理、ner、解析、提及、coref”表示共指。 和 用于信息提取的“标记化、ssplit、pos、引理、depparse、natlog、openie”。 单独使用它们来分析单个文本需要很多时间,但目前我必须这样做,因为