1 ポイント 投稿者 GN⁺ 2024-07-09 | 1件のコメント | WhatsAppで共有
  • LLMの推論性能を単なるモデルサイズの問題ではなく、Transformer層の幾何学として解釈し、セルフアテンショングラフの密度がMLP入力の内在次元を変えるというつながりを扱う
  • MLPは入力空間を複数の区分的アフィン領域に分割し、入力の内在次元が大きくなるほどより多くの領域を作って非線形関数をより細かく近似できる
  • トークンをノードとみなすアテンショングラフでは、head数や文脈長が増えるとグラフ密度が高まり、その結果MLPが扱う表現空間も大きくなりうる
  • GSM8K-ZeroとLlama 3 8B/70B Instructの実験では、1〜10個のfew-shot例を付けたとき、最終層の内在次元増加が正答率の向上と強く結び付く
  • 第1層の内在次元増加はランダムトークンを付けるだけでも現れうるため説明力が弱く、実際の推論改善は関連する文脈が最終層表現を豊かにするときによりよく表れる

推論能力を幾何学で見る理由

  • 実際のLLM活用では推論能力の向上が中核課題であり、GPT-4やLlama 3のようなモデルは多くのタスクで高い性能を示している
  • 従来の改善方向は大きく2つに分かれる
    • モデルサイズの拡大: より大きなモデルがより優れた推論能力を示した事例がある
    • 文脈長の増加: chain of thought、retrieval augmented generation、例示ベースのpromptingのように入力トークンを増やす方式が使われる
  • より長い入力とより大きなモデルは、実運用では計算コストと推論遅延を増やしうる
  • この研究はTransformer layerの幾何学を通じて、LLMの表現力と推論能力の関係を調べる
  • 中核となる問いは、入力シーケンス長とattention head数がLLMの幾何学、特にself-attention blockの内在次元にどのような影響を与えるかである

MLPの空間分割と表現力

  • ReLU、leaky-ReLU、absolute value、max-poolingのような非線形性を使うMLPは、入力空間を複数の領域に分ける連続な区分的アフィン関数として見ることができる
  • 各領域には、その区間で入力を処理するアフィン写像が対応する
    • 目標関数がある区間で線形なら、1つの領域で十分である
    • 目標関数が非線形なら、曲率を近似するために複数の領域が必要になる
  • sine関数を近似するtoy実験では、hidden neuron数が50個から500個へ増えるほど、より多くの領域が生まれ、近似が細かくなる
  • 領域が入力空間のどこに配置されるかはデータに依存し、学習データの規模と一様性、構造的変化が分割密度に影響しうる
  • 同じneuron数でも、入力の内在次元が大きくなるとMLPが作れる領域数は指数的に増加する

Transformerで内在次元が生じる仕組み

  • causal LLMのTransformer layerはself-attention、multi-head attention、MLP、residual connection、layer normalizationで構成される
  • attention mapは、トークンをノード、attention値をedge weightとするグラフとして解釈できる
  • self-attentionグラフの密度はトークン間の接続レベルを意味し、この密度がMLP入力の内在次元と結び付く
  • Theorem 2.1によれば、multi-head attention出力の各rowはsingle-head convex hullのMinkowski sumの中に位置し、有効次元は各headでattention値が0より大きいトークン数の総和によって制限される
  • 研究で用いるsoft intrinsic dimensionは、threshold εより大きいattention値を持つトークン数として定義される
    • 実験ではεをattention値の統計と分布に基づいて決める
    • すべての実験でthresholdは0.1に設定される

Attention headと文脈長が表現力を高める経路

  • MLP入力の内在次元はattention mapによって定まり、したがってattentionグラフがより高密度になるほど、MLPはより多くの領域を作れる
  • 内在次元を高める方法は2つに整理される
    • attention head数の増加: 複数headの効果が加算され、有効次元が大きくなりうる
    • プロンプト修正または文脈拡張: 入力を変えてattentionグラフの密度を高められる
  • one-layer LLMのtoy実験は、embedding → attention block → 1-hidden-layer MLP構造でsine関数を近似する
  • context length 10/100とhead数 1/10を比較した結果、文脈長とhead数が増えるほど、MLPが入力空間に作る領域数は増加する
  • head数を変えるにはpre-trainingまたはfine-tuningが必要になる場合があるが、文脈長はモデルweightに触れずに調整できる

