2017-04-22 77 views
0

我注意到corenlp.run可以識別「明天上午10點」並將其解析爲時間。但培訓教程和我見過的文檔只允許每行一個字。我如何理解一個短語。 在相關說明中,是否有標記複合實體的方法?斯坦福NER短語或複合實體

回答

1

類似這樣的時間相關短語被SUTime庫識別。更多細節可以在這裏找到:https://nlp.stanford.edu/software/sutime.html

有一個功能可以在ner標記完成後提取實體。

例如,如果您已經標記了一個句子:Joe Smith went to Hawaii .PERSON PERSON O O LOCATION O您可以提取出Joe SmithHawaii。這需要entitymentions註釋器。

下面是一些示例代碼:java.io.IOException異常:無法打開「EDU /斯坦福/ NLP /型號

package edu.stanford.nlp.examples; 

import edu.stanford.nlp.pipeline.*; 
import edu.stanford.nlp.ling.*; 
import edu.stanford.nlp.util.*; 

import java.util.*; 

public class EntityMentionsExample { 

    public static void main(String[] args) { 
    Annotation document = 
     new Annotation("John Smith visited Los Angeles on Tuesday."); 
    Properties props = new Properties(); 
    //props.setProperty("regexner.mapping", "small-names.rules"); 
    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)) { 
     System.out.println(entityMention); 
     //System.out.println(entityMention.get(CoreAnnotations.TextAnnotation.class)); 
     System.out.println(entityMention.get(CoreAnnotations.EntityTypeAnnotation.class)); 
    } 
    } 
} 
+0

我從GitHub的源代碼運行這一點,並運行到'所致/pos-tagger/english-left3words/english-left3words-distsim.tagger「作爲類路徑,文件名或URL' – user1170883

+1

您需要在CLASSPATH中使用lib和liblocal中的模型jar和所有jar ...您可以下載來自主GitHub頁面的最新模型jar以及lib和liblocal文件夾也可以在GitHub中訪問。 – StanfordNLPHelp

相關問題