2016-05-20 7 views
3

Stanford CoreNLPのバージョンを最新版(以前はv3.5.2でv3.6.0にアップグレードしようとしていました)にアップグレードしようとしています。 v3.6.0に必要な新しいjarファイルをすべてコンパイルした後、スタンドアロンのStanford CoreNLPサーバー(Apache Thrift v0.9.3を使用)を起動しました。IOUtilのエラーStanford Shift Reduce Parserを読み込んでいます

さらに、スタンフォードのShift Reduce Parserを使用しています。これは、次のリンクStanford Shift Reduce Parserにあります。私はこのモデルの最新バージョンが2014年10月23日に公開されたと思います。私が特に必要とするモデルはenglishSR.beam.ser.gz(英語のビームサーチシフトを減らすモデル)です。

は、残念ながら、私の新しいサーバー(スタンフォードCoreNLPのv3.6.0/Apacheのスリフトのv0.9.3)を実行すると、ログがエラー表示:逆に

Reading in configuration from scripts/config... 
Initializing Parser... 
Loading classifier from edu/stanford/nlp/models/ner/english.conll.4class.distsim.crf.ser.gz ... done [0.6 sec]. 
Loading classifier from edu/stanford/nlp/models/ner/english.muc.7class.distsim.crf.ser.gz ... done [0.5 sec]. 
Loading classifier from edu/stanford/nlp/models/ner/english.all.3class.distsim.crf.ser.gz ... done [1.5 sec]. 
Reading TokensRegex rules from edu/stanford/nlp/models/sutime/defs.sutime.txt 
May 20, 2016 3:41:00 AM edu.stanford.nlp.ling.tokensregex.CoreMapExpressionExtractor appendRules 
INFO: Read 83 rules 
Reading TokensRegex rules from edu/stanford/nlp/models/sutime/english.sutime.txt 
May 20, 2016 3:41:01 AM edu.stanford.nlp.ling.tokensregex.CoreMapExpressionExtractor appendRules 
INFO: Read 267 rules 
Reading TokensRegex rules from edu/stanford/nlp/models/sutime/english.holidays.sutime.txt 
May 20, 2016 3:41:01 AM edu.stanford.nlp.ling.tokensregex.CoreMapExpressionExtractor appendRules 
INFO: Read 25 rules 
Reading POS tagger model from edu/stanford/nlp/models/pos-tagger/english-left3words/english-left3words-distsim.tagger ... done [0.4 sec]. 
03:41:01.566 [main] ERROR edu.stanford.nlp.io.IOUtils - Loading parser from serialized file edu/stanford/nlp/models/srparser/englishSR.beam.ser.gz ... 
done [10.4 sec]. 
Initializing Tokenizer... 
The CoreNLP server is running... 

を、これは実行しているときに見られているログです古いサーバー(スタンフォードCoreNLP v3.5.2/v0.9.3リサイクル):

Reading in configuration from scripts/config... 
Initializing Parser... 
Loading classifier from edu/stanford/nlp/models/ner/english.conll.4class.distsim.crf.ser.gz ... done [1.3 sec]. 
Loading classifier from edu/stanford/nlp/models/ner/english.muc.7class.distsim.crf.ser.gz ... done [1.1 sec]. 
Loading classifier from edu/stanford/nlp/models/ner/english.all.3class.distsim.crf.ser.gz ... done [2.7 sec]. 
Initializing JollyDayHoliday for SUTime from classpath: edu/stanford/nlp/models/sutime/jollyday/Holidays_sutime.xml as sutime.binder.1. 
Reading TokensRegex rules from edu/stanford/nlp/models/sutime/defs.sutime.txt 
Reading TokensRegex rules from edu/stanford/nlp/models/sutime/english.sutime.txt 
Reading TokensRegex rules from edu/stanford/nlp/models/sutime/english.holidays.sutime.txt 
Reading POS tagger model from edu/stanford/nlp/models/pos-tagger/english-left3words/english-left3words-distsim.tagger ... done [0.5 sec]. 
Loading parser from serialized file edu/stanford/nlp/models/srparser/englishSR.beam.ser.gz ... done [9.8 sec]. 
Adding annotator dcoref 
Initializing Tokenizer... 
The CoreNLP server is running... 