GSM8K-ZeroとLlama 3の実験

  • 実験ではGSM8K-Zeroデータセットを用いて、reasoning questionに対するLLM応答性能を評価する
  • 条件は0-shot baselineと1〜10-shotのprompt変形で構成される
    • few-shot例はGSM8K-Zero training setから無作為に選んだquestion-answer pairである
    • 比較実験ではrandom tokenまたはシャッフルしたfew-shot example textを前に付加する
  • 対象モデルはLlama3 8B InstructLlama3 70B Instructである
  • base promptはGSM8K-Zeroで誤答が出た約300個のsampleで構成される
  • 応答の正誤はMixtral 8×22B Instructモデルにpromptingして評価する

最終層のIDが性能とより強く結び付く

  • few-shot例を前に付けると、最終層で内在次元が増加した場合に正答を得る確率が高くなる
  • Llama3 8Bと70B Instructの両方で、final layer ID変化量が大きいほどcorrect response比率が高くなる傾向を示す
  • 第1層では、どの種類のトークンを付けても内在次元が増加しうる
    • 第1層attention graphはトークン全体に対してuniform distributionのように振る舞う
    • random token実験は、第1層ID増加が推論性能と必ずしも結び付かないことを示す
  • random token条件ではID増加は限定的または負であり、correct response比率は約**40%**水準で飽和する
  • 複数layerを比較したFigure 8では、モデルサイズに関係なく最終層のIDが応答の正誤を分けるうえでより有用なシグナルとして現れる
  • LLMではself-attention headが出力した各tokenがMLPで独立に変換され、より細かなpartitionを持つMLPは各tokenにより適応的なaffine mapを適用できる
  • 予測はembedded tokenを線形結合して作られるため、tokenごとの近似誤差が累積しうるが、token周辺のより細かな分割は最終予測の近似誤差を減らしうる
  • 内在次元とaffine map partitionがLLMの汎化能力とどのように結び付くかは、この研究および関連研究の多くでまだ十分に探究されていない

