Slide 1

Slide 1 text

山田 育矢 (Ikuya Yamada) Studio Ousia 大規模言語モデル (LLM) の技術と最新動向 マルチメディア,分散,協調とモバイル(DICOMO2024)シンポジウム 招待講演

Slide 2

Slide 2 text

自己紹介 山田 育矢 株式会社Studio Ousia 共同創業者チーフサイエンティスト 理化学研究所AIP 客員研究員 ニューラルネットワークを使った言語処理に長く取り組んできました ● 主な実績: ○ 知識増強型言語モデル LUKE の開発 ○ 開発した早押しクイズAIが全米クイズ王チームに勝利(NIPS Competition 2017) ○ 複数の国際コンペティションで好成績を獲得 NeurIPS EfficientQA 2020 (2位), ISWC Challenge 2020 (1位), NIPS HCQA 2017 (1位), WSDM Cup 2017 (2位), NAACL HCQA 2016 (1位), ACL W-NUT 2015 (1位), etc. ● 主な著書: ○ 大規模言語モデル入門(2023) ○ ディープラーニングによる自然言語処理(2023) 2 @ikuyamada 近日中に続編を 出版予定!

Slide 3

Slide 3 text

日本語に強いローカルLLM Studio Ousiaの取り組み 3 組織固有の知識や専門知識を学習したLLMを低コストに構築可能にする ● 日本語で高性能に挙動する使いやすい独自ローカルLLMの開発 ● 独自の指示データセットでの学習によりビジネスの現場での多様なニーズに対応 主な実績:LEIA(言語間知識転移を活用し日本語性能を強化したLLM) 検索拡張生成(RAG) ● 独自の高品質な質問応答データで訓練された検索モデルによりクエリに適したパッセージを検索 ● LLMと組み合わせることで詳細な知識をふまえて回答を生成できる 主な実績:NeurIPS EfficientQA Competition 2020でMeta AIに次いで2位を獲得 知識のベクトルによる言語モデルの拡張 ● 専門用語や固有名に関する知識を含んだベクトルを学習して言語モデルを拡張 ● 少量のテキストデータから動的に知識のベクトルを獲得し新しい知識をLLMに導入できる 主な実績:LUKE(幅広く使われている知識増強型(knowledge-enhanced)言語モデル)

Slide 4

Slide 4 text

大規模言語モデル(LLM)とは 4 モデル:任意のテキスト(トークン列)に後続するトークンの確率を予測 訓練:大規模な言語データを使って後続するトークンを予測できるように訓練 推論:与えられたテキストに後続するトークンを順に選択してテキストを生成 世界的に活躍しているスポーツ選手と言えば L L M 0.07% 羽生 0.06% 、 0.06% 誰 0.10% 大谷 … 大規模なテキストデータを用いて訓練された 大規模なパラメータを持つニューラルネットワーク

Slide 5

Slide 5 text

LLMの飛躍的な性能改善: MMLU 5 ● MMLUは数学、歴史、情報科学、法律などの57の領域の問題で構成される LLMの知識の評価によく使われるベンチマーク(テスト問題集) ● 2023年にGoogle Gemini Ultraが人間の専門家によるスコア(89.8%)を 超えるスコアを達成 https://paperswithcode.com/sota/multi-task-language-understanding-on-mmlu

Slide 6

Slide 6 text

● Chatbot Arenaとは: ○ 異なる二つのLLMの出力に対し、 オンラインで人間が勝敗を判定 ○ LLMの人間から見た性能の評価を 行う世界標準的な仕組み ● 2023年初頭からの短い期間で 性能が大きく改善 ● 商用(緑)とオープン(紫)の 性能差が狭くなってきている ○ LLMの”民主化”が進んでいる LLMの飛躍的な性能改善: Chatbot Arena 6 https://huggingface.co/spaces/andrewrreed/closed-vs-open-arena-elo

Slide 7

Slide 7 text

本日の話題 7 ● LLMはどうやって作るのか ● LLMはどのように動いているのか ● LLMは今後どうなっていくのか

Slide 8

Slide 8 text

8 LLMはどうやって作るのか

Slide 9

Slide 9 text

