統計的かな漢字変換 chaime

22
小小小NAIST 小小小 小小 小小小小小 () (PFI 小小小小小小小小小小小小小小 2008 小 12 小 28 小 小小 () @ 小小小小

Upload: berg

Post on 12-Feb-2016

88 views

Category:

Documents


0 download

DESCRIPTION

統計的かな漢字変換 ChaIME. 小町守( NAIST ) 森信介(京大)・徳永拓之( PFI ) 第一回入力メソッドワークショップ 2008 年 12 月 28 日(日) @ 京都大学. 自己紹介 : 小町守. 奈良先端科学技術大学院大学 自然言語処理学講座(松本研) D2 ChaSen, MeCab, Namazu の研究室 インターン(共同研究)先 : NTT ( 3 年前 - 今年) , Microsoft Research (去年) , Yahoo! Japan 研究所(今年 - 来年) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 統計的かな漢字変換 ChaIME

小町守( NAIST )森信介(京大)・徳永拓之( PFI )第一回入力メソッドワークショップ

2008 年 12 月 28 日(日) @ 京都大学

Page 2: 統計的かな漢字変換 ChaIME

奈良先端科学技術大学院大学◦ 自然言語処理学講座(松本研) D2 ChaSen, MeCab, Namazu の研究室

インターン(共同研究)先 : ◦ NTT ( 3 年前 - 今年) , Microsoft Research (去

年) , Yahoo! Japan 研究所(今年 - 来年) (少し前まで) Gentoo Linux 開発者、東大

Fink チーム開発者 Id:mamoruk 「生駒日記」

2

Page 3: 統計的かな漢字変換 ChaIME

Web の拡大→ユーザ入力文書増大◦ 新語や新表現の変換はストレスフル

3

新しくなって本当に使いづらい・・・前に戻してもらいたいです。慣れれなのかな〜どぅゃら、風邪をひぃてしまぃました 。 頭重ぃし、鼻水がズールズル… でも仕事休めなぃし だるぃし ー カラダ ーもぅ嫌ャーッ !!!ねぇよ こどもやばす wwwwwwwwww 天丼ww おいおい かあいいww ちょww ...

Page 4: 統計的かな漢字変換 ChaIME

Web データを処理したいがタグつきデータ・辞書がない(特にフリーで使えるもの)◦ NAIST-jdic (旧 IPADic )◦ Google 日本語 N グラム

辞書やコーパスに正しく情報(品詞・単語境界)振るのは(一般の人には)難しい◦ (できるだけ)品詞情報を用いないで処理したい◦ 自然言語処理における文節と IME における文節の違い

( eg. 東京特許許可局)

4

Page 5: 統計的かな漢字変換 ChaIME

大規模コーパスの利用◦ できるだけ人手をかけないでメンテナンス◦ Google 日本語 N グラム◦ Web コーパス 5 億文◦ Wikipedia ・ etc…

統計的な理屈づけ 品詞情報を用いない頑健なかな漢字変換

◦ Web に出現する全単語を用いる→凝った未知語処理はしない

5

Page 6: 統計的かな漢字変換 ChaIME

ルールによる変換◦ Canna◦ 要言語学(国語学)的知識◦ 必ずしも精度よく変換できるとはかぎらない

N 文節最長一致法◦ (昔の) ATOK, VJE, Wnn など◦ 要人手によるパラメータチューニング

接続コスト最小法◦ WXG, (少し前までの) MS-IME など◦ 要人手による辞書チューニング

6

Page 7: 統計的かな漢字変換 ChaIME

入力 : にわにはにわにわとりがいる。

7

ワニ

埴輪

コストが一番低いパスを選ぶ→コストは辞書に書いてある(人手)

10

10

20

30

15

30

20

20

20

10

10

20

30

15

35

25

10

20

10

10

20

20

30 40

20

10

10

30

20

80

85

20

10

4010

10120

30100

10100

5010

9070

40

Page 8: 統計的かな漢字変換 ChaIME

森ら( 1998 )の提案 P(x|y) の降順に変換可能文字列 (x1, x2, …) を

提示する◦ x: 文 , y: 入力

MS-IME 2007, ATOK 2008 が統計的手法を採用

8

かな漢字モデル 言語モデル

×

Q P(x | y) = P(y | x)P(x)P(y)

によるランキング

P(y | x)

P(x)

Page 9: 統計的かな漢字変換 ChaIME

9

かな漢字モデル言語モデル

接続コスト最小法の自然な拡張になっている

ワニ

埴輪

10

10

20

30

15

30

20

20

20

10

10

20

30

15

35

25

10

20

10

10

20

20

30 40

20

10

10

30

20

80

85

20

10

4010

10120

30100

10100

5010

9070

40

Page 10: 統計的かな漢字変換 ChaIME

文を単語列          と見なすngram 言語モデル( i<1 は文頭、 i=h+1 は文末)

Google 日本語 N グラムデータ( 200 億文)から表記の 1-2 グラムを計算して使用◦異なり 1グラム数 :250万◦異なり 2グラム数 :8,000万

10

Mw,n (w) = P(wii=1

h+1

∏ |wi−n+1i−1 )

w1h = w1w2L wh

我が輩 は 猫 である

文頭 文末

日本語っぽい単語列の確率は高く、日本語っぽくない単語列の確率は低く

Page 11: 統計的かな漢字変換 ChaIME

確率は読みが振られたコーパスから最尤推定

毎日新聞 95 年分 1年に MeCab で分かち書き・読みを付与して使用

11

Mkk (y |w) = P(y ii=1

h

∏ |wi )

P(y i |wi) =f (y i,wi)f (wi)

f (e)コーパス中の頻度

克明こくめいかつあき

小野克明さん( 43 ) 克明なやりとりが判明

出現する単語の読みはなんだったか推定するモデル

Page 12: 統計的かな漢字変換 ChaIME

規則ベース◦ なにをやっているのかはっきり分かる◦柔軟な前処理・後処理◦問題が簡単なときは規則ベースで書き尽くすこともできる◦アドホックなヒューリスティック(要言語学的直観)◦ 「必殺パラメータ」

統計的手法◦数学的モデルに基づいた理論的根拠◦ 変換規則や辞書に当たる知識を自動で学習(人手不要)◦ なにやっているのかよく分からない◦ コーパスに激しく依存◦ 変化の微調整が難しい

12

Page 13: 統計的かな漢字変換 ChaIME

http://cl.naist.jp/~mamoru-k/chaime/

13

Page 14: 統計的かな漢字変換 ChaIME

ChaIME ATOK 2007 Anthy 9100c AjaxIME請求書の支払日時 請求書の市は来日

時請求書の支払い日時

請求書の支払いに知事

近く市場調査を行う。

知覚し冗長さを行う。

近く市場調査を行う。

近く市場調査を行う。

その後サイト内で その五歳都内で その後サイト内で その後再都内で

去年に比べ高い水準だ。

去年に比べた海水順だ。

去年に比べたかい水準だ。

去年に比べ高い水準だ。

昼イチまでに書類作っといて。

昼一までに書類津くっといて。

昼一までに書類作っといて。

肥留市までに書類作っといて。

そんな話信じっこないよね。

そんな話心十個内よね。

そんなはな視診時っこないよね。

そんな話神事っ子ないよね。

初めっからもってけばいいのに。

恥メッカら持って毛羽いいのに。

恥メッカ羅持ってケバ飯野に。

始っから持ってけば良いのに。

熱々の肉まんにぱくついた。

熱々の肉まん二泊着いた。

あつあつの肉まん2泊付いた。

熱熱の肉まんにぱくついた。 14

Page 15: 統計的かな漢字変換 ChaIME

Anthy http://anthy.sourceforge.jp/◦ HMM → MEMM による識別モデル(の亜種)◦ 文節分割された読みつきコーパスから学習◦ 表記の素性を用いていない◦ 文法体系が難しい(文節・品詞の判断)

Social IME http://social-ime.com/◦複数人による辞書共有機能◦アルゴリズムは Anthy と同じ

15

Page 16: 統計的かな漢字変換 ChaIME

AjaxIME http://ajaxime.chasen.org/◦ MeCab-skkserv による連文節かな漢字変換◦読みが振られたコーパスから変換コストを推定◦ コーパスが小さい・素性がスパース

Sumibi http://www.sumibi.org/◦ 単語分かち書きによるかな漢字変換◦ 生コーパスから連接コストを推定(言語モデル)◦ 辞書にない単語の変換ができない◦連文節変換ではない

16

Page 17: 統計的かな漢字変換 ChaIME

統計に基づくかな漢字変換エンジンを開発している◦ Google 日本語 N グラム・新聞記事を用いた実装・デモを公開中

◦ ソースコードは Google Code にある(動かすには Google 日本語 N グラムかそれに相当するデータが必要)

統計的かな漢字変換は、規則ベースに比べ、◦数学的根拠がある◦ 大規模なデータから辞書・パラメータを自動推定できる◦ なにをやっているのかよく分からない◦ コーパスに依存する(「コーパスの品格」)◦細かい調整ができない

17

Page 18: 統計的かな漢字変換 ChaIME

単語 2グラムでは出現しない単語の組み合わせも大量にある

1. クラスタリングによる精度向上2. →モデルサイズの圧縮にもつながる

→Exchange アルゴリズムを用いて単語クラスタリング

18

Page 19: 統計的かな漢字変換 ChaIME

単語を尤度最大になるクラスタに移動

Exchange Exchange アルゴリズムアルゴリズム

19

単語辞書

太郎

うさぎ

次郎まどか愛子

オオカミ日本語

アメリカ

仏蘭西

ロシア

キーボードマウス

ひよこ

太郎

600

1000

300

200

300

Page 20: 統計的かな漢字変換 ChaIME

それ以上クラスタの変動がなくなれば終了

Exchange Exchange アルゴリズム(アルゴリズム( 22 ))

20

単語辞書

うさぎ

次郎まどか愛子

オオカミ

日本語

アメリカ仏蘭西ロシア

キーボード

マウス

ひよこ

太郎

Page 21: 統計的かな漢字変換 ChaIME

単語辞書を分割して実行

Exchange Exchange アルゴリズムをアルゴリズムを HadoopHadoop

21

単語辞書

オオカミひよこうさぎ

日本語黒板芋

アメリカ仏蘭西キーボード

ロシアマウスまどか

次郎愛子太郎

Page 22: 統計的かな漢字変換 ChaIME

クラスタ 2グラムを動かす◦ 1 万語で 1 時間程度◦ O(反復回数 *単語数 *(2 グラム数 + クラスタ数 ))

変換ログを用いた変換候補のリランキング

今後の予定今後の予定

22