1件のコメント

 
GN⁺ 2024-07-09
Hacker Newsのコメント
  • AIの価値はバスタブ曲線のように見える。低いレベルでは、1〜3行程度のコードをそれなりにうまく書く超強力な自動補完であり、高いレベルでは、目の前の作業に関係する上位概念を説明するのに向いている。
    中間領域ではうまくいかない。複数段階の計画を立てさせると、各パーツは個別には問題なくても、互いにかみ合わない。AIには「この4つの部分が緊密につながって1つの全体を作るべきだ」という感覚がなく、AからBへ行く4つのステップを作る際に、別々の経路を適当につなぎ合わせているように感じる。

    • それはバスタブ曲線ではない。低レベルの作業も「高」レベルの作業も、結局は同じ確率的テキスト生成だ。
      コードについて推論しているわけでも、自分が提示する説明について推論しているわけでもない。AIは考えられず、与えられた問題の内部モデルを作らず、ただ推測している。この「中間」の作業が失敗する理由は、正解を出すには抽象的推論が必要だからだ。
    • 学習データを考えると、複数段階の計画の例はそれほど多くない。概念、つまり高次元ベクトルがどうかみ合うかを学習する仕組みなら、必要な推論例が十分でないときにはうまくできない。
      結局、合成データや、目標についての良い説明とその目標を実装したコードのような資料が蓄積されれば、改善していくだろう。
    • 低レベルと高レベルという軸は、AIを評価するうえで良い尺度ではないかもしれない。この尺度にカーネルトリックを適用して、レベルの高低と多段階計画問題を分離する必要がある。
      言い換えれば、この3つの問題を区別する別の次元を使うべきだ。
  • 「Mad Libs」というゲームを覚えているだろうか。「動詞」「名詞」「形容詞」のような空欄を埋めてから、次のページでその単語を使っておかしな物語を作るゲームだ。最初に単語を入れる時点では文脈がないため、文法的には正しくても文脈上は筋が通らず、それが笑いになる。
    LLMは文脈予測器の付いたMad Libsのようなものだ。文法的に正しい出力を作り、統計的相関が概ね意味のある結果を生み出すので、文脈予測器がでたらめを減らしてくれる。しかしここに「推論」はなく、文法的な型埋めと統計的自動補完だけがある。

    • その通りだが、それはほとんど想像しがたいほど複雑な自動補完モデルでもある。そして人間の推論のかなりの部分は文章から統計的に予測可能なので、優れた自動補完モデルだけでも実際に推論のような振る舞いを得られる。
      すべての場合に動作しないからといって、これがどれほど驚くほどうまく機能しているか、そして機能するという事実自体がどれほど意外かを過小評価してはいけない。元記事の核心も、十分に巨大な自動補完モデルから、どのように推論に似た現象が生じるのかを探る点にある。
    • 「文法的な型埋めと統計的自動補完にすぎない」というのは確率的オウム仮説で、LLMの論文がHNに上がるたびに必ず繰り返される。
      この仮説は哲学的主張にとどまらず、反証可能な予測を生み、実験はそれを十分に反証してきた。LLMには世界モデルがある。このテーマの有名な論文としてはOthelloGPTがあり、より最近ではTransformers Represent Belief State Geometry in their Residual Streamがある。
    • なぜ人々が「推論」は何らかの形の文法的な型埋め統計的自動補完ではないと、そこまで確信し続けるのか分からない。
    • 推論とは、十分に発達した文法的な型埋めと統計的自動補完だと思う。
      文法的変換はチューリング完全である、という点も思い出す価値がある: https://wiki.c2.com/?RewriteRules
    • この発想、正確にはad-libsをもとに、LLMの穴埋め用TypeScriptライブラリの名前を付けた: https://github.com/gsuuon/ad-llama/
  • 議論には二つの側面があるように思える。膨大な量のテキストを吸収する中で、モデルがどうにかして推論能力を作り出したという見方、つまり言語の後に推論が生まれたという見方がある。
    逆に、推論は人間がすでに行い、それを書き留めておいたものなので、「ジュリエットの後、ロミオは別の恋を探すべきだったのか」のような質問をすると、英文学のエッセイ数十億本に反映された推論セットをモデルが反射しているだけだ、という見方もある。何か見落としているのだろうか?

    • その二つは同じコインの裏表のように見える。LLMは基本的にテキスト補完を行うように学習されており、学習とは、与えられたモデル構造とパラメータ数の中で、それを最も効果的に行う方法を見つける過程である。
      「LLMが膨大な量のテキストを吸収する」というところから出発すると、単純なモデルは暗記によってテキストを補完できる。しかし、234 * 452 =を正しく補完するには、あり得るすべての掛け算を覚えるより、実際に計算するほうがはるかに単純だ。同様に、世界を理解し推論できれば、人間が書いた文をよりうまく補完できる。したがって、十分にうまく学習され、それを行えるだけのパラメータを持つが、単純に過学習するほど多くはないモデルなら、ある程度の推論能力を発達させると期待できる。
      「学習セットに推論が多い」というところから出発すると、暗記の段階でも推論のように見える結果を得られる。しかし、モデルが実際の推論を発達させるという論理は依然として有効で、むしろ強くなる。誰かの論証を補完しなければならないなら、その人の思考の流れを追えるほうがずっと簡単だからだ。
    • 現在のLLMに使われる、より広範な推論テストであるMuSRのようなものを見るとよい。質問が新しく作られるため、後者の説明だけでは明らかに説明しにくい: https://arxiv.org/abs/2310.16049
    • そのようなモデルが「推論」したり、より正確には複雑な概念を扱えたりする理由は、かなり直感的だ。膨大なテキストを処理する中で、概念が単純なノード、つまりニューロンやニューロンのまとまりとして表現される内部表現を作る。
      そのため、実際に知識を蒸留している。あるいは、重要な複数の側面を抽出する非常に優れた主成分分析のように考えることもできるし、自動的に作られた意味グラフと見ることもできる。知識が蒸留されれば、概念を組み合わせる形でその上に容易に積み上げられる。特別な秘密はない。
    • 論文をざっと見ると、この問題を認識はしているものの、やや飛ばしているように見える。
      実際、近似能力と一般化は同じ概念ではないことは明らかだとしている。しかし、LLMの推論能力が一般化と結びつくかどうかはまだ定まっておらず、これらの概念はいずれも依然として正確に捉えにくいため、実験部分では内在次元、つまり表現力と推論能力の関係に集中すると述べている。
    • 「モデルがその答えを反射している」というとき、その反射しているという言葉の中には多くのことが含まれている。本当にそれほど単純なのだろうか?
      モデルが「読んだ」特定の文学批評エッセイの見解を受け入れているという意味なのか? それとも全体の何らかの「平均的」見解を取っているという意味なのか? そもそも、あるテーマについての「平均的」見解をどう定義できるのか?
      これはLLMとは何かの核心を突く興味深い問題だが、この論文はそれよりずっと焦点が狭く、その答えを与えるものではなさそうだ。
  • 推論は幾何と何の関係があるのだろうか?異なる概念には内在的な幾何学的形がある、という考えに近いのか?理性の幾何についてのプラトン的、あるいは知性論的な見方なのか?論文はあまり理解できなかった

    • 幾何がどこから出てくるのかについて、論文をもう少し読んでから追記
      論文が引用している資料の一つであるこの論文[1]は、現代の深層ニューラルネットワークの非線形層が入力を領域に分け、領域ごとにアフィン写像[2]を適用して出力を作ることを示している。これがベクトル量子化や k-means クラスタリングとどうつながるかも扱っている
      したがって、ここでの幾何学的観点とは高校で習うような幾何ではなく、ベクトル空間[3]や組合せ論的計算幾何[4]のような、より抽象的な概念を意味する
      投稿された論文は、このような分割がニューラルネットワークの近似能力と直接結び付くことを示している。続いて、近似能力が大きくなるほど数学の文章題への回答が良くなり、したがって近似能力が LLM の推論能力と相関すると提示している
      [1]: https://arxiv.org/abs/1805.06576v2
      [2]: https://en.wikipedia.org/wiki/Affine_transformation
      [3]: https://en.wikipedia.org/wiki/Vector_space
      [4]: https://en.wikipedia.org/wiki/Computational_geometry#Combina...
    • 現代のニューラルネットワークは線形代数を多用しており、とりわけ現代の LLM を動かす Transformer[1] 構造がそうである
      線形代数は幾何[2]と密接に関係しているので、能力や性能を規定する幾何学的側面があるというのはかなり自然だ
      この論文では具体的に、アテンション層の内在次元[3]を見て、それが LLM の性能とどう相関するかを調べている
      [1]: https://en.wikipedia.org/wiki/Transformer_(deep_learning_arc...
      [2]: https://en.wikipedia.org/wiki/Linear_algebra#Relationship_wi...
      [3]: https://en.wikipedia.org/wiki/Intrinsic_dimension
    • 「異なる概念には内在的な幾何学的形がある」という考えは合っている。実際、この概念の上に数学の基礎を築くこともできるし、ある意味での「推論」や証明も作れる
      依存型システムはこのように動作する。HoTT とモーダルホモトピー理論を調べるとよい。Lean4、Coq、定理証明もこの方式で動作する
      ラムダ計算やブール代数の基礎を思い浮かべると、半順序集合からなる束や半束の上に組織された数学的対象を、一連の変換として扱う。たとえばブール代数では、含意が半順序を与える
      アテンション機構の密度が依存型システムと似た進行をたどるのか、また証明に関与する依存型と LLM 内の対応する空間との間に、近接演算子に似た連続緩和や、高水準概念から出力トークンへの変換を通じたつながりがあるのかを理解できれば興味深いだろう
      埋め込みでは、幾何が意味を持つことをすでに見てきた。特定の単純な概念はベクトル方向に対応する。依存概念に関する推論が、LLM が通る経路の複雑な部分空間に対応し、十分に学習するとそのつながりが対応する証明の論理構造にますます近づいていくとしても、まったく驚きではない
    • この論文がその点を述べているわけではないが、ここで AlphaGeometry 式の合成ベンチマーク[1]を作ることはできる。幾何エンジンが 1 億個の文章題を作り、LLM に解かせる方式だ
      幾何問題は機械的に作成・解答しやすい一方で、一般的な Transformer LLM が特に得意でなければならない理由はなく、規模を非常に大きくできるという利点がある。HumanEval のように 164 問しかないベンチマークとは違うので、LLM が答えを暗記したという批判も避けやすい
      1: https://deepmind.google/discover/blog/alphageometry-an-olymp...
    • 単語埋め込みのことを言っているように思う。ここでは文脈が高次元の幾何空間に埋め込まれ、ある次元は単語がどれだけ「女性的」か、あるいはどれだけ「青に近い」かといったものを捉えられる
  • ここでいう領域とは何なのか、領域は多いほどよいのか、領域はどう区別するのか、一つの領域が関連する複数の領域と同じ概念になり得るのかが気になる

    • 私の理解では、領域とは入力領域の分割をなす断片、つまり重みによって形成されたベクトル空間の断片である。引用論文[1]の 3.1 節以降に、より詳しい内容がある
      その論文の主張は、一般的な深層ニューラルネットワークの層が入力領域を複数の領域に分け、各領域が入力に対して独自のアフィン写像を持つというものだ
      任意の活性化関数であれば、分割そのものと領域ごとのアフィン写像のパラメータの両方を見つける必要がある。しかし一般的な活性化関数は大域的に凸なので、分割が領域ごとのアフィン写像パラメータによって完全に決まるように、これを利用できることを示している
      そのため、ある入力 x に対する層の出力は「分割・領域に依存する、x の区分的アフィン変換」になる。アフィン写像のパラメータが実質的に学習中に変わる対象であり、したがって領域の数と形も学習中に変わる
      投稿された論文は、領域が多いほどニューラルネットワーク層の近似能力が高まることを示している。上の内容を考えるとそれ自体は驚くことではないが、重要な足掛かりとして使っている
      [1]: https://arxiv.org/abs/1805.06576v2
  • 多くの哲学的議論がそうであるように、LLMが「推論」できると主張することにはあまり意味がない。「推論」は明確に定義された用語ではなく、誰もが一つの定義に同意するわけではないからだ。
    コンピュータ科学者、大陸哲学者、人類学者に「推論」とは何かを尋ねれば、まったく異なる答えが返ってくるだろう。
    推論を、数学で使われる演繹推論や科学で使われる帰納推論という意味で言うなら、LLMがそのようなことをしている証拠はない。言語的なパターンマッチングだけで、私たちが人間の思考と呼ぶものすべてを模倣できると信じる理由もない。そう主張するには、「思考」を極端に狭く定義し、私たちが身体を持つ知性であり、透明で、おそらく言語以前的な方法で自分自身を知ることができるという事実を無視しなければならない。AIが身体化され、同じことができるようにならない限り、人間のように「考え」たり「推論」したりするとは思わない。依然として非常に優れた統計的な目くらましだ。

    • https://transformer-circuits.pub/2022/in-context-learning-an...
      これらが帰納を行っている証拠は多い。
    • その通りかもしれないが、「十分に良い」なら、なぜそれが重要なのだろう? Slack/Teamsでチケットを期限どおりに処理し、コード品質も問題ないユーザーがLLMなのか私なのかを区別できないなら、その存在が透明で言語以前的な方法で自分自身を知っているかどうかは、あまり気にしない。
  • 「ただ次元をもっと足せばいいんだよ、ブロ!」

  • AIの人間ではなく、横から眺めるのが好きなだけ。論文にざっと目を通した後、非専門家の立場でまとめるとこうで、間違っている部分があれば直してほしい。
    現代のニューラルネットワーク、たとえばLLMで使われる多層パーセプトロン[1]層は、本質的に入力を複数の領域に分割する。単一のMLP層が分割できる領域数は、入力の内在次元[2]に指数関数的に依存し、領域/分割の数がMLP層の近似能力を高めるように見える。
    そのため、ニューロン数を増やさなくても、入力を実質的に「蒸留」することでMLP層の近似能力を大きく高められる。
    Transformer構造において、MLP層の入力は自己注意[3]層である。著者らは、自己注意層のグラフ密度が自己注意層の内在次元と強く相関することを示している。つまり、より密な自己注意層ほど、MLPはよりうまく機能できる。
    注意層の密度を高める一つの方法は、より多くの文脈を追加することだ。質問の前にどんなトークンでも文脈として付けて最終層の内在次元を高めると、LLMの性能が向上するように見える。
    また、Transformer構造では近似誤差が蓄積しやすく、高い内在次元の入力を受けたMLP層が提供する、より精密な分割がその助けになり得ると書かれている。ただし、これが汎化に与える影響については、さらに研究が必要だ。
    結果が維持されるなら、この論文はLLMに似たニューラルネットワークをよりよく最適化するための良い洞察を与えているように思う。
    [1]: https://en.wikipedia.org/wiki/Multilayer_perceptron
    [2]: https://en.wikipedia.org/wiki/Intrinsic_dimension
    [3]: https://en.wikipedia.org/wiki/Transformer_(deep_learning_arc...

    • 注意グラフでトークン同士を結ぶの数によって密度を定義すると考えると、より直感的だ。もっと単純に言えば、トークンが他のトークンと何らかの接続を持った回数を、トークン数で割った値である。
      だから、互いに実際に関連し情報を与えるトークンは良いが、見当違いのトークンは役に立たない。
      「質問の前にどんなトークンでも文脈として付ければLLMの性能が向上する」という表現は正確ではないと思う。論文が見つけたのは、現在の質問の前にどんな種類のトークンを付けても第1層の内在次元は増加するが、この増加が必ずしもモデルの推論能力と相関するわけではない、という点だ。
      前に付けたトークンがモデルの最終層の内在次元を増加させる場合にのみ、LLMの推論能力が大きく向上するという。
    • 関心のある異なる領域数は、データのVapnik–Chervonenkis次元[a]の部分集合であり、極端には同じと見なせるのではないだろうか?
      原文にはVC次元への言及はない。
      [a] https://en.wikipedia.org/wiki/Vapnik%E2%80%93Chervonenkis_di...