日本語かな漢字変換における識別モデルの適用とその考察
徳永拓之
岡野原大輔
株式会社 Preferred Infrastructure{tkng, hillbig}@preferred.jp

1

はじめに

3

関連研究

これまでのかな漢字変換システムの研究では，確率1990 年代までのかな漢字変換エンジンは，n 文節最モデル，特にその中でも生成モデルを利用したものが長一致と呼ばれるヒューリスティックや，人手によっ多く，識別的な手法を用いたものはあまり見られない．て調整されたルールに基づいて変換を行うものであっ

しかし，近年の研究成果により，大規模データを用いた．しかし，ルールベースの手法にはルールのメンテた識別的なモデルの学習も容易となってきた．

ナンスが煩雑であるという問題があり，確率モデルに生成モデルには教師なし学習が可能であるというメ基づくかな漢字変換システムが提案された．

リットがあるが，データの生成過程をモデル化する前

森らは確率的言語モデルを用いたかな漢字変換を提提上，パラメーターに対する制約が強く，教師あり学案した [6]．彼らが用いたのはクラスバイグラムと呼習で識別性能のみを最大化するのが目的であれば，よばれる言語モデルを用いる手法である．

り直接的な識別モデルを利用した方が良い結果が得ら

Gao らは，識別的言語モデルを利用したかな漢字変換に関する実験結果を報告している [7]．ただし，彼れることが多い．
また，識別モデルには素性設計の自由度が高いといらの研究はドメイン適応が目的であり，生成モデルにうメリットがある．例えば品詞バイグラムと表記バイ

よって得られた上位 n 個の変換候補へのリランキング

グラムの両方の素性を同時に取り込んでパラメーターに識別モデルを利用している．

推定する事は困難である．識別モデルであれば，このかな漢字変換と形態素解析には共通する部分が多い．

ような場合でも識別器に与える素性を増やすだけで，工藤らは形態素解析に対して識別的な確率モデルであそれぞれの素性に与える重みは最適化アルゴリズムにる条件付確率場を適用した [8]．条件付確率場は，labelよって自動的に調整される．

bias や length bias に弱いという既存の手法の弱点がそこで本研究では，識別的な手法を用いて構築した
かな漢字変換システムと生成モデルを用いた場合とをなく，隠れマルコフモデルや最大エントロピーマルコフモデルと比較し精度が良いことを示している．

比較し，性能差を調べた．

42

かな漢字変換とは

確率的言語モデルに基づくかな漢字変換

かな漢字変換は，仮名文字列の入力に対し，適切な確率的言語モデルに基づくかな漢字変換では，入力漢字かな混じり文を返す問題である．入力 x についての変換候補 y1 , y2 , y3 . . . を，スコア f (x, y) の降順

x についての変換候補 y1 , y2 , y3 . . . を，確率 P (y|x)に基づいて降順に提示する．P (y|x) はベイズの定理に提示する．本稿では，変換例の集合からスコア関数を用いて P (x|y)P (y)/P (x) ∝ P (x|y)P (y) と変形すf (x, y) を学習するタイプのかな漢字変換について議ることができる．P (y) は言語モデルそのものであり，論する．具体的な f の構成の手順については 4 節と 5P (x|y) はかな漢字モデルと呼ばれる．

節にそれぞれ示す．

言語モデル P (y) は尤もらしい単語列に対し高い確率を与えるモデルである．かな漢字変換においては，連続する二つの単語表記に基づいた単語バイグラムモデルや，単語をクラスタリングした結果に基づいたクラスバイグラムモデルなどが多く利用される．

かな漢字モデル P (x|y) は，単語 (列) に対し尤もら

1X
ri (w) + λ|w|n i=1n

しい読みがなに対し高い確率を与えるモデルである．

(2)[6] ではかな漢字モデルとして，単語列を単語に分解し，それぞれの単語の表記に対するよみがなの確率の積をかな漢字モデルとして用いている．

λ > 0 は損失項と正則化項とどちらを重要視するかを決めるパラメーターである．また，ri (w) は識別的手法に基づくかな漢字変換

max(w · f (x(i) , y) + L(y)) − w · f (x(i) , y (i) ) (3)5次に，識別的手法に基づくかな漢字変換を説明する．
入力 x についての変換候補 y1 , y2 , y3 . . . を，スコアf (x, y) に基づいて降順に提示する．

y∈Yとなる．
この目的関数を最小化するような w を求めるため，パラメーター最適化に FOBOS[1] を用いた．

スコア関数 f (x, y) は，素性関数 Ψ の和に分解され，有効な素性の重み付き和がスコア関数の値となる．本
研究では，ビタビアルゴリズムで探索ができるよう，素性関数の引数として x, yj−1 , yj のみを用いるものと

FOBOS による構造化 SVM の学習

5.2

する．これにより，入力 y についての変換候補 x のFOBOS はパラメーター最適化手法の一種であり，オンライン型としてもバッチ型としても使うことがスコアは，下記の式で計算されることになる．

できる．本研究ではオンライン型の FOBOS を用い

