Transfer of Structural Knowledge from Synthetic Languages

生成日:

Transfer of Structural Knowledge from Synthetic Languages

論文の面白いところ

この論文の主題は、自然言語をまったく含まない事前学習が、後の英語学習に何を残すのかという点にある。扱われる合成言語は、英単語や文法ではなく、開き括弧と閉じ括弧の並びで作られる。したがって、通常の意味での語彙知識や世界知識は転移しない。それでも、モデルが系列の規則を学ぶために作った内部構造は、英語への微調整で役に立つ場合がある。著者らは、この効果を「不思議な経験則」としてではなく、言語間の転移の難しさ、埋め込みの特異値分布、クラスタ構造、線形プローブで分けて観察している。特に flat_shuffle は、単純な括弧対応に加えて、一定区間内で使われる記号集合を覚える必要がある。この余分な規則が、モデルにより広い埋め込み空間の利用を促した可能性がある。結論は控えめで、合成言語の構造がそのまま英語の構文へ写るとは述べていない。むしろ、無関係な規則で訓練された計算機構が、微調整時に別の目的へ転用されるという見方を採っている。

問題設定

大規模言語モデルでは、性能を上げる方法としてモデル規模とデータ量の拡大がよく用いられる。しかし、高品質なテキストデータには限りがあり、どのようなデータ性質が学習に効くのかは十分に分かっていない。過去の研究では、音楽、コード、括弧列のような非言語データで事前学習したモデルが、自然言語に転移するときに有利になる場合が報告されていた。本論文は、その現象を小型モデルで細かく調べる。問いは三つである。第一に、異なる合成事前学習データは英語タスクの性能にどのような差を生むか。第二に、微調整後の埋め込みには、事前学習データの性質がどのように残るか。第三に、その埋め込みから品詞や頻度などの英語語彙特徴をどの程度読み取れるか。対象モデルは TinyStories-8M で、自然言語側の評価も小型モデル向けに設計されている。論文は、合成言語の形式的な複雑さだけでなく、転移しやすさを測る操作的な尺度を置く。

提案手法

著者らは三つの合成言語を用いる。nested は多種類の括弧が正しく入れ子になる言語で、文脈自由言語に相当する。flat は開いた括弧を閉じる順序が入れ子に限られず、より自由な対応を持つ。新たに導入された flat_shuffle は、flat を基礎にしつつ、16 トークンごとの区間に使える括弧型の範囲を割り当てる。モデルは、区間の途中で直前の記号から現在のブロックを推定し、終盤では未使用の記号を記憶して次を予測しなければならない。実験では、各合成言語で TinyStories-8M を事前学習し、その後に英語へ微調整する。微調整の範囲は、入出力埋め込みのみ、埋め込みと LayerNorm、さらに最後の Transformer 層を加える三段階で分けられる。評価には、言語間転移時の負の対数尤度、埋め込み行列の特異値スペクトル、k-means によるクラスタ分析、線形プローブが用いられる。さらに、GPT-4 で生成した Tiny-Cloze Benchmark を作り、同義語、数、前置詞、時制的関係、空間理解など 12 種の穴埋めで小型モデルを調べる。

結果

合成言語間の転移では、flatnested より複雑で、flat_shuffleflat より複雑であるという順序が観察された。英語はこれらの合成言語より複雑で、また相当に異なるため、英語から合成言語へ戻す場合にはより多くの重みを動かす必要があった。Tiny-Cloze Benchmark では、合成言語で事前学習したモデルのうち flat_shuffle が平均で最も高い値を示した。平均の対数尤度差は、nested の埋め込みのみが 0.15、flat の埋め込みのみが 0.16、flat_shuffle の埋め込みのみが 0.14 で、最後の Transformer 層まで微調整すると flat_shuffle は 0.23 となった。英語で一から学習した 8M モデルは 0.44、33M モデルは 0.58 であり、自然言語データのみで訓練したモデルには及ばない。埋め込みの特異値分布では、合成言語で事前学習したモデルは少数の軸に分散が集中しやすいが、flat_shufflenestedflat より英語モデルに近い尾部を示した。クラスタ分析でも、英語、flat_shuffleflatnested の順に埋め込みの分布が豊かになる傾向が見られた。線形プローブでは、合成言語ごとの差は小さく、英語で一から学習したモデルが明確に上回った。このため、性能差は単語単位の単純な品詞特徴ではなく、より広い埋め込み空間の使い方に関係する可能性がある。

具体例

たとえば、Tiny-Cloze Benchmark には "She ate breakfast # she went to school" という入力がある。候補は "before" と "after" であり、モデルは空所に入る語を直接出力するのではなく、それぞれの候補を入れた場合の対数尤度を比べる。朝食を食べたことが登校より前に起きるという時間関係を捉えれば、"before" の確率が高くなる。合成言語で事前学習した段階では、モデルは英語の単語を知らないが、括弧列の対応やブロック内の残り記号を予測する経験を持っている。英語へ微調整すると、その経験で作られた系列処理の回路が、語順や文中の依存関係を扱うために再利用される可能性がある。間違えやすいのは、局所的に "breakfast" と "school" という語だけを見て、時間関係の向きを十分に見ない場合である。また、"after" も文法的には空所に入るため、単なる品詞判定では正解できない。この例は小さいが、論文が測ろうとしたものをよく表している。すなわち、モデルが表面的な語の形だけでなく、短い文の中の関係をどれだけ扱えるかである。