あなたが見ることができるように、新しいサーバーエラー出srparserにロードし、「注釈のdcorefの追加」をアップ終わらないしようとしているとき。私は他のファイルのどれも修正していないし、何が矛盾の原因になっているのかもわからない。現在スタンフォードコアのNLPプロパティファイルを探していますが、この問題に関するお手伝いをお願いします。前もって感謝します!

+0

CLASSPATHに英語のモデルjarがあることを確認してください。そのjarをダウンロードすることができます:http://stanfordnlp.github.io/CoreNLP/download.html ...その瓶には、シフトリダクションパーサーファイル – StanfordNLPHelp

+0

が含まれています。http://stanfordnlp.github .io/CoreNLP/corenlp-server.html – StanfordNLPHelp

+0

また、 "antで再構築"と言うのは確信しています... v3.6.0を使用したい場合は、jan stanford-corenlp-3.6.0.jarが必要です適切な依存関係とモデル...必要なものはすべてここから入手できます:http://stanfordnlp.github.io/CoreNLP/download.html – StanfordNLPHelp

答えて

0

私は、このコマンドを実行し、何の問題もなかった:

java -Xmx6g -cp "stanford-corenlp-full-2015-12-09/*:stanford-english-corenlp-2016-01-10-models.jar" edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,ner,parse -file sample-text.txt -outputFormat text -parse.model edu/stanford/nlp/models/srparser/englishSR.beam.ser.gz 

これはスタンフォードCoreNLP 3.6.0と私たちが使用する最新モデルのjarファイルの配布を使用しています。

あなたのCLASSPATHに浮かんでいる古いバージョンのものが互換性の問題を引き起こし、動作しなくなる可能性がある場合は、これらのjarとそのjarファイルだけを使用してください。

ちょうど明らかになるように、ディストリビューションにはツールキットを使う基本的なものがある標準モデルのジャーが付属しています。その後、別々に英語のモデルjarがあります。これは大規模であり、すべての英語リソースを含んでいます。

英語のシフトリダクションパーサーモデルは、すべて英語のリソースを持つ現在英語のモデルjarで配布されています。これは、標準のjarで利用できない英語のリソースを取得するための推奨される方法です。この情報を反映するために、一部のページを更新する必要があるかもしれません。旧式のシフト・リダクション・モデル・ジャーが3.6.0と互換性がない可能性があります。私は調査します。

これらの事のすべてがここにあります:http://stanfordnlp.github.io/CoreNLP/download.html

あなたはまだ問題が私に知らせて、瓶に問題がから来ていると私は調査する原因となる場所を私に知らせた場合は。しかし、上記のリンクからダウンロードしたリソースを使ってコマンドを実行すると、正常に動作するはずです。

+0

私の質問の一番下に返信を投稿し、あなたがそれを見ることができたのかどうかは分かりません。おそらくこれをチャットに移すことができますか?標準のディストリビューションはスタンドアロンでうまくいくようですが、私の一時的なサーバ/クライアントの実装は問題になるかもしれません... –

0

ShiftReduceParser.loadModelメソッドを呼び出しましたか?

このメソッドは、IOUtils.readObjectAnnouncingTimingFromURLOrClasspathOrFileSystemメソッドを呼び出し、次のようにそのソースがある:

try { 
    Timing timing = new Timing(); 
    logger.error(msg + ' ' + path + " ... "); 
    obj = IOUtils.readObjectFromURLOrClasspathOrFileSystem(path); 
    timing.done(); 
} catch (IOException | ClassNotFoundException e) { 
    throw new RuntimeIOException(e); 
} 
return obj; 

"logger.errorは" おそらく間違いです。それは "logger.info"であると私は思います。

+0

私はloadModel()メソッドを呼び出しましたが、あなたの主張が何であるかは不明です。エラーメッセージが誤解を招くと言いたいのですか? 上記のモデルファイルをロードする際にエラーが発生しても、ロードされていないような 'dcoref annotator'によって作成されたcorefアノテーションを除いても、すべてが正常に解析されているようです。 –

関連する問題