f (x, y) =XXjた．オンライン型の場合，FOBOS は確率的勾配降下

wk Ψk (x, yj−1 , yj )(1)k法 (以下 SGD) や劣勾配法の改良と見なすことができる．SGD ではサンプル毎に目的関数の (劣) 勾配の方

ただし，素性関数は K 個存在するものとし，wk は向へとパラメーターを更新するが，FOBOS ではこのそれぞれの素性関数の重みパラメーターであるものとパラメーター更新を損失項と正則化項の二つに分割する．wk をまとめたものを w ∈ RK とする．
識別モデルは x を利用した素性関数が自由に設計できる点で生成モデルよりも強力である．

する．

FOBOS では，損失項に関しては SGD(や劣勾配法)とまったく同様に計算する．正則化項の計算方法がかな漢字変換のような構造学習に適用できる識別モ

FOBOS の大きな特徴で，閉じた形で新しい正則化後デルとしては条件付確率場 (CRF)[3] や構造化 SVM[5,のパラメーターの値を求める．これにより，特に L14] などがある．素性が同じであれば構造化 SVM と正則化の際にスパースな解を効率よく求めることがでCRF の性能はほぼ同じであるという報告 [2] に基づき，今回は実装が簡単であった構造化 SVM を採用した．

きるようになっている．
リスト 5.1 に，FOBOS による構造化 SVM 最適化の擬似コードを示す．

5.1

構造化 SVM

構造化 SVM は SVM を構造学習のために拡張した

for (x(i) , y (i) )ものである．本研究では 1 正則化線形構造化 SVM をy ∗ = argmaxy f (x(i) , y) + L(x(i) , y)用いる．

if y ∗ 6= y (i)1wi+ 2 = w(i) − η ∇(f (x(i) , y ∗ ) − f (x(i) , y (i) ))i 番目の学習用のデータの (x(i) , y (i) ) で表すものとし，i 番目の学習用データに対する損失を Li (y) と表for k ∈ K記するものとする．Li (y) は，y = y (i) の時にのみ 0wk(i+1)

