隠れマルコフモデルを使用して形態学的同音異義語を削除する

以前の投稿で、私は形態学的同音異義語( 「鋼」という言葉の例)について書き、 それを解決するためにHidden Markov Models(HMM)が使用されていると述べました。

最初に、テストのマークアップについて少し説明します(英語の文献では、このプロセスは「品詞タグ付け」 (POST)と呼ばれます)-これは手動または自動のプロセスであり、その結果、テキストの各単語に帰属情報(タグ)が割り当てられ、どの品詞がこの単語:名詞、動詞、形容詞、副詞、代名詞、助詞、連合、間投詞など ここが「鋼」の問題に出くわす場所です。



アルゴリズムの詳細を詳しく調べない場合は、彼が答える主な質問:「この単語の最も可能性の高いタグを選択してください」。

そして詳細を説明すると、HMMの特定のシーケンスに対して、タガー(前述のアルゴリズムを実装するプログラム)が式を最大化するタグを選択します。

[1] P(単語|タグ)* P(タグ|前のnタグ)「P(単語|タグ)」は、指定されたタグ「P (tag | previous n tags)”は、このタグが出現する条件付き確率です。ただし、以前に示された一連のn個のタグが存在します。

実際のタガーは、一連の単語に対して一連のタグを定義しますが、教育目的のために、タガーがタグを単一の単語に割り当てる方法を確認します。

最初に基本式を使用し、次に例に従います。「戦闘」式の導出方法に興味があり、すべての数学計算が必要な場合は、記事の最後に示されている文献を参照できます。

前のタグがt i-1であった場合、2条件付き(前の単語に関する情報のみを使用)(bigram)タガーは、単語w iの t jタグを選択します。

[2] t i = argmax(j)P(t j | t i-1 、w i

マルコフ条件のいくつかの単純化(文献にもリストされています)を使用して、式[2]は次の形式で書き直すことができます。

[3] t i = argmax(j)P(t j | t i-1 )P(w i | t j





例として、前のフレーズを使用します。

「労働者はシフトごとに大量の鋼を製錬した」

「子供たちは夏に強くなった」

最初の例では、「steel」という単語は2番目の動詞の名詞です。 例の目的のために、より良い方法で、文のすべての単語にタグが付けられ、両方の例で「鋼」という単語だけが省略されたと仮定します。

タガーの目標は、次のシーケンスに最も可能性の高いタグを割り当てることです。

多くの{ADC}鋼{???}

夏{ESS}は{???}になりました



例に式[3]を適用する方法を見てみましょう。 この式は、 「大量の鉄鋼」シーケンスに使用しようとすると、2つのオプションの確率が最も高いタグを選択する必要があることを示しています。

[4] P(GLAG | PLAIN)P(スチール| GLAG)

そして

[5] P(EXIST | PLAIN)P(スチール| EXT)



式[3]およびその生成[4]および[5]は、タグのシーケンスの確率と、対応するタグの単語の確率の2つの部分で構成されています。 「スチール」の場合、確率P(動詞| ADVENT)とP(存在する| ADVENT) は、「副詞の後、動詞(名詞)に出会う可能性はどれくらいですか?」という質問に答えます 。 この問題は、ラベル付きのケース( 「ruscorpora.ru」など )を使用して簡単に解決できます。 副詞の後に名詞が続く確率は、動詞よりも大きくなります(ただし例外ではありません)。

P(有効| TON)= 0.021

P(存在する| TAL)= 0.34



式[3]、[4]、[5]の2番目の部分は、「「steel」という単語にタグGLAG(EXT)が付く可能性はどれくらいですか?」という質問には答えていないことに注意してくださいしかし、 「このタグがGLAG(EXT )、これが「鋼」という言葉になる確率はどのくらいですか?」

P(スチール| GLAG)= 0.00003

P(スチール| EXT)= 0.00041



その結果、 「a lot of steel」という望ましいシーケンスで、 「steel」という単語に「 SUSH」というタグを付ける必要があります。

P(スチール| GLAG)= 0.000007

P(スチール| EXT)= 0.00001





文学



  1. 音声と言語処理、D。ジュラフスキー、JHマーティン、1999年



All Articles