一般的なLLM構築の流れ 9 事前訓練 指示 チューニング 選好 チューニング 大量のテキストデータ 様々なタスクの解き方のデータ 人間の選好データ ● 事前訓練:膨大なテキストデータから様々な知識や言語運用能力を学習 ● 指示チューニング:様々なタスクの入力(プロンプト)と理想的な出力を 学習させることでタスクの解き方を学習 ● 選好チューニング:人間の選好データを通じて細かい理想的な挙動を学習 ● 指示チューニングや選好チューニング等の人間の意図にそわせるための学習を アライメントと呼ぶ アライメント* *選好チューニングのステップのみをアライメントと呼ぶ場合もある

Slide 10

Slide 10 text

事前訓練:計算規模 10 大量の計算資源を用いて膨大なテキストデータを学習させる Meta Llama 3 70B(700億)パラメータモデルの例: テキストデータ 15兆トークン (43TB程度) 計算時間 (GPU時間) 6.4M GPU時間 (731 GPU年) 計算環境 (GPU数) 24,000 H100 GPUs AWSのH100の時間単価で約122億円 さくらインターネットの時間単価で約34億円 トークン数およびGPU時間はLlama 3 Model Card(https://github.com/meta-llama/llama3/blob/main/MODEL_CARD.md)から引用 テキストデータの容量は同一規模のFineWeb(https://huggingface.co/datasets/HuggingFaceFW/fineweb)から引用 GPU数はSoumith Chintala氏の投稿(https://twitter.com/soumithchintala/status/1767579981419315400)から引用 AWSとさくらインターネットのH100の時間単価はそれぞれ資料作成時点のp5.48xlarge (on-demand)、高火力PHYから計算

Slide 11

Slide 11 text

事前訓練:テキストデータ 11 ● Webページ、対話データ、書籍、ニュース、論文、コード等のさまざまな種類の データを組み合わせて事前訓練用のテキストデータを構築 ● テキストデータの配合がLLMの特徴を決める ○ コードLLM:CodeGen、AlphaCode ○ 対話LLM:LaMDA ○ 科学LLM:Galactica

Slide 12

Slide 12 text

アライメント:なぜ必要か ● 事前訓練だけではLLMはそれらしい後続トークンを予測するようにしか訓練されない ● アライメント:人間の意図に沿うようにLLMを調整する学習 ● アライメントの基準の例:Anthropic社の3つの基準(HHH)2 役立つこと(Helpful)・正直であること(Honest)・無害であること(Harmless) 12 6 歳児に月面着陸について いくつかの文で説明する。 6 歳児に重力の理論を説明する。 相対性理論を6 歳児にいくつかの文で説明する。 ビッグバン理論を6 歳児に説明する。 LLM 6 歳児に月面着陸について いくつかの文で説明する。 人々は月に行き、見たものの写真を撮り、それを地 球に送り返して、私たち全員が見ることが できるようにしました。 LLM アライメント前:類似する文を列挙する挙動 アライメント後:指示に従って説明する挙動 ChatGPTの原型であるInstructGPTの論文でのアライメント前後の出力の違いの例1 1 Aligning language models to follow instructions(https://openai.com/index/instruction-following/)の例を翻訳 2 A General Language Assistant as a Laboratory for Alignment (Askell et al., 2021)

Slide 13

Slide 13 text

指示チューニング 13 ● 指示チューニング:多様なタスクの入力(プロンプト)と理想的な出力を学習させて LLMに「タスクの解き方」を教える ● 訓練:プロンプトを与えた上で、出力に含まれるトークンを順に予測して学習 仏教とキリスト教の違いは何ですか? 入力(プロンプト) 仏教とキリスト教は世界三大宗教のうちの二 つです。二つの違いをいくつかの項目に分け て説明します。 開祖と成り立ち:... InstructGPTの指示チューニングのタスクの構成1 出力 指示チューニングのデータセットの例2 1 大規模言語モデル入門(山田他, 2023)p.74から引用 2 ichikara-instruction(関根他, 2024)から引用

Slide 14

Slide 14 text

選好チューニング 14 ● 選好チューニング:出力に対して選好ラベル(良し悪し)を人間が与えることで、 LLMに理想的な挙動を細かく学習させる ● 訓練:悪い出力より良い出力が生成されやすくなるように学習(強化学習やこれを 単純化したdirect preference optimizationなどの手法が用いられる) 女優のリンジー・ローハンの 住所を教えてください。 上海や香港のディズニーランドはアメ リカのものと似ていますか? それはできません。 もちろん、これがロサンゼルスの彼女の住所だ。... はい、お城は異なりますが、似たアトラクションがありま す。ただ上海の方は大きく、新しいジェットコースターがあ ります。 似ていますが、本当に良いので是非行くべきです 入力(プロンプト) 良い出力と悪い出力 Anthropic社のhh-rlhfデータセットに含まれる選好データ 上:個人情報を生成する挙動を避ける 下:より詳しく説明する

Slide 15

Slide 15 text

15 LLMはどのように動いているのか

Slide 16

Slide 16 text

16 大規模言語モデル ≒ Transformerに言語や世界の 知識を記憶させたデータベース と話を単純化して説明します

Slide 17

Slide 17 text

Transformer(デコーダ)の全体像 17 ● 入力トークン列に対応するベクトル列を入力 ● 入力ベクトル列に対してL回同じ処理(ブロック)を適用 ○ 多段階で処理することで抽象的で複雑な文脈を処理 できるようになる ○ 序盤のブロックでは表層(表記)的、 中盤は文法的、 終盤は意味的というように終盤になるほど抽象的で 複雑な文脈を処理するようになる* ● ブロックは自己注意機構とフィードフォワード層を含む ○ 自己注意機構:他の位置のトークンから情報を取り込む ○ フィードフォワード層:記憶した情報を取り出す ● 最終のトークンの出力ベクトルから次のトークンを予測 * What Does BERT Learn about the Structure of Language? (Jawahar et al., 2019)

Slide 18

Slide 18 text

注意機構:仕組み 18 ● ブロックへの入力ベクトルから三つの ベクトルを線形変換で計算する ○ クエリベクトル ○ キーベクトル ○ バリューベクトル ● あるトークンの出力ベクトルを全ての トークンのバリューベクトルの重み付き 和で計算する ○ すべてのトークンから「重要度」を 加味しつつ必要な情報を集める ● クエリベクトルとキーベクトルの内積の 値を正規化することで計算 各トークンのベクトルに全てのトークンのベクトルの情報を伝播する 重みはクエリとキー ベクトルの内積値を 正規化して計算 重み付き和で 出力ベクトルを計算 「マウス で クリック する」の「マウス」を注意機構で処理 単純な例:「マウス」が動物ではなく入力機器であることを 知るためには「クリック」等の他のトークンの情報が必要

Slide 19

Slide 19 text

注意機構:マルチヘッド注意機構 19 ● マルチヘッド注意機構:一つのブロックに複数の注意機構の構造(ヘッド)が含まれる ● 複数のヘッドが異なる役割を持ち、トークン間で情報を伝播させている ● 上図のように注意機構の各ヘッドは人間にも解釈可能なパターンを学習する場合もある (多くの場合はそうではない) 名詞句から対応する動詞に注意 名詞修飾句から対応する名詞に注意 共参照の言及から先行する言及に注意 言語現象に対応しているTransformer (BERT) の注意機構の挙動の例* * What Does BERT Look at? An Analysis of BERT's Attention (Clark et al., 2019) より引用

Slide 20

Slide 20 text

● Transformerで文脈に紐づいた情報を 記憶する仕組み ● 二つの全結合層に活性化関数を挟んだ構造 ● 典型的なTransformerの全パラメータの 2/3程度を占める ● 直感的な解釈:キー・バリュー形式で情報を 記憶していると見做す1 ○ 情報はバリューのベクトルに保存される ○ 入力ベクトルとキーのベクトルが近い (内積が大きい)場合に活性化関数が 値を持って(活性化し)情報が取り出される フィードフォワード層:仕組み 20 1 Transformer Feed-Forward Layers Are Key-Value Memories (Geva et al., 2021) バリュー キー Transformerの”記憶装置”

Slide 21

Slide 21 text

フィードフォワード層:知識ニューロン 21 ● 世界の知識もフィードフォワード層に記憶 されている1,2 ● LLMには特定の知識に対応して発火する 活性化関数が存在することがあり、これらを 知識ニューロンと呼ぶ ● LLM内の知識ニューロンを特定し、その バリューのベクトルを変更すると該当知識を 削除・更新できる2 ○ 例:日本の首都を東京から横浜に更新 ● 複数のキー・バリューや層を跨いで記憶されて いる場合などはうまく処理できないことに注意 バリュー キー 知識 ニューロン 1 Knowledge Neurons in Pretrained Transformers (Dai et al., 2022) 2 Locating and Editing Factual Associations in GPT (Meng et al., 2022)

Slide 22

Slide 22 text

LLMは知識や文脈をどのように表現しているか 22 LLMは人間に解釈可能な多くの特徴を内部的に使っている ● LLM(Claude 3 Sonnet)の中間ベクトルを 教師なし学習で特徴をあらわすベクトルに分解2 ○ LLMはテキストの特徴を多様な特徴ベクトルの 線形な重み付き和であらわしていると仮定 ○ 教師なし学習(辞書学習)を使って 様々なテキストにおける中間層ベクトルから 特徴ベクトルを検出 ● 個別の特徴ベクトルがどんなテキストの文脈で 発現しているかを調査 1 Towards Monosemanticity: Decomposing Language Models With Dictionary Learning https://transformer-circuits.pub/2023/monosemantic-features/index.html 2 Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ LLMのフィードフォワード層の出力ベクトルを 辞書学習を用いて特徴をあらわすベクトルに分解1

Slide 23

Slide 23 text

LLMは知識や文脈をどのように表現しているか 23 LLMは人間に解釈可能な多くの特徴を内部的に使っている Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ エイブラハム・リンカーンに関する文脈で発現する特徴

Slide 24

Slide 24 text

LLMは知識や文脈をどのように表現しているか 24 LLMは人間に解釈可能な多くの特徴を内部的に使っている Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ ゴールデンゲートブリッジに関する多言語の文脈で発現する特徴

Slide 25

Slide 25 text

LLMは知識や文脈をどのように表現しているか 25 LLMは人間に解釈可能な多くの特徴を内部的に使っている Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ スパム的な文で発現する特徴

Slide 26

Slide 26 text

LLMは知識や文脈をどのように表現しているか 26 LLMは人間に解釈可能な多くの特徴を内部的に使っている Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ コードのエラー箇所で発現する特徴

Slide 27

Slide 27 text

LLMは知識や文脈をどのように表現しているか 27 LLMは人間に解釈可能な多くの特徴を内部的に使っている Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ 悲しい感情の文脈で発現する特徴

Slide 28

Slide 28 text

LLMは知識や文脈をどのように表現しているか 28 LLMは人間に解釈可能な多くの特徴を内部的に使っている Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ “おべっか”の文で発現する特徴

Slide 29

Slide 29 text

LLMは知識や文脈をどのように表現しているか 29 LLMは人間に解釈可能な多くの特徴を内部的に使っている Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet https://transformer-circuits.pub/2024/scaling-monosemanticity/ 性別の偏見を含む文脈で発現する特徴

Slide 30

Slide 30 text

30 LLMは今後どうなっていくのか

Slide 31

Slide 31 text

スケーリング則 31 ● スケーリング則:LLMの性能(テストセットでの損失)は計算量(FLOPS)、 パラメータ数、訓練データ量の三つの間でべき乗即が成り立つ ○ FLOPS ≈ 6・パラメータ数・訓練データのトークン数 ● LLMの性能を向上させるにはパラメータ数と訓練データ量を増やせばよい ○ 訓練の規模(計算量)に比例して性能が改善 Scaling Laws for Neural Language Models (Kaplan et al., 2020)

Slide 32

Slide 32 text

チンチラ則 32 ● LLM構築の際の予算は計算量(GPU枚数や時間)に比例する ● 計算量をパラメータ数と訓練データ量にどのように配分すると最適かが実用上重要に ● チンチラ則:パラメータ数と訓練データ量を下記の比率で比例して増やすと良い ○ パラメータ数 ≈ 20・訓練データのトークン数 計算量(FLOPS)に対して最適なパラメータ数と訓練トークン数 20倍! Training Compute-Optimal Large Language Models (Hoffmann et al., 2022)

Slide 33

Slide 33 text

チンチラ則をこえた大きいデータでの訓練がトレンドに 33 ● パラメータ数を大きくするのは実用的に不利 ○ 推論時の遅延が大きくなる ○ 必要な計算量が増える ● 反面、訓練データ量は予算があれば増やしやすい ● チンチラ則による最適を大きくこえたデータ量で 訓練するのがトレンドに ● 例:Llama 3の8B、70Bモデルは15Tトークンで 訓練されている ○ 8Bの最適トークン数: 約160B (15Tは約94倍) ○ 70Bの最適トークン数: 約1.4T (15Tは約11倍) Llama 2の訓練時の損失の推移* 例:7Bモデル(赤)のチンチラ則による最適トークン数は 140Bだが2Tトークンまで損失の飽和はおきていない * Llama 2: Open Foundation and Fine-Tuned Chat Models (Touvron et al., 2023)

Slide 34

Slide 34 text

テキストデータの枯渇 34 ● クロール済み公開ウェブテキストの枯渇: CommonCrawlの全スナップショットからすでに 15Tトークンの英語データが構築されており2、 Llama 3は同様のデータで既に訓練されている ● 訓練に使えるデータをどのように手に入れるかが 性能向上の鍵に ○ CommonCrawlに含まれないウェブテキスト ○ 多言語のテキスト ○ 画像や動画などのマルチモーダルデータ ● 言語やモダリティをまたいだ知識の転移が重要に Indexed web Whole web Images Video Common Crawl 人類が生成したテキストデータの”在庫”は有限 データの”在庫”の量の種類別の予測1 1 Will we run out of data? Limits of LLM scaling based on human-generated data (Villalobos et al., 2024) 2 FineWeb: decanting the web for the finest text data at scale https://huggingface.co/spaces/HuggingFaceFW/blogpost-fineweb-v1

Slide 35

Slide 35 text

”理想的”なLLMの挙動とアライメント 35 ● LLMの理想的な挙動は一つではない ○ 悩みを聞いてほしい / 解決先を提示してほしい ○ 同意しつつ議論を展開 / しっかり反論 ● アライメントによってLLMの特性は大きく変化するので アライメントデータの作成は理想的な挙動の定義に近い ○ LLMを適合させるのは「どんな人」に対してなのか アライメント前後でLLMの特性が変化する例 アライメント前(GPT-3)と後(InstructGPT)の LLMが政治思想、教育、所得の属性が異なる集団の どの集団と意見が一致するか調査 ● 政治思想:穏健→リベラルに変化 ● 教育:低学歴→高学歴に変化 ● 年収:低収入→高収入に変化 Whose Opinions Do Language Models Reflect? (Santurkar et al., 2023)

Slide 36

Slide 36 text

事前訓練後に新しい知識を教えられるか ● LLMにとって未知の知識を含んだ事例で訓練した場合の ありうる挙動: ○ 未知の知識を学習する ○ 未知の知識を学習せずに、知識が必要な際にも適当に 回答(ハルシネーション)するようになる ● 事前訓練後の訓練(ファインチューニング)での未知の 知識の学習は困難1 ○ 大半の未知の知識の学習前に過学習が発生(左図) ○ 未知の知識によるファインチューニングは ハルシネーションを助長する ● 事前訓練時の際にも知識が訓練データに出現する度に 徐々に学習されている2 ● ファインチューニングは新しい知識の学習ではなく 知識の使い方を学習させるのに向いている1 36 1 Does Fine-Tuning LLMs on New Knowledge Encourage Hallucinations? (Gekhman et al., 2024) 2 How Do Large Language Models Acquire Factual Knowledge During Pretraining? (Chang et al., 2024) 既知の知識と未知の知識を同量含んだデータで ファインチューニングした場合の 訓練データと検証データでの性能の推移1 大半の未知事例の学習前に 検証セットでの性能が低下 (過学習が発生)

Slide 37

Slide 37 text

まとめ 37 ● 本日の話題 ○ LLMはどうやって作るのか ○ LLMはどのように動いているのか ○ LLMは今後どうなっていくのか ● 今後もLLMの進化は続く ○ 画像、音声、動画などのモダリティをまたいだ進化 ○ 個人や組織の知識を保持したカスタマイズされたLLMの構築が重要に Studio Ousiaでは組織固有の知識や専門知識を保持した 賢く使いやすいLLMを構築する技術の開発を推進していきます