第 4 章 孤立手書き文字認識から連続手書き文字列認識への拡張 18
4.3 言語モデル
言語モデルとは,与えられた文字列wn1 =w1w2· · ·wnに対して,その出現確率P(w1w2· · ·wn) を与えるモデルである.言語モデルとしては様々なものが考えられている.サンプルデー タから統計的な手法によって確率推定を行う,統計的言語モデルを用いるのが現在の主流 となっている.
統計的言語モデルには確率文脈自由文法など様々なものがあるが,その中でも最も単純 でかつ最も広く用いられているのが N グラムモデルである.N グラムモデルは,音声認 識やオフライン文字認識[24, 25]の分野でも用いられており,その有効性が示されている.
4.3.1 N グラムモデル
文字列wn1 =w1w2· · ·wn に対して,その出現確率P(w1n)は,乗法定理を用いると,
P(wn1) =P(w1w2· · ·wn) =P(w1)P(w2|w1)· · ·P(wn|w1n−1) (4.4) となる.
N グラムモデルとは,P(wn1)の推定をする場合に,
P(wn1) =P(w1w2· · ·wn) =
N
i=1
P(wi|wi−N+1· · ·wi−1) =
N
i=1
P(wi|wi−1i−N+1) (4.5)
のように,文字の生起をN−1重マルコフ過程で近似したモデルである.つまり,N グラ ムモデルでは,i 番目の文字wi の出現確率が,直前のN −1 個の文字列wi−N+1· · ·wi−1
だけに依存すると考える.特に,N = 1 のときをユニグラム(unigram),N = 2 のとき をバイグラム(bigram),N = 3 のときをトライグラム(trigram)と言う.ユニグラムは,
文字が以前の文字に依存せずに生起するので,文字の生起確率に等しい.また,全ての文 字が等確率で生起すると考えたモデルのことをゼログラムと呼ぶ[26].
4.3.2 N グラム確率の算出
N グラム確率の算出は,基本的には最尤推定法を用いる.すなわちN グラム確率は,
学習データ中に出現する文字の N 組と N1 組の相対頻度から推定する.ここで,文字列 wn1 が学習データ中に出現する回数をC(w1n)で表すと,P(wn|w1n−1) = P(wn|wn−N+1n−1 )は,
P(wn|wn−N+1n−1 ) = C(wn−N+1n )
C(wn−N+1n−1 ) (4.6)
と推定される.
4.3.3 N グラム確率のスムージング
統計元となった学習データにたまたま出現しなかった N グラムに対する出現確率が 0 となってしまう(ゼロ頻出問題).適切な推定値を得るためには,確率値のスムージング
( 平滑化)を行う必要がある.
確率値のスムージングとは,大きい確率値を小さく,小さい確率値を大きくすることで 確率が 0 になることを回避する手法である.代表的なスムージングとして,加算スムー ジング,バックオフ・スムージング,線形補間法などがある.本論文では最も単純であり 容易に実現できる加算スムージングを用いており,本節ではこれについて説明する.
加算スムージング(Additive Smoothing)
加算スムージングは,N グラム確率の算出において,単純に文字列の出現回数を用い るのではなく,出現回数に一律に一定数を加えた値を用いる.出現回数に加える定数を
δ (0< δ ≤1),文字列の異なり総数を V とすると,加算スムージングでは N グラム確
率を以下のように推定する.
P(wn|wn−1n−N+1) = C(wn−N+1n−1 ) +δ
C(wn−N+1n ) +δV (4.7)
4.3.4 言語モデルの評価
作成した言語モデルの良さは,認識システムにどの程度貢献し,認識精度がどの程度良 くなったかという尺度によって測られる.しかし,認識システムの性能には様々な要素が 影響する為,認識精度の良し悪しが言語モデルの良さを反映したかど うかを検証するのは 難しい.そこで言語モデルの評価を,手軽に使われている尺度であるパープレキシティに よって行うことが多い.
パープレキシティ(perplexity)
パープレキシティ P P は,ある文字1個が出現し うる確率の相乗平均の逆数で表現さ れる.
P P =
n
i=1
P(wi) −1n
(4.8)
実際には,以下のように対数確率の相加平均を取って計算されることが多い.
log2P P =−1 n
n
i=1
log2P(wi) (4.9)
テスト セット ・パープレキシティ(test-set perplexity)
連続音声認識システムでは,認識性能はタスクやテキストなどの処理対象に依存する.
すなわち,同じ 言語モデルを用いる場合でも,タスクが異なれば ,異なった認識性能を
示す.従って,言語モデルの性能評価のためのテキスト集合を別に定めて,そのテキスト 集合に対するパープレキシティを調べることが多い.これをテストセット・パープレキシ ティと言い,式(4.9)における w1w2· · ·wn として,学習に使ったテキストとは別に言語 モデルの性能評価のためのテキストを用いて算出したものとなる.
パープレキシティが低いならば ,実際に出現する文(テストセット )の出現確率が高 く,認識したい文と他の文を識別する能力が高いことを表す.但し,パープレキシティに よる言語モデルの性能評価には「文字自体の間違いやすさ」という指標が入っていない 為,パープレキシティによる性能評価は認識率に直結しないこともある.