小寺信良のIT大作戦

コードを書かずに“自分専用IME” 日英を自動切り替えできる「Meltype」にAI変換を載せてみた(2/2 ページ)

MeltypeにZenzaiを搭載する実験

 以前ならここで引き返しているところだが、せっかくソースコードも公開されており、今はAIがあるので、MeltypeでZenzaiを使用するというバージョンは制作可能なのか、Codexに相談してみた。

 Codexは12分ほどいろいろビルドと検証を行っていたが、GPUを使った推論ライブラリの動作には失敗した。しかしCPUでの動作には成功したので、その方向でビルドすることにした。

GPU動作には失敗したが、CPU動作は成功した

 このバージョンをインストールして試用してみたところ、誤変換が大幅に減り、かなり実用に耐えるものとなった。これまで英単語入力には、英単語のみを個別に入力したのち、F10キーを押すという方法で凌いできたが、そうした細切れ入力を行う必要がなくなったのは快適である。

 しかしそうなるとまた欲が出るものだ。ビルドしたものは新規のIMEということになってしまい、これまで使用してきたユーザー辞書は参照されない。筆者が登録した変換ができなくなってしまった。

 Mac版にはユーザー辞書を参照する仕組みはあるが、登録画面はないので、ユーザー辞書はファイルを置いて自力で移行する必要がある。これもCodexにお願いして実装してもらった。

ユーザー辞書をMetypeへ移植

 登録した単語変換も無事使えるようになったのはいいのだが、2文字を入力すれば特定の単語に変換するといった登録をしていたので、それが邪魔するようになった。例えば「のぶ」と入力すれば「小寺信良」に変換できるとか、「ぶら」と入力すれば「Blackmagic Design」に変換されるとかいった小技で効率化してきたのである。

 これまでazooKeyを使っていたときには通常変換に支障を来すことはなかったのだが、Meltypeでは普通に文字入力している間にそれが挿入されるようになってしまった。例えば「ぶらうざ」と入力したら、「Blackmagic Designウザ」が第一候補に出てくる。これはどう考えてもマズい。

一般的な変換にもユーザー辞書が邪魔をするように

 どうしてこうなるのか、入力から変換までのいきさつを調べてみると、以下のようになっていることが分かった。

  1. 読みを先頭から走査し、その位置で一致する最長の辞書登録を探す。
  2. 一致した部分を独立した文節として切り出し、登録語を優先候補にする。
  3. 一致しなかった部分だけを変換エンジンに渡す。

 つまり2文字で登録したユーザー辞書があるので、Meltypeの単語切り分けが動作する前に、最長が2文字で登録された変換内容が先に提示されているわけだ。もともとこうした特殊な変換ルールは、文章の一気入力の中で必要になるわけではなく、その2文字だけを個別に変換するという使い方をしている。つまり先にそれが変換される必要がない単語登録なのである。

 そこでユーザー辞書の参照位置を変更して再度ビルドするよう、Codexにお願いした。つまり

  1. 読みを先頭から走査し、Meltypeが日本語と英語の単語切り分けを行う。
  2. 日本語として判断された部分を変換エンジンに渡す。
  3. 変換エンジンは通常処理として単語切り分けとユーザー辞書参照を行う。

 という順番である。

 これで変換途中に登録した2文字が出現しても、それが優先的に変換されることはなくなった。ようやくここで期待した通りの動作となった。

 これで万事めでたし…と言いたいところだが、まだ多少の問題はある。例えば変換なしに一気に文字入力をしていると、一定の文字量を超えたところで加速度的に反応が遅くなる。これは筆者が勝手にZenzaiを使うバージョンを作ったからであり、本来のMeltypeでは発生しない問題である。これはまた徐々に修正していくつもりだ。

 またZenzaiで変換候補を探しているときに、候補を下に送っていくときにはスペースキーでいけるのだが、逆に上に上がっていくときにはShift+スペースキーで戻れない(下に送られる)といった問題がある。これは変換候補ウィンドウを出しているMeltype側の問題のように見える。

 とはいえ、Meltypeの方法論、つまり変換エンジンに投げる前に英語を切り出すという方法論は、有効であることが分かった。こうしたことが重要になるのも、日本語というものが多言語表現をそのまま取り込んで文中で示すことができるという、柔軟性を備えるからである。

 全てのOSや変換エンジンに対応していくのは大変だろうが、変換エンジンをいじらずに入力の負担だけを減らすというアプローチには魅力がある。できれば日本語入力開発者側でも、この方法論の採用を検討してほしいところである。

印刷する
SNSでシェア
SpecialPR

小寺信良のIT大作戦

ベテランのテクノロジーライターである小寺信良さんがIT分野全般にわたって考察する。

この連載の記事をもっと見る

この記事の著者

関連記事

こんなメディアも見られています

ITmedia NEWSに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。

メールマガジンを配信中
メールマガジンを配信中

国内外の業界動向、AIやクラウドなどの最新技術、キャリア情報など今知りたい情報をまとめてお届けします。

いますぐご登録

本日の新着記事

アクセスランキング

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10

ITmedia NEWS SNS

X @itmedia_newsをフォロー

インフォメーション

ITmediaNEWSをフォロー

あなたにおすすめの記事PR