ファインチューニングとは|追加学習でモデルを自社向けにする仕組み

追加で学ばせる AIの仕組みと用語

既存のモデルに、自分たちのデータを追加で学習させる手法です。

何ができて何ができないのか。他の手段とどう使い分けるのか。順に見ていきます。

どういう作業か

学習済みのモデルに、少量のデータでもう一度学習をかけます。

大規模な学習は、膨大な文章を読ませてから、人の指示に従うよう調整する段階を経ています。OpenAIのInstructGPT論文が示したのがこの工程で、いま広く使われているモデルは同じ流れを踏んでいる。

ファインチューニングは、その一番外側にもう一枚かぶせる作業です。土台は動かさず、出力の傾向だけを寄せる。

渡すのは「入力と、望ましい出力」の組です。数十件から数千件。何を学ばせたいかによって必要量が変わります。

向いていること

目的 向き
決まった書式で出させる 向いている
自社の文体に寄せる 向いている
分類のラベルを揃える 向いている
指示文を短くする 向いている
最新の事実を覚えさせる 向いていない
社内文書を参照させる 向いていない
形を教えるのは得意、中身を覚えさせるのは不得意

上の4つに共通するのは「振る舞いの型」です。毎回の指示で細かく指定していた内容を、モデル側に染み込ませる。結果として指示文が短くなり、入力トークンが減って費用も下がります。

知識を入れる用途には向かない

よくある誤解がここです。

社内マニュアルを学習させれば内容を覚えてくれる、と期待されがちですが、そうはなりません。学習で変わるのは応答の傾向であって、事実の索引が作られるわけではないからです。

学習させた文書の内容を、それらしい形で混ぜて答えることはあります。ただし出典を示せず、正確さも保証されない。かえって見分けにくい間違いが増えます。

社内文書を参照させたいなら、検索して渡す仕組みのほうが適しています。

どちらを選ぶか

判断は単純です。

「どう答えるか」を変えたいならファインチューニング。「何を知っているか」を変えたいなら検索の仕組み。この線で切り分けると迷いません。

両方を組み合わせる構成もあります。書式を学習で固め、事実は検索で渡す。手間はかかりますが、それぞれの弱点を補えます。

全部を学習し直すわけではない

モデルの中身を丸ごと書き換えるやり方は、費用が現実的ではありません。

そこで、元の重みは凍結したまま、小さな追加部分だけを学習させる手法が主流になりました。変更する量が桁違いに少ないので、必要な計算資源も小さく済みます。

利用者から見ると、どちらの方式かを意識する場面はあまりありません。提供元の管理画面から実行すれば、内部で適した方式が選ばれます。

知っておくと効くのは、費用の見積もりのとき。「モデルを作り直す」ほどの規模ではない、と分かっていれば、見積もりの桁を間違えません。

かかる手間

いちばん重いのはデータ作りです。

質のばらついた例を大量に渡すと、そのばらつきごと学習されます。件数より、揃っていることのほうが効く。実際、少数でも一貫した例を使ったほうが結果が良いことは珍しくありません。

学習そのものは、提供元の管理画面やAPIから実行できます。費用は学習時と、その後の利用時の両方で発生する。専用モデルの単価は、元のモデルより高く設定されていることが多い。

土台のモデルに寿命がある

作った専用モデルは、元のモデルの上に載っています。

土台が引退すれば、その上のものも使えなくなる。新しい世代へ移すには、学習をやり直すことになります。

学習に使ったデータは、必ず手元に残しておきたい。提供元の側だけに置いていると、移行のときに作り直しから始めることになります。

提供そのものが縮小される場合もあります。OpenAIがファインチューニングを畳むで、実際の経緯と代替手段をまとめています。

効果をどう測るか

感覚で「良くなった気がする」では判断できません。

学習に使わなかった例を50件ほど取り分けておきます。これを学習の前後で同じように処理させ、出力を並べて比べる。数を決めておけば、改善したかどうかを言葉ではなく件数で言えます。

比べる基準も先に決めたい。書式が揃っているか、指定した項目が全部入っているか。人が主観で「良い」と判断する形にすると、評価がぶれます。

同じ課題を、指示文の工夫だけで解いた場合とも比べる。差が小さいなら、学習を続ける理由がありません。

入れてよいデータか

学習に渡すのは、たいてい自社の実データです。

顧客とのやりとり、過去の提案書、問い合わせの記録。個人情報や取引先の秘密情報が混ざりやすい領域なので、渡す前に伏せる工程が要ります。

学習させたデータが出力に現れることもある。伏せ忘れた一件が、後から別の利用者への回答に混ざる可能性を否定できません。

試す順番

最初の一手にはなりません。

まず指示文を工夫する。次に、望ましい出力の例を指示の中に数個入れてみる。それでも足りないときに、初めて学習を検討する。

例を入れるだけで解決する場面は多い。順番を飛ばすと、費用と手間だけが増えます。

出典

学習の工程と、指示への追従については下記に基づきます。

タイトルとURLをコピーしました