5分で分かる、LLM入門

昨今、AIの盛り上がりで大規模言語モデル(Large Language Model)のニュースを目にすることが多くなりました。(例:つい昨日、メタが新しいオープンソースLLM (Llama 3)を発表。)

ChatGPTをイメージすればLLMが何をしてくれるかは想像がつくが、このモデルとは一体何で、どうやって作られるのか、企業はどうそれを活用すれば良いのか、説明しろと言われると困る人も多いのではないでしょうか。

そんな方々に、スタンフォード大学の著名講師及びオープンAIの創業メンバーであるアンドレイ・カルパシーのトーク「LLM入門」をご紹介したいと思います。実際のトークはYouTubeに掲載されているので、ここでは5分で分かる、5つのポイントを説明します。

(1) LLMって何?

LLMは、実はたった2つのファイルからできています。

  1. パラメーターファイル:ニューラルネットワークモデルに与える数百億のパラメーターを持つファイル

  2. 実行ファイル:モデルを実行するための、数百行のコードを含む小さなファイル

出所:アンドレイ・カルパシー Intro to Large Language Models

※「パラメーター」とは、それぞれの言葉の性質を捉える要素です。映画の例に置き換えると、例えばネットフリックスは作品の「ジャンル」「女優・俳優」「公開年」といった「パラメーター」を用いて視聴者にオススメするコンテンツを決めます。

※「ニューラルネットワーク」とは、人間のニューロンと同じように、ある情報を基に判断し、それを次のニューロンに伝達するネットワークです。例えば、「映画.com」は、各ユーザーの評価等の情報(インプット)を基に星評価(アウトプット)を決めています。

一般公開されているLLM(例:メタのLLAMA2)であれば、この2つのファイルをパソコンにダウンロードして実行するだけで、ネットに接続することなく、LLMと会話ができます。LLMは与えられた言葉を参考に、次に何の言葉を埋めるべきかを予測しながら返答してくれます(例:「脂ののった」→「刺身」)。

(2) LLMってどう作るの?

LLMの「秘伝のタレ」はパラメーターファイルにあります。このパラメーターファイルを作るには主に2つの工程が必要です。

  1. プリトレーニング:大規模な情報(例:ネット上の全ての文書)をニューラルネットワークに圧縮する工程

    1. インターネットから~10TB(テラバイト)のテキストを取得

    2. このテキストを、半導体チップ(Graphics Processing Unit・画像処理装置) を用いてニューラルネットワークに圧縮。かかる費用は約3億円、時間は2週間弱程。※処理する情報量の増加に伴い費用は高騰し、オープンAIのGPT-4は120億円、グーグルのGemini Ultraは300億円費やしたと見られている。

    3. 圧縮された「ベースモデル」が完成

  2. ファインチューニング:想定する使い方に基づいて、ベースモデルを調整する工程

    1. 人間が予め用意した10万以上の模範解答に基づき、「こんな質問が来たら、こういう風に答えて」、と指示。あるいは、各質問に対し複数の回答を出力させ、どれが一番良い回答か、人間が選択。これによって、モデルの回答の精度が向上する

    2. 出来上がったモデル(「アシスタントモデル」)を取得

    3. モデルに新たに様々な問いを投げ、適切でない回答をした時に模範解答を提示することで、さらに微調整をしていく

数字を見て分かるように、プリトレーニングは膨大なコストがかかるため、資金力がある会社(例:オープンAI、メタ、グーグル)でも年に1~2回しかできません。

ファインチューニングは大した費用もかからず、数週間~数カ月で行うことができます。この工程では、LLMが自ら実行できることも徐々に増えていますが、引き続き人間との対話を通じた精度向上がカギとなるでしょう。

(3) LLMを自社の用途に合わせるためにできることは?

アンドレイのトークでは触れられていませんが、ここで企業がLLMをどう自社向けに最適化できるか解説したいと思います。やり方は、主に3つあります:

  1. プロンプトを調整:最もシンプルな方法。LLMに投げる問いを試行錯誤することで、出力を改善させる。但し、次に紹介する手法ほど、各企業のニーズに合わせた回答は得られない

  2. 検索拡張生成(Retrieval Augmented Generation)を活用:企業のデータや資料をプロンプトに追加することで、それを参照した回答が得られる

  3. ベースモデルをファインチューニング:前述の内容。人間の模範解答やフィードバックに基づいてモデルを訓練することで、モデルの精度を向上させる

