2016-04-13 11 views
0

Stanford Named Entity Recognizer (NER)Stanford Log-linear Part-Of-Speech TaggerのテキストからNERタグとPOSタグを渡そうとしました。NERスタンフォードはJavaファイルを呼び出すことができますか?

は、私はあなたに出力をPOStag

import edu.stanford.nlp.tagger.maxent.MaxentTagger; 

public class POSTag { 
    static MaxentTagger tagger = new MaxentTagger("english_language_pos.tagger"); 

    public static void main(String[] args) throws IOException{ 
     String text = "Sarah and I go to Samsung office in Korea." 
     String tagged = tagger.tagString(text); 

     System.out.println(tagged); 
    } 
} 

の例を挙げてみましょう:

Sarah_NNP and_CC I_PRP go_VBP to_TO Samsung_NNP office_NN in_IN Korea_NNP ._. 

そしてNERスタンフォードのため、私は、コマンドラインで実行する必要があります。

java -mx500m -cp stanford-ner-3.5.2.jar edu.stanford.nlp.ie.crf.CRFClassifier -loadClassifier indonesian_language_ner.gz -textFile E:/file.txt > E:/file_ner.txt 

私の質問は、スタンフォードNERをJava拡張モジュール(file.java)でファイルに呼び出す方法です。コマンドラインからスタンフォードNERを呼び出す方法はありますか? Javaファイルから呼び出されたNERを提供するために使用できる他のツールやライブラリはありますか?

*****編集:
私はこのようになっNERの出力が必要です。

Sarah_PERSON and_O I_O go_O to_O Samsung_ORGANIZATION office_O in_O Korea_PLACE ._O 

を*****編集

** FYI:私は8.1

Windowsを使用します私はそれが役に立てば幸い

String model = "english.all.3class.distsim.crf.ser.gz"; 
    String text = "file.txt"; 

    AbstractSequenceClassifier<CoreLabel> classifier = CRFClassifier.getClassifier(model); 
    classifier.classifyAndWriteAnswers(text); 

答えて

1

あなたはこのような何かを行うことができます。

+0

タグNERのテキストが出力されている必要があります。私は詳細のために投稿を編集しています。 –

+0

これは動作するはずです。タグ付けはデフォルトで '/'で行われ、別の文字に簡単に適応できます。 – joel314

+0

出力をコンソールに出力するのではなくファイルに書き込むにはどうしたらいいですか?他のメソッドclassifyAndWriteAnswersには異なるパラメータがありますが、ファイルへの書き込みに使用できるものはわかりません。ありがとう –

関連する問題