2017-03-25 1 views
2

私は、さまざまな品詞が内部的に表現されるいくつかのデータ構造、列挙、または生成プロセスを特に探しています。私はJavadocとソースコードをしばらくスキャンして、探しているものを見つけることができませんでした。可能であれば、いくつかの中央の場所に保管されていれば、タグのコレクションに直接アクセスしたいと思います。私が疑問に思っている質問が、CoreNLPのpos-taggingが動作する方法についての素朴な前提を構成していれば私を許してください。しかし、私が記述しているものが何らかの形で存在すれば、これは非常に役に立ちます。ありがとう!CoreNLPコードでは、Penn Treebank品詞シンボル自体が実際に表現されていますか?

答えて

1

実際にコードのどこに明示的に表現されているのかわかりません。タガーは固定列挙型ではなく単にストリングとして出力し、出力空間はトレーニングデータから直接推測されます。これは、任意のタグセットで正確に同じモデルを訓練できるという利点があります。そして、もちろんあなたが直面している不利益。答えをhttps://www.ling.upenn.edu/courses/Fall_2003/ling001/penn_treebank_pos.html

+0

ありがとう::)

しかし、英語の場合、タグセットは、ペンツリーバンクのタグセットでなければなりません。ええ、それは私が考えているかもしれないものです。私はそれがPTBを使用していることを知っています(そして、あなたの答えから、なぜトレーニングの仕組みが特定のツリーバンクモデルに適合しないのか理解しています)。比較のために値を手作業でコピーする自分の能力を信頼しなくても、何らかの形で(たとえプログラムでさえ)でも値にアクセスすることができれば、私の現在のプロジェクトではうれしいでしょう。私たちプログラマーは、何とか自動化するのではなく、このようなことをするのが一般的ではないので、どこから来ているのか理解できます。しかたがない。助けてくれてありがとう。 :) –

+1

したがって、 'AbstractSequenceClassifier#labels()'を見てみると、ラベル空間のシーケンスモデルのビューが得られます。しかし、(1)これは必ずしも正確である必要はなく(例えば、理論上、トレーニングセットより多くのラベルを有することができる)、(2)実際のパイプラインから取得するのは苦痛である。私はちょうどenumにタグをハードコーディングすることをお勧めします。 CoreNLPでは時間の経過とともに多くのことが変化しますが、POSタグセットはその1つではありません –

関連する問題