0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIに変換候補を選ばせるIMEを作ってみた

0
Posted at

Mozcの使いやすさに、AIの文章を読む力を加えました

日本語入力でよくある困りごとは、ひらがなを漢字に変えられないことではありません。変換はできても、文章の意味に合わない漢字が最初に出てくることです。

たとえば、同じ『はな』でも前の文章によって変わります。

彼の顔のはな → 鼻

庭には美しいはな → 花

『けっさい』も同じです。

役員が稟議書をけっさい → 決裁

オンラインで代金をけっさい → 決済

YAMATANA AI IMEは、Mozcが作った変換候補を、入力中の文章に合う順番へ並べ直します。AIに文章を自由に作らせるのではなく、Mozcの候補の中から選ぶ仕組みです。

実際のMozc候補を使って調べました

あらかじめ用意した候補ではなく、実際のMozcに変換させて、Mozcが出した候補をそのまま調べました。普段の入力に近づけるため、変換する単語の後ろの文章は使わず、すでに入力されている前の文章だけを使っています。

  • 日常、仕事、IT、医療、製造、数字など210例
  • 単語だけの場合と、助詞や活用を含む場合を確認
  • Mozcが出した上位5候補をAIが比較
  • 1回の変換は2秒以内
Mozcだけ AIを加えた場合
自然な表記を含めた正解 152/210 (72.4%) 208/210 (99.1%)
誤って悪化した例 0例
2秒を超えた例 0例

3時と三時のように意味が同じ表記は正解に含め、鼻と花、決裁と決済のように意味が変わるものは別の答えとして数えています。

この結果は検証用の210例によるもので、製品全体の精度や大規模ユーザーログの結果ではありません。条件とデータを公開して、誰でも確認できるようにしています。

実際に改善できた例

日常の言葉

彼の顔のはな → 鼻

夕食前に食卓へはし → 箸

贈り物を包む厚いかみ → 紙

喉を潤す甘いあめ → 飴

仕事やITで使う言葉

出張後すぐ経費をせいさん → 精算

公開前に記事をこうせい → 校正

仕様変更に関する顧客のいこう → 意向

深夜に発生したしょうがい → 障害

数字や順位

会議はさんじ → 3時

参加者はごにん → 5人 / 五人

前回の成績はだいごい → 第5位 / 第五位

数字なら何でも算用数字にするわけではありません。一石二鳥や第三者のように、漢数字のまま使う表現もあります。

MozcとAIの役割を分けています

Mozcは変換候補を作り、AIは文章に合う候補を選びます。AIが迷っているときは、無理に候補を変えません。新しい候補を出すことより、正しい変換を壊さないことを優先しています。

まだ改善できるところ

だい / ご / いを別々に処理せず、第五位という一つの言葉として考えること。じゅうごにちを15日としてまとめること。Mozcに候補がないじゅうにこ → 12個のような表現を安全に補うこと。

次は、メモ帳やブラウザなど、通常のWindows入力画面でも同じ結果になるかを確認します。

ソースコードと検証結果

YAMATANA AI IMEのソースコード、Mozcとの連携、AIによる候補選び、検証用データとスクリプトはGitHubで公開しています。

👉 YAMA-TANA/yamatana-ai-ime
https://github.com/YAMA-TANA/yamatana-ai-ime

YAMATANA AI IMEは、Mozcの安定した変換を土台に、文脈に合う候補を先に出せるIMEを目指しています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?