業務で「人工知能」を使う前に理解すべき事は?世界的エンジニアが徹底解説

 

人工知能にドメイン・ノリッジを与える方法は複数ありますが、大きく分けると、以下の3つになります。

  1. LLMモデルをゼロから構築
  2. 学習済みのLLMモデルのファイン・チューニング(微調整)
  3. プロンプト・エンジニアリング

1つ目のLLMモデルの構築は、技術的にも難しいし、何よりも機械学習の過程に莫大なコストがかかります。モデルそのものは、MetaのLlama2のようにオープンソース化されたものがあるので、その中で適切なものを選べば十分ですが、ちゃんとしたLLMとして使えるようにするには、業務用のデータだけでなく、言葉や一般教養を学習させるための膨大なデータを教育データとして与える必要があります。幸いなことに、データに関しても、オープンなものが沢山あるのでそれが使えますが、学習プロセスには莫大な計算資源が必要であるため、数千万円から数億円の出費(モデルの大きさ、データの量によって大きく異なります)を覚悟しなければなりません。

このアプローチで作られたもので良く知られているのは、経済・金融情報サービスの会社Bloombergが作ったBloombergGPTです。

BloombergGPTは、3,639億トークンの経済・金融データに(ここでは、トークンの数=単語の数と考えていただいて結構です)、3,450億トークンの一般教養データを合わせた、約7,000億トークンで学習した500億(50 billion)のパラメータを持つLLMで、一般的なLLMとしても高い能力を持ちつつ、経済・金融系の質問に答えられるように作られた、業務用のLLMです。Bloombergは、開発コストを公開していませんが、機械学習プロセスだけで、少なくとも数億円は使ったと見られています。

この手法は、非常にコストが高いので、BloombergのようにLLMそのものをサービスとして提供して利益を上げる場合には使える手法ですが、上で例として取り上げた、サケ・マス事業社が採用できるようなものではありません。

2番目の手法は、既に基本的な言語や一般教養に関してトレーニング済みのLLMに、業務用のデータを与えて学習させる、ファイン・チューニングと呼ばれる手法です。

ファイン・チューニングには、大きく分けて二つの方法があり、一つ目は、モデルのパラメータ全てをアップデートするフル・ファイン・チューニングと呼ばれる手法で、もう一つは、よりパラメータ数の少ないニューラルネットワークを作り、そちらのパラメータだけをアップデートする、Parameter efficient fine-tuning(PEFT)と呼ばれる手法です。

フル・ファイン・チューニングの方は、LLMが持つパラメータ全てをアップデートするため、パラメータ数の多いLLMで行う場合には、莫大なコストがかかるのが欠点です。さらに、パラメータ全体をアップデートするため、ファイン・チューニングの結果、それまで答えられていた質問にまともに答えられなくなってしまう、「Catastrophic failure」という障害を起こしてしまうリスクがあります。

PEFTは、はるかに少ないパラメータだけをアップデートするため、コストは大幅に安いし、ベースとなるLLMのパラメータは変更しないので、「Catastrophic failure」も起こりません。PEFTについてより深く勉強したい人は、「LoRA: Low-Rank Adaptation of Large Language Models」という論文を読むことをお勧めします。PEFTを実現する手法の一つであるLoRAについて詳しく解説しています。

この記事の著者・中島聡さんのメルマガ

初月無料で読む

print
いま読まれてます

  • 業務で「人工知能」を使う前に理解すべき事は?世界的エンジニアが徹底解説
    この記事が気に入ったら
    いいね!しよう
    MAG2 NEWSの最新情報をお届け