|
|
1.
|
入力された文章に対して、辞書中に含まれている単語全てを検索します。
|
|
|
|
この際に使用する辞書の単語数は45万語以上ありますが、言語郎独自の辞書インデックスにより、高速な検索を可能としています。
|
|
|
2.
|
単語の候補を列挙したグラフ構造(ラティス構造)を作成します。
|
|
|
|
形態素解析する文章の表記に部分一致する全ての単語を辞書から抜き出し、単語の候補を列挙したラティス(lattice)構造(学術用語で「単語ラティス」と呼ばれる)を作成します。
|
[lattice構造]
|
彼女は大学で勉強します。
|
|
|
|
3.
|
単語同士の多くの組み合わせの中から、文章として最も確からしいと思われる単語の並びを探し出します。
|
|
|
|
日本語文章を単語単位に分割する際、品詞同士の隣り合う可能性(スコア)を表すテーブルが用いられます。辞書検索から得られた全ての単語の組み合わせの中から、動的計画法の一種である「Viterbiアルゴリズム」という数学的な手法を用いて、高速に最適な単語列を求めることが可能になっています。
|
[Viterbiアルゴリズム]
|
前側から計算して評価値を最小にするパスのみ残す
最後まで計算してから最適パスを計算する
|
|
|
|
|
また、「コスト最小法」と呼ばれる形態素解析の手法を用いることにより、精度の高い形態素解析の結果を得ることが可能です。
「言語郎」では、品詞を700種類以上に細かく分けて構成しており、700×700=490,000通り以上の組み合わせについて、実に10年以上の歳月をかけスコア付けを行いました。大変な労力をかけましたが、このテーブルにより、言語郎のきめ細やかな形態素解析を可能としています。
|