多くの企業は、二刀流でLLMを活用しています:

  1. OpenAIなどが持つ独自モデル(例:GPT4)を、プロンプトの工夫やRAGを通じて調整

  2. Metaなどの公開モデル(例:LLAMA2)をファインチューン

現在、回答の質は1の独自モデルの方が上とされますが、2の公開モデルも活用することで、オープンAI等の特定企業への依存を減らしたい、という考えです。

昨日発表されたメタの公開モデルLLAMA3に見られるように、公開モデルも猛烈な勢いで追随しており、目が離せない展開が続きそうです。

(4) LLMの課題は?

LLMは、言語(Language)のみから画像・動画・音声(Multi-modal)へと、目まぐるしいスピードで進化しつつありますが、今後ブレークスルーを実現するためには大きく2つの課題があります。

1. 「遅く」て合理的な思考

心理学者ダニエル・カーネマンが唱えた「速い思考」と「遅い思考」の概念に基づくと、人間は2つの異なる「システム」を用いて問題を解決しています。

  1. システム1(速い思考):直感に基づいた迅速な判断

  2. システム2(遅い思考):情報を慎重に処理した上で下す、合理的な決定

現在、LLMはシステム1の思考しかできません。猛スピードで次の単語を予測しているだけだからです。囲碁の棋士のように、複数のシナリオを慎重に検討し、その上で最適な解を導ける能力は備えておらず、システム2の思考をどう実現するかはまだ研究段階にあります。

2. 人間に依存しない、LLM独自の自己改善

LLMでないAIがこれまで飛躍的な向上を遂げたのは、AIによる独自の自己改善がカギだったケースが多いです。例えば、囲碁のAI、AlphaGoは、「自分自身」と何百万回も対戦し、失敗から学ぶことで、わずか40日で世界トップクラスの棋士より強くなりました。

LLMのジレンマは、自己改善するためのゴールが定義しづらいことです。囲碁だったら「対戦相手に勝つ」という明確なゴールがありますが、LLMは様々なタスクに使われるため、何が「成功」で何が「失敗」なのかを定義するのが難しいです。

飛躍的な進化を遂げるには、先ずはより狭く明確な用途に合わせたLLMを開発するか、あるいは違う種類のゴール(例:「後悔」の最小化)を設定する必要があるのかもしれません。

(5) LLMは今後どう進化する?

一つの捉え方として、LLMは今後、マイクロソフトの「Windows」やアップルの「MacOS」のように、オペレーティングシステム(OS)のように発展していくと考えられます。パソコンのOSに例えると、既に以下のような機能があります:

  1. CPU:コアLLM

  2. RAM:プロンプトにある文書やファイル等、手元のタスクに使う短期記憶

  3. イーサネット:インターネットの検索、他LLMとの会話

  4. ディスク:プロンプトに提示されたデータやファイルの保存

  5. アプリケーション:計算機やPythonインタプリタ等のツールの活用

  6. デバイス:カメラやスピーカーを通じた、見る・聞く・話す等タスクの実行

出所:アンドレイ・カルパシー Intro to Large Language Models

LLMをこのような機能の集合体(OS)として捉えると、今後2-3年で次のような機能が装備され、進化していくと期待できます:

  • 文書の読み取り・生成

  • あらゆる科目における専門家

  • インターネットの閲覧

  • 既存ソフトウェアのインフラの活用(例:計算機、Python、マウス・キーボード)

  • 画像や動画の認識・生成

  • 会話や音楽の認識・生成

  • 「システム2」を用いた合理的な思考

  • 「ゴール」が設定できる領域における、自己改善

  • 特定のタスクへのカスタマイズ

  • カスタマイズされたモデルのアプリストアでの販売・購入

  • 他LLMとの会話

この領域は日々目まぐるしい速さで進化しており、今後もワクワクするニュースが待ち受けているのは間違いありません。ここで引用したアンドレイ・カルパシー氏のトークとスライドはYouTubeでアクセスでき、自動翻訳機能も付いているので、まだの方は見られることをおススメします。

Previous
Previous

ビジョンを実現する、事業戦略の書き方

Next
Next

アマゾン流事業提案書の書き方(その2)「プレスリリース・よくある質問」