2008年11月16日日曜日

UniDicをiPhoneで使う

最初に書いておきますが学習してないと実用に耐えません。

形態素解析辞書UniDicが無料でダウンロードできるようだったので、iPhone用の漢字変換辞書を作ってみました。

もともとUniDic辞書は 「かな漢字まじり文」(日本語テキスト)を「分かち書き」(形態素解析)する為の辞書ですので、これを適当に書き換えて「よみ」を「漢字」に変換する辞書にします。
今回は文脈IDとコスト値は再学習させずそのまま使ってみました。(→結果大失敗)
まあ、予想はしてましたがかなり酷い変換具合です。


ちゃんと学習させれば賢くなりそうですが、学習用テキストを用意して・・・やるのは大変;;

**UniDicやMeCabの問題ではなく、単に学習させる工程を省いていることに因ります。**

自分で辞書を作ってみたい方は
1.UniDicのMeCab版ソース辞書をダウンロード
2.中に入っているMeCab用のCSVをsysdic2csvで使える形式に変換
3.sysdic2csv v0.14でsys.dicに変換
4.作成したsys.dicとmatrix.binをiPhoneへ転送

1はこちらから。(ダウンロードには登録が必要です:無料)
2と3はこちらのツールで。
4のmatrix.binはパッケージ版に入っている物かソース版からMeCabで作成してください。


*注意点

・iPhone3G v2.1 のsys.dicは左文脈IDと右文脈IDが同じだった為、sysdic2csv v0.13までは一つのIDとしてまとめていましたが、本来MeCabの辞書では区別があります。
今までのバージョンでは変換できない為少し変更(v0.14)してあります。
(例:"かな","左文脈ID","右文脈ID","コスト","漢字")

・unidic_csv変換は1つずつD&Dして下さい。Others.csvはエラーが出るので使いません。

・普通に変換するとmatrix.binが28MB、sys.dicが14MBになります。もともとが5.6MB/9.8MBですので、メモリ圧迫によりiPhone側のアプリが落ちやすくなると思われます。
(でも思ったほどもっさりはしない。変換時辞書ファイル内の参照領域が局所的だから?)


*最後に
今までiPhone2.1の変換に不満を抱いたことは無かったんですが、このページを見て不満がある人もいるんだなぁと・・・少しでも正確な変換が出来るかと期待したけどお手軽にやるのは無理でした;;

0 件のコメント: