2017-09-07 8 views
0

いくつかの文章の頭文字を取得しようとしています。しかし、フレーズの種類によってはNo head rule definedの例外があります。いくつかのフレーズタイプは私にとってはそれほど重要ではないので、if節でthamを無視できます。しかし、たとえば、AP(Adjective Phrase)は私にとって重要であり、私はそのようなフレーズの先頭の単語を持っていたいと思います。それに関する助けやアイデア?私javaコードから私はStanford CoreNLP(3.8)の最新バージョンを使用していStanford CoreNLPを使用して文を解析するときに、AP用に定義されたヘッドルールがありません

HeadFinder hf = new UniversalSemanticHeadFinder(); 
    hf.determineHead(oneTree, mainTree); 

とコードは、英語の文章を完璧に動作します:

私は、次のコードを使用しています。

ベスト、

答えて

0

あなたは、構成ラベルの異なるセットを使用しているように見えます。ヘッドファインダは、例えばペン型ツリーバンク(PTB)形式の木のために開発されました。例えば、形容詞句にはADJPというラベルを使用します。 this pageにPTBラベルのセットとその説明があります。

+0

あなたの答えをありがとう。 Stanford CoreNLP HeadFinderがドイツ語用に開発されていないか、間違ったモデルを使用していますか?私はドイツ語のために "german-fast.tagger"と "germanSR.ser.gz"を使用しています。これらのモデルは私に "Adjective Phrase"の "AP"を与えます。間違って何かを使っていますか? – user1419243

+0

残念ながら、残念なことに、それぞれのツリーバンクアノテーションスキームのヘッドファインダーを開発しなければならず、ドイツのツリーバンクのいずれに対してもヘッドファインダーはありません。つまり、UniversalSemanticHeadFinder()をドイツ語に適応させるのは難しいことではないと思います。 (もしあなたがこれを実装したら、私たちと共有してください - それをCoreNLPに含めて喜んでします) –

関連する問題