現在、NLTKの「nltk.pos_tag」を使用して品詞のタグ付けを行っています。NLTKのタガーは、現在タグ付けされている単語以外の情報を使用して、単語のPOSを決定しているのでしょうか。
そうでない場合、NLTKにはこれを行うタガーがありますか?
情報を事前に感謝します!
この関数は、 atpos_tag
をロードするための呼び出しを行います。これは、おそらくPennTreebankPOS注釈付きテキストでトレーニングされた最大エントロピータガーです。MaxEntタガーが品詞を決定するために使用する情報は、トレーニングで使用される機能セットに基づきます。つまり、技術的には個々の単語の特徴しか使用できませんが、タガーが不正確になる可能性があります(また、機械学習を使用してタガーを生成することを十分に活用できません)。Pythonを使用した自然言語処理の第5章に記載されている例を考えてみましょう。pickle
_POS_TAGGER
>>> text = nltk.word_tokenize("They refuse to permit us to obtain the refuse permit")
>>> nltk.pos_tag(text)
[('They', 'PRP'), ('refuse', 'VBP'), ('to', 'TO'), ('permit', 'VB'), ('us', 'PRP'),
('to', 'TO'), ('obtain', 'VB'), ('the', 'DT'), ('refuse', 'NN'), ('permit', 'NN')]
「拒否」と「許可」には、文脈に応じてそれぞれ異なるタグが付けられているため、前の単語の機能(POSタグなど)を使用していることは間違いありません。