PRUV開発室

AIチェック機能リリース

カテゴリー:新機能  作成日:2023-12-03

一部のPRUV Businessユーザーのみに提供していたAIチェック機能を公開機能としてリリースしました。現時点では、P2LM(PRUV Poor Language Model)のみ利用可能です。単語の出現確率を推論し、確率がしきい値以下の単語を指摘します。

AIチェック機能を利用する場合は、[辞書&オプション機能選択]-[拡張機能]で機能をオンにしてください(デフォルトはオフ)。

これに伴い、サーバリソースを節約するためPRUV Trialの入力可能文字数は800文字となります。

●P2LMとは

ChatGPTに代表されるLLM(Large Language Model:大規模言語モデル)を動かすことができない貧弱(poor)なサーバで利用することを目的に独自開発した言語モデルです。性能よりも、「(一応使える)言語モデルをどこまで小さくできるか」を追求した実験的な実装です。

LLMのサイズはGBクラスであり、演算量が膨大なことから推論にもGPUが必要です。それに対してP2LMはPRUVが事前学習させたBERTのモデルで、100MB以下であることが最大の特徴です。モデルが小さいが故にメモリに常駐させることができ、演算量も少ないのでGPUレスのサーバでも推論が可能です(学習時はGPU必須)。

●制限事項

モデルを極限まで切り詰めた代償として能力もpoorです。P2LMの仕様として、以下が挙げられます。

・修正案を提示することはできない
 出現確率がしきい値以下の単語を指摘するのみです。

・意味情報を捨てているため誤変換を認識しない
 「店が回転」(正:開店)などの正誤を判定することはできません。

・名詞の誤入力を認識しない(「未知の単語」として扱う)
 「ショッフ」が「ショップ」の誤入力だと判断するためには、「ショップが正しい」という情報をAIが知っている必要があります。全ての単語で判定するためには全ての単語を知っている必要があります。でなければ、「知らない単語は全て誤り」と判定してしまいます。P2LMは「知らない単語=AIが知らないだけ」と捉えてスルーします。故に「ショッフ」を誤りと見なすことができません。

・学習データにあまり含まれていない単語を誤りとしてしまいがち
 あるいは、頻繁に使われているがさまざまパターンで使われる単語は、各パターンの学習データが十分ではない場合があります。これについては学習データをさらに拡充することで改善する可能性があります。

このようにミスを認識できない&誤検知が発生するという問題がある一方で、意外な誤入力を検知することもあります。このAIを利用して発見した誤入力を辞書に登録する、AIの指摘で顕在化した不適切な形態素解析をチューニングする、といった形でPRUVの品質向上にも寄与してきました。

誤検知の多さが最大の課題でしたが、「AIで学習データの誤りを校正し、その学習データでAIを作り直す」というサイクルを繰り返すことで誤検知数も大幅に減少しました。というわけで、せっかく動いているのだから公開した上で改善を続ける、ということに致しました。

AIチェック機能をオンにすると文字数が2万文字に制限されます(従来通り5万文字まで入力できますが、後半の3万文字は無視します)。現状のサーバリソースではこれが限界ということで、ご了承ください。サーバ負荷の増大あるいはサーバ増強によって制限は増減する可能性があります。

AIの学習には、公開されているAI学習用コーパスやWikipediaをPRUVが独自に編集・校正したテキストデータを利用しています。PRUVユーザー様の入力データを利用することは、これまでも今後もありません

●今後の展開

LLMの登場によって、AIを巡る景色は一変しました。LLMでもないAIで「AI校正」を名乗ることはできないでしょう。

P2LMにはAI開発ノウハウの取得やPRUV自体の改善といった用途があるので改良は継続しますが、本命はLLMの活用です。今後はLLMへの投資を拡大して、本当の意味での「AI校正」を提供する方法を模索する予定です。