i+ 11)(i+ 2= sign(wk 2 ) max{|wk| − λη, 0}となり，それ以外の場合には 0 より大きな値を取るものとする．本研究では，かな漢字変換をグラフの最短経路問題として定義した際に，正解の経路以外の頂点と辺に対して 1 を与え，Li (y) はその合計の値とした．

L1 正則化の場合，構造化 SVM における目的関数は以下の式 2 で表現される．

リスト 5.1 構造化 SVM による学習

sign は引数の符号に合わせて 1,-1 を返す関数であり，η は学習率である．

∇ は勾配を求める関数である．ただし，SVM の損失関数は微分不可能な点を含むため，厳密には勾配を用いることはできない．そのため，微分不可能点では数を NLCS としたとき，精度は NLCS /NCOR で，再勾配の代わり劣勾配を用いるものとする．

現率は NLCS /NSY S で定義される．

素性関数 Ψk を，その素性が有効になったときに kの次元にのみ 1 を返し，それ以外の次元はすべて 0 であるベクトルを返す関数と考えると，勾配は以下の式で計算できる．

∇f (x, y) =

実験結果

6.3

実験結果を表 1 に示す．提案手法は精度，再現率とXXj

もに既存手法を約 3%上回った．

Ψk (x, yj−1 , yj )(4)k

表 1: 変換性能の比較
変換エンジン

実験と考察

66.1

実験の設定

精度

再現率

確率的言語モデル

89.1%

88.1%

構造化 SVM

91.8%

91.4%

生成モデルと識別モデルを比較するため，京都大学
テキストコーパス (ver 4.0) を用いて実験を行った．学習には 1 月 1 日分から 1 月 15 日分までの 14 日分 (計16149 文) を用い，1 月 16 日と 17 日の 2 日分 (計 2047文) で評価を行なった．数詞に関しては京都大学テキストコーパスのままでは明らかに学習が困難であった

誤変換の例

6.4

変換結果とコーパスの比較に基づく誤変換の例を以下に挙げる．

ので，前処理として漢数字および全角数字は 1 文字で1 形態素へと分解した．

6.4.1

同音異義語の間違い生成モデルとしては，クラスバイグラムを言語モデルとして用いる確率的言語モデルに基づくかな漢字変換エンジンを用いた．言語モデルは，クラスバイグラ
ム，単語表記バイグラム，単語表記ユニグラムの線形和を用いた．重み付けは特に行っていない．森ら [6]コーパス しかし 衛星 は分離され，地球 周回 軌道に入った．
変換結果 しかし 衛生 は分離され，地球 集会 軌道に入った．

はクラスとして単語をクラスタリングした結果を用いているが，今回の実験では品詞の細分類をそのままクラスとして用いた．
識別モデルとしては，構造化 SVM に基づくかな漢周回軌道という連語を認識できていない．“衛生” に関しては，“地球” のように少し離れた位置との共起情報を用いないと正しい変換は難しい．

字変換エンジンを用いた．素性として，クラスバイグ
ラム，単語表記バイグラム，単語の表記と読みのペア

6.4.2

未知語の間違いを用いた．構造化 SVM の学習は性能が収束するまで繰り返した．実験結果として，コーパスに対して学習処理を 15 回繰り返した結果の値を記載している．学習器は C 言語で実装し，学習時間は Intel Core i7 920(2.67GHz) において約 8 分 10 秒であった．

6.2

評価基準

評価基準として，各文を一括変換することで得られる結果と正解との最長共通部分列 (Longest Common

コーパス ボー・バン・キエト 首相と首脳会談を行う．
変換結果 簿ー・晩・帰依と 首相と首脳会談を行う．

“ボー・バン・キエト” という人名が辞書に入っていなかった．

6.4.3

表記揺れの間違いコーパス 一 歳年下の弟は中学三年になる ところ だった．

Subsequence, LCS) の文字数に基づく精度と再現率を用いた．
正解コーパスに含まれる文字数を NCOR ，一括変換の結果に含まれる文字数を NSY S ，両者の LCS の文字変換結果 １ 歳年下の弟は中学三年になる 所 だった．
厳密には間違いではないが，コーパスと変換結果は食い違っている．

6.5

考察

参考文献

森ら [6] の挙げている，同音異義語，未知語，表記[1] John Duchi and Yoram Singer. Efficient online

揺れ，という 3 種類の誤変換の分類は，本研究にもそand batch learning using forward backward splitting. Journal of Machine Learning Research,
Vol. 10, pp. 2899–2934, 2009.のまま当てはまる．
表記揺れについては個別に適応するしかないし，未知語に関しては何らかの未知語獲得装置を考えるしかないであろう．同音異義語については，“周回軌道” のように単語として辞書に取り込むことで改善できそうなもの，“衛星” のように単語の間の共起関係を用いることで改善できそうなものが存在した．

7

おわりに
本研究では，識別的な機械学習アルゴリズムを用いたかな漢字変換の手法を提案した．
提案したモデルは構造化 SVM を用いてパラメーターを最適化することによってコーパスから学習を行[2] Selvaraj Sathiya Keerthi and Sellamanickam
Sundararajan. Crf versus svm-struct for sequencelabeling. Yahoo Research Technical Report, 2007.
[3] John Lafferty, Andrew McCallum, and Fernando
Pereira. Conditional random fields: Probabilistic models for segmenting and labeling sequence
data. In In Proceedings of the Eighteenth International Conference on Machine Learning, 2001.
[4] Nathan Ratliff, J. Andrew Bagnell, and Martin A. Zinkevich. (online) subgradient methods

う．コーパスを用いた実験によって生成モデルと比較

for structured prediction. In Eleventh International Conference on Artificial Intelligence and

し，精度と再現率の両方で約 3%の性能の向上が得ら

Statistics (AIStats), March 2007.

れる事を確認した．
今回の実験で用いたデータはあまり大規模ではない．
大規模データに適用した場合にどこまで精度の向上が得られるかを調査することは，今後の課題である．
識別モデルの利点の一つとして，素性関数の設計の自由度が高いという点が挙げられる．しかし，今回は素性に関してはよみ，表記，クラス (品詞) の 3 種類のみしか用いていない．また，隣接している単語よりも遠い情報は素性として用いていない．入力文字列す[5] Ioannis Tsochantaridis, Thorsten Joachims,
Thomas Hofmann, and Yasemin Altun. Largemargin methods for structured and interdependent output variables. Journal of Machine Learning Research, Vol. 6, pp. 1453–1484, 2005.
[6] 森信介, 土屋雅稔, 山地治, 長尾真. 確率的モデルによる仮名漢字変換. 情処論, Vol. 40, No. 7, pp.
2946–2953, 1999.

べてを素性として組み入れた場合にどうなるかについても実験したい．

[7] Jianfeng Gao, Hisami Suzuki, and Bin Yu. Ap-る．今後は今回開発したエンジンを組み込んだ日本語

proximation lasso methods for language modeling. In Annual Meeting of the Association for
Computational Linguistics, Sydney, Australia,入力システムを開発し，実際に利用した際にどのようJuly 2006.

本研究で用いたオンライン学習は，変換結果のユーザーからの訂正による個人適応にも自然に応用できな結果が得られるかを実験する予定である．既存のかな漢字変換エンジンでは，学習の副作用としてこれまで変換できた文の変換ができなくなってしまう点がよく問題として挙げられるが，この理由としては，そもそも理論的な裏付けの乏しいルールベースでの学習である（と考えられる）こと，ユーザーの操作誤りにより，誤った状態で確定された文を学習してしまうことの 2 点が原因として考えられる．単純にオンライン学習を適用するだけでなく，操作誤りを検知するような仕組みに関しても検討してゆきたい．

[8] 工藤拓, 山本薫, 松本裕治. Conditional random
fields を用いた日本語形態素解析. 情報処理学会自然言語処理研究会 SIGNL-161, Vol. 47, pp. 89–96,
2004.