大規模データを用いた未知語を考慮した仮名漢字変換

CICP中間報告
ChaIME: 大規模コーパスを
用いた統計的仮名漢字変換
奈良先端大 松本研( D1 )小町守
(協力:京都大学 森さん・Y! Japan 徳永さん)
Special Thanks to 浅原さん・工藤さん
2008年2月27日(水)
開発の動機
• Webの拡大→ユーザ入力文書増大
 新語や新表現の変換はストレスフル
新しくなって本当に使いづらい・・・前
に戻してもらいたいです。慣れれなの
かな〜
どぅゃら、風邪をひぃてしまぃました。 頭
重ぃし、鼻水がズールズル… でも仕事休
めなぃしー カラダだるぃしー もぅ嫌ャーッ!!!
ねぇよ こどもやばす wwwwwwwww
w 天丼ww おいおい かあいいww
ちょww...
2
開発の背景
• Web データを処理したいがタグつきデータ・
辞書がない(特にフリーで使えるもの)
 祝 NAIST-jdic リリース
 Google日本語Nグラム
Qu ickT imeý Dz
TIFFÅiî Òà•
èk Åj êLí£ÉvÉ çÉ OÉâ ÉÄ
Ç™ DZÇÃÉsÉNÉ`É ÉÇ¾å ©Ç ÈÇž ǽDž Ç ÕïKóvÇ­Ç•
ÅB
Qu ickT imeý Dz
Qu i c k Ti m e ý Dz
TIFFÅiî Òà•
èk Åj êLí£ÉvÉ çÉ OÉâ ÉÄ
TIFFÅi îÒ à•
è k Åj ê L í £Év Éç ÉOÉâÉ Ä
ÅB
ǙDZ Çà És ÉNÉ`ÉÉǾ å ©Ç ÈÇž ǽ Ç…ÇÕ ïKó vÇ ­Ç•
ÅB Ç™ DZÇÃÉsÉNÉ`É ÉÇ¾å ©Ç ÈÇž ǽDž Ç ÕïKóvÇ­Ç•
• 辞書やコーパスに正しく情報(品詞・単語境
界)振るのは(一般の人には)難しい
 (できるだけ)品詞情報を用いないで処理したい
 NLPにおける文節とIMEにおける文節の違い
3
開発の目的
• 大規模コーパスによる統計的仮名漢字変換
 できるだけ人手をかけないでメンテナンス
 Google 日本語 N グラム
 Webコーパス5億文
 Wikipedia・etc…
QuickTimeý Dz
TIFFÅiîÒà•
èkÅj êLí£ÉvÉçÉOÉâÉÄ
ǙDZÇÃÉsÉNÉ `ÉÉǾå©ÇÈǞǽDžÇÕïKóvÇ­Ç•
ÅB
QuickTimeý Dz
TIFFÅiîÒà•
èkÅj êLí £ÉvÉçÉOÉâÉÄ
ǙDZÇÃÉsÉNÉ `ÉÉǾå©ÇÈǞǽDžÇÕïKóvÇ­Ç•
ÅB
QuickTimeý Dz
TIFFÅiîÒà•
è kÅj êLí£Év ÉçÉOÉâÉÄ
ǙDZÇÃÉsÉNÉ`ÉÉ Ç¾å©ÇÈǞǽDžÇÕïKóv Ç­Ç•
ÅB
• 品詞情報を用いない頑健な仮名漢字変換
 大規模コーパスだから表記の情報だけでもけっこ
う行けるはず
4
統計的仮名漢字変換
• 森ら(1998)の提案
• P(x|y) の降順に変換可能文字列 (x1, x2, …)
を提示する
 x: 文, y: 入力
•
=P(y|x)P(x)の降順に提示する
仮名漢字モデル × 言語モデル
 P(y|x): 確率的仮名漢字モデル
 P(x): 確率的言語モデル(単語ngram)
5
言語モデル
h 1
M w,n (w)   P(wi | w
i1
in 1
)
i1
h
w
• 文を単語列 1  w1w2
wh と見なすngram言
語モデル(i<1は文頭、i=h+1は文末)
• Google 日本語Nグラムデータ(200億文)か

ら表記の1-2グラムを計算して使用
 異なり1グラム数:250万
 異なり2グラム数:8,000万
6
仮名漢字モデル
h
M kk (y | w)   P(y i | wi )
i1
• 確率は読みが振られたコーパスから最尤推定
f (y i ,w i )
P(y i | w i ) 
f (w i )
コーパス
f (e) 中の頻度
• 毎日新聞95年分1年に MeCab で分かち書き・読み
を付与して使用

7
デモ
• http://ash.naist.jp/~mamoru-k/chaime/
• N-best 探索(前向きDP後ろ向きA*サーチ)が書
けなかったのでビームサーチ(ビーム幅200)
• 未知語に対する洗練されたモデルが必要
• 3グラム以上は使っていない(言語モデルが
巨大、1-2グラムだけですでに1.7GB)
• 生成モデルでは単語履歴などの素性を追加
していくのが困難
8
関連ソフトウェア(1)
• Anthy http://anthy.sourceforge.jp/
 HMM → MEMM による識別モデル(の亜種)
 文節分割された読みつきコーパスから学習
 表記の素性を用いていない
 文法体系が難しい(文節・品詞の判断)
• Social IME http://social-ime.com/
 複数人による辞書共有機能
 アルゴリズムは Anthy と同じ
12
関連ソフトウェア(2)
• AjaxIME http://ajaxime.chasen.org/
 MeCab-skkserv による連文節仮名漢字変換
 読みが振られたコーパスから変換コストを推定
 コーパスが小さい・素性がスパース
• Sumibi http://www.sumibi.org/
 単語分かち書きによる仮名漢字変換
 生コーパスから連接コストを推定(言語モデル)
 辞書にない単語の変換ができない
 連文節変換ではない
13
今後の予定
1. N-best の探索を書く
2. 未知語モデルを入れる
3. 単語2グラムでクラスタリングをする(クラス
タ2グラム)
4. クラスタ2グラムで単語分割・仮名漢字変換
を動かす
5. 識別モデルに移行?
14
謝辞と宣伝
• 本プロジェクトの一部は奈良先端科学技術大
学院大学 Creative and International
Competitiveness Project (CICP 2007) の支
援を受けています
• 他のCICPプロジェクト(音楽情報・言語教育)
を含めたポスター&デモがスプリングセミナー
2日目(3月7日)にあります。学生は人気投票
に参加できませんが、セミナー受講者と教員
は投票できるらしいですよ
16