izmyonの日記

奈良の山奥で研究にいそしむ大学院生の学習記録。

今日の論文2023/05/01,02:Transformer Feed-Forward Layers Build Predictions by Promoting Concepts in the Vocabulary Space

Transformer Feed-Forward Layers Build Predictions by Promoting Concepts in the Vocabulary Space

aclanthology.org

Mor Geva, Avi Caciularu, Kevin Wang, and Yoav Goldberg. 2022. Transformer Feed-Forward Layers Build Predictions by Promoting Concepts in the Vocabulary Space. In Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing, pages 30–45, Abu Dhabi, United Arab Emirates. Association for Computational Linguistics.

©2022 Association for Computational Linguistics

License: Creative Commons Attribution 4.0 International License(CC-BY)

本記事は、原著の内容に基づき筆者が翻訳しまとめたものです。以下の図は、そこから引用しています。

This article is my note based on my translation of the original publication. The following figures are taken from it.

要点まとめ

 トランスフォーマー言語モデル(LM)は、現代の自然言語処理の中核をなすものであるが、その内部予測構築プロセスは不透明で、ほとんど理解されていない。本研究では、トランスフォーマーモデルの構成要素の一つであるフィードフォワードネットワーク(FFN)層の動作をリバースエンジニアリングすることで、この根本的な予測プロセスの解明に向けた実質的な一歩を踏み出すことにした。トークン表現を語彙の変化する分布とみなし、各FFN層からの出力をその分布に対する追加的なアップデートとみなす。そして、語彙空間におけるFFNのアップデートを分析し、各アップデートは単一のFFNパラメータベクトルに対応するサブアップデートに分解できることを示し、それぞれが人間の解釈のしやすい概念を促進することを示す。さらに、これらの知見を活用して、GPT2の毒性をほぼ50%低減したLM予測の制御や、単純な早期終了ルールによる計算効率の改善を行い、平均で20%の計算量の削減を実現する。

序論

 トランスフォーマーに基づく言語モデル(LM)は、どのように予測を構築するのだろうか?我々はこの疑問を、トランスフォーマーのコアコンポーネントの1つであるフィードフォワードネットワーク(FFN)層のレンズを通して研究する(Vaswani et al., 2017) 最近の研究では、これらの層がLMにおいて重要な役割を果たし、事実と言語知識を符号化する記憶として機能することが示された(Geva et al., 2021; Da et al., 2021; Meng et al., 2022)。 この研究では、FFN層からの出力がどのように予測を構築するために内部で利用されるかを調査する。

 まず、図1に描かれた入力における単一のトークンの表現に関して、2つの観察を行うことから始める。 第一に、各FFN層は、トークン表現への加算アップデートを誘導する(図1,A)。第二に、層全体のトークン表現は、任意の段階で出力語彙の分布に変換することができる(Geva et al., 2021)(図1,B)。我々は、分布のアップデートにおける加法成分がこの分布を変化させる(セクション2)、すなわち、FFN層は出力語彙の観点から解釈できるアップデートを計算すると考える。

 次に、FFNアップデートを分解し(セクション3)、サブアップデートの集合として解釈し、それぞれが出力分布のトークン確率をスケールする二つ目のFFN行列(図1,C)の列と対応する。一連の実験を通じて、(a)ネットワーク全体にわたるサブアップデートベクトルは、「朝食」や「代名詞」(セクション4、図1,D)など、人間が解釈できる少数のよく定義された(human-interpretable well-defined)概念をエンコードすることが多いこと、(b)FFNアップデートは主に(除去するというよりも)トークン促進によっていることがわかった。つまり、出力分布の上位にあるトークンは、サブアップデートによって十分に強く押し出されたトークンである(セクション5)。全体として、これらの発見はFFN操作のきめ細かな解釈を可能にし、LMにおける予測構築プロセスのより良い理解を提供する。

 この結果は、解釈の域を超え、現実的な有用性を持っている。6.1節では、予測プロセスに介入することで、出力分布を自分の好きな方向に変化させる方法を示す。 具体的には、GPT2において、10個のサブアップデートの重みを増やすことで、その生成の毒性を50%近く減少させることを示す。また、6.2節では、支配的なサブアップデートが早期終了点を予測するための有用なシグナルとなり、平均で20%の計算量を節約できることを示す。

 最後に、FFN層がトランスフォーマーベースのLMの内部表現をアップデートするメカニズムについて検討した。FFNの出力は、語彙空間における具体的な概念を促進するアップデートの集合とみなすことができ、これらの概念はしばしば人間にとって解釈可能であることを提案する。この結果は、現代のLMにおける予測構築プロセスに光を当て、解釈可能性、制御性、効率性についての有望な研究方向を示唆している。

語彙の進化的分布としてのトークン表現

 現代のLM(Baevski and Auli, 2019; Radfordet al., 2019; Brown et al., 2020)は、主に与えられた入力の次のトークン確率を予測するために訓練されたトランスフォーマーモデルである。 このようなLMは、Multi-Head Self Attention(MHSA)層とFFN層(Vaswani et al., 2017)から構成され、連続する層の各対の間に残留接続(He et al., 2016)を有する。LM予測は、最終層からの隠れ次元 dを持つ出力ベクトルを埋め込み行列 E \in \mathbb{R}^{| \mathcal{V} | × d}に投影し、ソフトマックスの後、語彙 \mathcal{V}上の分布を得ることで得られる。

 入力トークンのシーケンス \boldsymbol{w} =⟨w_1, \ldots ,w_t⟩が与えられると、モデルは各トーク w_i \in \boldsymbol{w}に対して文脈に応じた表現 \boldsymbol{x}_i \in R_dを作成し、それは層を通して更新される。この研究では、FFN層が適用する更新と、それがどのようにモデル予測を構築するかを分析する。 具体的には、各FFN層 \ell = 1, \ldots, Lは、 x_i^{\ell} を処理して出力 o_i^{\ell}を生成し、これを加算して更新表現 \tilde{x}_i^{\ell} を生成する。

 o_i^{\ell} = \text{FFN}^{\ell} ( x_i^{\ell} ) \\
\tilde{x}_i^{\ell} = x_i^{\ell} + o_i^{\ell}

 更新表現 \tilde{x}_i^{\ell} はMHSA層を通って、次のFFN層の入力 x_i^{\ell + 1} が得られる。このプロセスで進化する表現(すなわち x_i^{\ell} \rightarrow \tilde{x}_i^{\ell}, \forall \ell )は、各層で処理・更新される情報ストリームとみなすことができる(Elhage et al., 2021)。 出力確率分布は、トークンの最終的な表現から得られる。すなわち

 y = \text{softmax} ( E \tilde{x}_i^L ) \tag{1}

 FFN 更新を分析するために、式(1)と同じ投影を適用して、出力語彙に対する任意のレイヤーの分布をその表現から読み取る (Geva et al, 2021)

 p_i^{\ell} =\text{softmax} ( E x_i^{\ell} ) \\
p_i^{\ell} =\text{softmax} ( E \tilde{x}_i^{\ell} )

ただし、 \tilde{p}_i^L = y。重要なことは、線形性によって、

 E \tilde{x}_i^{\ell} = E x_i^{\ell} = E o_i^{\ell}

となり、 o_i^{\ell} は語彙空間の追加更新と解釈されることである。しかし、FFNの出力 E o_i^{\ell} の語彙への投影は解釈できないことがわかった(セクション4)。そこで、本研究では、この問題を解決するために、更新 o_i^{\ell} をより小さなサブ更新情報の集合に分解する。このサブアップデートを語彙に投影すると、人間が解釈可能な概念を表現している場合が多いことがわかる。

本稿の残りの部分では、FFNのアップデートのうち、これらのシーケンス内の単一のトークンの表現に焦点を当て、簡潔にするためにトークン・インデックスを省略する。つまり、 x^{\ell} := x_i^{\ell}  p^{\ell} := p_i^{\ell}とする。

出力分布のアップデートの集まりとしてのFFNの出力

 FFNの出力を分解し、語彙空間のサブ更新の集合として解釈する。

FFNの出力は線形ベクトル結合である。 \ellの各FNNは、2つの線形変換とその間のポイントワイズ活性化関数で構成されている(バイアス項は省略されている)。

 \text{FFN}^ {\ell} ( x^{\ell} ) = f ( W_K^{\ell} x^{\ell} ) W_V^{\ell}

ここで、 W_K^{\ell}, W_V^{\ell} \in \mathbb{R}^{d_m × d}はパラメータ行列であり、 f非線形関数である。このモジュールは、 W_K^{\ell}の行と W_V^{\ell}の列をそれぞれkeyとvalueとみなす、模倣されたneural key-value mdemory(Sukhbaatar et al, 2015,2019) としてキャストできると、これまでの研究で提案されている(Geva et al,2021)。入力 x^{\ell}に対して、 W^{\ell}_Vの値を重み付けする係数 \boldsymbol{m}^{\ell} := f(W^{\ell}_K x^{\ell} ) \in \mathbb{R}^{d_m}のベクトルを生成する。 W_K^{\ell} i行目を k_i^{\ell} W_K^{\ell} i列目を v_i^{\ell}とすると、次のような定式化が可能である。

 \text{FFN}^{\ell}(x^{\ell}) = \sum_{i=1}^{d_m} f( x^{\ell} \cdot k_i^{\ell} ) v_i^{\ell} = \sum_{i=1}^{d_m} m_i^{\ell} v_i^{\ell}

したがって,FFNの更新は,それぞれがFFN出力の重み付けされたvalueベクトルに対応する、サブ更新の集合とみなすことができる。

用語説明。以下、ベクトル v_i^{\ell}valueベクトル、重み付けされた形式、 m^{\ell}_i v^{\ell}_iをサブアップデートと呼ぶ。 L=10 d_m=3000トランスフォーマーLMは3万個のvalueベクトルを持ち、トランスフォーマーを通過するトークンごとにvalueベクトルの重み付けが異なるため、3万個のサブアップデートになるが、このうち高い重みを持つサブアップデートはごくわずかである。

語彙空間のサブアップデートを解釈する。与えられた入力に対して、サブアップデート m_i^{\ell} v_i^{\ell}を考え、入力に対して m_i^{\ell} v_i^{\ell}が出力分布に与える変化を分析することで、(FFN更新前の)表現 x^{\ell}への影響を推定することができる。具体的には、 w \in \mathcal{V}の確率 p_w^{\ell}上の] m_i^{\ell} v_i^{\ell}の影響を分離する。

 p(w|x_{\ell+m_i^{\ell}}, E) = \frac{\exp(e_{w} \cdot x^{\ell} + e_{w} \cdot m_i^{\ell} v_i^{\ell} )}{Z(E(x^{\ell}+m^{\ell}_i v^{\ell}_i ) ) } \propto \exp(e_{w} \cdot x^{\ell}) \cdot \exp(e_{w} \cdot m_i^{\ell}v_i^{\ell}) \tag{2}

ここで、 e_wはwの埋め込み、 Z( \cdot )は定数ソフトマックスの正規化係数である。

 このことは、各サブアップデート m_i^{\ell} v_i^{\ell}が、各トーク wの確率に、その e_wとのドット積に基づくスケーリングファクターを導入することを意味する。具体的には、 e_w \cdot m_i^{\ell} v_i^{\ell}>0であれば wの確率は高くなり、一方 e_w \cdot m_i^{\ell} v_i^{\ell} < 0であれば低くなる。

語彙空間の概念をエンコードするサブアップデート

 語彙への投影がFFNアップデートを「読む」ための有意義な方法を提供するかどうか、また、その投影に基づいてサブアップデートがどの程度相互に解釈可能であるかを評価する。この目的のために、我々は、valueベクトルによってトップスコアを獲得したトークンを手動で検査し、それらが解釈可能な概念を表現しているかどうかをチェックする。具体的には、代表的な2つのLM(詳細は後述)を考え、各ベクトル v_i^{\ell}に対して、射影 r_i^{\ell}(セクション3)をソートすることで語彙のランキングを算出する。次に、それぞれの値ベクトルの上位に位置するトークンのパターンを検出する。

概念アノテーションタスク。専門家(NLP大学院生)に、各トークンの上位30個に共通するパターンを検出することにより、概念アノテーションを行う。 アノテーションの手順は、以下の3つのステップからなる。: (a) 少なくとも4つのトークンに出現するパターンを識別する、(b) 認識した各パターンを記述する、(c) 各パターンを「意味的」(例:哺乳類)、「構文的」(例:過去形動詞)、「名前」のいずれかに分類する。最後のクラスは、WIKILM(後述)の語彙の大部分が名前であるという観察に基づき、WIKILM用にのみ追加された。

モデル。 我々は2つの自己回帰デコーダLMに対して実験を行った。単語レベルのトークナイザー( | \mathcal{V} | = 267,744)でWIKITEXT-103コーパス(Merity et al, 2017)で訓練した16層のLMである、Baevski and Auli (2019) のモデル(WIKILMと呼ばれる)。サブワードレベルのトークナイザ―( | \mathcal{V} | = 50,257)を用いて、WEB-TEXT(Radford et al., 2019)で学習した12層LMであるGPT2(Radford et al., 2019)を使用した。GPT2はGeLU活性化関数(Hendrycks and Gimpel, 2016)を使用するが、WIKILMはReLUを使用し、GPT2とは対照的に、WIKILMはFFN更新後にレイヤー正規化を適用しない。WIKILMは d= 1024 d_m= 4096、GPT2は d= 768 d_m= 3072で,それぞれ65kと36kのvalueベクトルとなる。今回の実験では、各モデルから1層あたり10個のランダムなベクトルを抽出し、WIKILMとGPT2からそれぞれ160個と120個のベクトルを分析した。

サブアップデートの投影は意味がある

実際のサブアップデートvsランダムなサブアップデート。我々は、valueベクトルと正規分布からの10個のランダムなベクトルのトップトークンの概念を、現実のベクトルの経験的平均と標準偏差と比較することによって、我々のアプローチを検証する。その結果、WIKILMでは55.1%対22.7%、GPT2では37%対16%と、ランダムなベクトルよりもvalueベクトルの方が概念に関連づけられる割合が高いことがわかった(表2)。 また、両モデルとも、ベクトルあたりの平均概念数は、valueベクトルでは1以上であったのに対し、ランダムベクトルでは約0.5であった。特に、WIKILMのランダムベクターでは意味概念も構文概念も同定されず、GPT2では、ランダムベクターではトークンの4%しか意味概念としてマークされなかったのに対し、valueベクターでは24.9%であった。

アップデート vs. サブアップデート。各層10個のランダムFFN出力のトップからトークンの概念を分析しFFN出力分解を検証した(表2)。WIKILM(GPT2)では、39.4%(46%)のトークンが概念と関連していたが、19.7%(34.2%)は「ストップワードまたは句読点」であることが分かった。 また、WIKILMの最後の2層では、概念が非常に少ない(4%未満)ことが確認された。これは、レイヤーの出力を支配する極端なサブアップデートのためと考えられる(5.2節)。これらの概念を除外すると、アップデートの投影におけるトークン網羅率は、サブアップデートの投影と比較してかなり低くなる(WIKILMでは19.7%対55.1%、GPT2では11.8%対36.7%)。

 このことから、サブアップデートをボキャブラリーに投影することで、そのエンコードされた情報に対する意味あるインターフェイスとなることが分かる。また、サブアップデートのきめ細かな解釈には,FFN出力の分解が必要である。

サブアップデートの投影は解釈可能

図2は、WIKILMとGPT2について、レイヤー間のアノテーションの内訳を示したものである。どちらのモデルでも、またすべての層で、トップトークンのかなりの部分(WIKILMでは40%~70%、GPT2では20%~65%)が明確に定義された(well-defined)概念と関連しており、そのほとんどが「意味」に分類された。また、単一valueベクトルの上位トークンには、平均して1.5(WIKILM)と1.1(GPT2)の概念が関連付けられており、すべての層のサブアップデートは、少数のよく定義された概念をエンコードしていることがわかった。例を表1に示す。

 この結果は、Gevaら(2021)による、上層のvalueベクトルが特定のパターンに従った次のトークンの配置を表すことを観察した以前の結果を拡張するものである。 この結果は、すべての層で成立しており、これらのベクトルは特定のトークンを優先的に表現するのではなく、一般的な概念を表現することを示唆している。

FFNは出力分布のプロモートトークンをアップデートする

サブアップデートはしばしば予測可能な概念をエンコードすることを示したが(セクション4)、これらの概念はどのようにして出力分布を構成するのだろうか。 本節では、サブアップデートが候補トークンのプロモーションによって予測値を体系的に構成することを示す。

促進される候補 vs. 除去される候補

各サブアップデート m_i^{\ell} v_i^{\ell}は、スコア e_w \cdot m_i^{\ell} v_i^{\ell}に従って、トーク wの確率を増加、減少、または変化させないのいずれかである。このことから、トークンが出力分布の上位に押し上げられるメカニズムとして、サブアップデートの結果、好ましいトークンの確率が上昇する「促進」、サブアップデートの結果、候補の確率が低下する「除去」、またはその両方の混合、の3つが考えられる。どのメカニズムが実際に成り立つかを検証するために、サブアップデートが上位候補トークンに与えるスコアを表現によって分析する。分析を簡単にするために、各層で最も優勢な10個のサブアップデートによって引き起こされる変化に焦点を当てる。つまり、 |m_i^{\ell} | \cdot || v_i^{\ell} ||によって測定される、表現への貢献度が最も大きい10個のサブアップデート m^{\ell}_i v^{\ell}_iに焦点を当てる。

 実験では、WIKITEXT-103の検証セットから、WIKILMとGPT2の両方が学習中に観察しなかった2000例のランダムなサンプルを使用する。実験では人間によるアノテーションを行わないため、 L= 24 ,d= 1024, dm= 4096の大きなGPT2モデルを使用する。  まず、2種類のイベントにおける参照トークンに対するサブアップデートのスコアを比較する。

  • 飽和(表3上):モデルによって予測された最終トークン(例えば、 w = argmax ( \boldsymbol{y} ) )が、最終層までにトップ候補に昇格した更新 p^{\ell} \rightarrow \tilde{p}^{\ell}をいう。WIKILMとGPT2では,それぞれ1184イベントと1579イベントを対象として、最終層の前にFFNによって引き起こされる飽和イベントを分析した。

  • 除去(表3下): 更新 p^{\ell} \rightarrow \tilde{p}^{\ell}のうち、最も順位が下がったもの、つまり、トップ候補が他の候補の後ろに落ちて、ランクが1より大きくなった場合。全体を通し、我々の分析は、それぞれ1909個(WIKILM)と1996個(GPT2)の除去イベントを対象とする。

各イベントで最も支配的な10個のサブアップデートによる参照トークンの平均、最大、最小スコアを計算し、さらにイベント全体の平均を算出する。ベースラインとして、同じレイヤーのランダムな10個のサブアップデートのスコアを計算した。

 結果を表4に示す。両モデルとも、分布のトップに昇格したトークンは、トップから除外されたトークンよりも高い最大スコアを得ており(WIKILMでは1.2→0.5、GPT2では8.5→4.0)、少数の優勢なサブアップデートによって強く引き上げられていることがわかる。さらに、分布の上位から排除されたトークンは、支配的なサブアップデートとランダムなサブアップデートの両方によって、平均スコアがほぼゼロになるため、直接排除されていないことが示唆される。また、昇格したトークンでは、最大スコアが最小スコアよりも大幅に高い(WIKILMでは1.2 vs -0.8、GPT2では8.5 vs -4.9)のに対し、排除されたトークンでは、スコアの大きさが同程度(WIKILMでは±0.5、GPT2では 4.0 vs -3.6)である。最後に、ランダムなサブアップデートのスコアは劇的に小さくなっており、サブアップデートの選択に意味があり、係数が高いほど出力分布に大きな影響を与えることを示している。

 これは、FFNアップデートが、優位なサブアップデートに持ち上げられるトークンを上位候補とするプロモーションメカニズムで動作することを示唆している。

レイヤーをまたいだサブアップデート

異なるレイヤーのFFN演算を分析するために、レイヤーごとにトップ候補のスコアを分解してみる。具体的には、ある入力に対するLayer  \ell(FFN更新前)のトップ候補を w^{\ell} = argmax( p^{\ell} )とし、最も支配的な10個のサブ更新によるスコア e_w^{\ell} \cdot m_i^{\ell} v_i^{\ell} を取り出し、そのセットの平均、最小、最大スコアを計算する。

 図3より、両モデルとも最後の数層(GPT2では23-24層、WIKILMでは14-16層)までは、最大・最小スコアが非負の平均スコアに分布し、最大スコアが突出している(GPT2では3-5層、WIKILMでは4-11層)ことがわかる。このことから、トークン促進機構は層を超えて概ね成立していると考えられる。しかし、両モデルとも最後の層ではスコアが乖離し、負の最小スコアが強く、これは優勢なサブ更新によってトップ候補の確率が押し下げられることを示す。次に、このような正負のスコアの大きな乖離(図3、破線)は、小さな機能値ベクトルの集合の操作によるものであることを示す。

極端なサブアップデート。極端なFFNの更新を分析するために、まずvalueベクトルをクラスタリングし、ハイレベルな傾向を発見する。凝集型クラスタリング(Müllner, 2011)を用いて、コサイン距離行列 Dに基づき、各モデルについて10kクラスタを学習する。ここで、 D_{(l_1, i_1), (l_2, i_2 )} = 1- cos \left(v_{i_1}^{l_1}, v_{i_2}^{l_2} \right), \forall i_1, i_2 \in \{ 1, \cdots, d_m \}, \forall l_1, l_2 \in \{ 1, \cdots , L \}とした。次に、(a)上位候補のスコアがある閾値(GPT2は±10、WIKILMは±5)を超えたサブアップデートを抽出し、(b)その層のサブアップデートに各クラスタが出現する回数を数えることにより、極端に更新が多いクラスターを探す。

 いずれのモデルでも、図3に示す極端に更新されるのは少数の同質のクラスターで、大きく二つの値ベクトルのグループに分けることができる。上層にあり、一般にあり得ないトークン(例:レアトークン)を促進するベクトルと、全層に広がり、ありふれたトークン(例:ストップワード)を促進するベクトルである。これらのクラスターは、valueベクトルのごく一部(GPT2では1.7%、WIKILMでは1.7%)をカバーし、入力シーケンスが≦3トークンであるものや、文脈からターゲットトークンを容易に推測できるもの(例:文末のピリオド)においてほとんどアクティブであり、これらのvalueベクトルが「簡単な」モデル予測を構成する可能性を示唆している。さらに興味深いことに、ありそうもないトークンを促進するvalueベクトルは、上位のトークンを変えずに分布を伝播させる「飽和ベクトル」とみなすことができる。実際、これらのベクトルは最後の層にあり、多くの場合、モデルはすでに最終的な予測を保存している(Geva et al., 2021)。

アプリケーション

 制御されたテキスト生成(6.1節)と計算効率(6.2節)のために、我々の発見を活用する。

ゼロショット有毒言語抑制

LMは、その有用性を損なう有毒で有害な言語を生成することが知られている(Bender et al., 2021;McGuffie and Newhouse, 2020; Wallace et al.,2019)。

手法。LMが実際にプロモーションメカニズムで動作するのであれば、無毒なサブアップデートを「オンにする」ことで毒性を低下させることができると予想する。そこで、すべてのvalueベクトルの投影において上位のトークンを抽出し、(a)肯定的な言葉のまとまりを表現するベクトル(例:”safe”, "thank")を手動で検索するか、(b)トークンをPerspective APIで等級付けして無害なvalueベクトルを選択し、安全・無害概念を促進するvalueベクトルを見つける。図3によれば、これらのvalueベクトルの係数を比較的高い値である3に設定することによって、これらのvalueベクトルをオンにする。我々の方法を2つのベースラインと比較する。

  1. Self-Debiasing (SD) (Schick et al., 2021): SDは、与えられたプロンプトに対して、有害な補完(toxic completion)を促す自己顕示的な(self-debiasing)入力を付加し、元のプロンプトと比較してどのトークンが促進されるかを計算することで、望ましくない単語のリストを生成する。そして、これらの望ましくない単語の確率は、減衰定数 \lambda(デフォルトでは50に設定)に従って減少する。

  2. WORDFILTER:GPT2が禁止語リストから単語を生成するのを防ぐため、禁止語補完をもたらすロジットを - \inftyに設定する(Gehman et al., 2020)。

評価。本手法は、LMにおいて極端に毒性の高い補完をもたらす傾向がある1,225のプロンプトを集めたREALTOXICPROMPTS(Gehmanet al., 2020)という難解なサブセットで、6つの毒性属性に従ってテキストを評価するPerspective APIを使用して評価した。0.5以上のスコアは、その属性に対して有毒なテキストであることを意味する。さらに、LMの性能の変化を考慮するために、perplexityを計算する。Schicketら(2021)に従い、GPT2を使用し、20トークンを連続で生成する。

結果。無毒のサブアップデートを手動で見つけることは直感的で効率的だった(5分未満かかった)。表5より、わずか10個の値ベクトル(0.01%)を活性化することで、毒性が大幅に減少し(↓47%)、SD(↓37%)とWORDFILTER(↓20%)を上回った。 さらに、”safety”に関連する概念を促進するサブアップデートを誘導することは、一般的に無害なサブアップデートを誘導するよりも効果的である。 しかし、本手法の場合、SDの場合よりも複雑性が増加するものの、その増加幅は比較的小さかった。

自己教師による早期終了予測

近年、NLPタスクにおけるトランスフォーマーベースのLMの成功により、生産コストが大幅に上昇したため(Schwartz et al., 2020a)、発生したコストを削減する早期終了方法への関心が高まっている(Xu et al., 2021)。 このような方法では、実行プロセスを停止するタイミングを決定するために、小型のニューラルモデルを用いることが多い(Schwartz et al., 2020b; Elbayad et al., 2020; Hou et al., 2020; Xin et al.,2020, 2021; Li et al., 2021; Schuster et al.)

 本節では、優勢なFFNのサブアップデートが飽和イベントのシグナルになるという我々の仮説を検証し(5.2節)、外部モデル学習を伴わないシンプルで効果的な早期終了方法を作成する。 実験では、全層で飽和イベントが発生するWIKILMを用いる。

方法。WIKITEXT-103の10kの検証例を用いて、近傍法に基づく簡単な予測ルールを考案する。まず、すべての検証例について、各レイヤーで上位10位のサブアップデートを対応するクラスタマッピングする。 次に、各レイヤー \ellについて、飽和の有無に基づき、そのレイヤーの全てのクラスタ集合を T^{\ell} N^{\ell}に分割する(例えば、 T^5はレイヤー5の飽和イベントでアクティブだった集合を全て格納する)。ある層 \ellの未見例で上位10個のクラスタがある場合、 T^lとの重複度が N^{{\ell}'},  \forall {\ell}' > {\ell}よりも高いことは、は早期終了のシグナルであると考えた。 そこで、推論中に入力例を各層に伝播させ、各層 {\ell}で上位10個のアクティブクラスターと T^{\ell} N^{{\ell}'}, \forall \ell ' > {\ell}の各々の重複の大きさを計算する。 T^{\ell}の重複の平均値と最大値が N^{\ell}との交点を上回った場合、計算を中断し、早期終了を宣言する。

ベースライン。ロジスティック回帰を用いて、表現とFFNの更新 x^{\ell} o^{\ell}、゙ \tilde{x}^{\ell}について、層ごとの二値分類器を訓練する。本手法と同様に、ラベルは学習データの飽和事象に応じて決定される。推論中は、レイヤーを通して計算を実行し、レイヤーの分類器に従って停止させる。

評価。各手法は、予測された層から抜けると最終的なモデルの事前予測が得られる例の割合であるAccuracyと、正しい予測をした例に対して保存した層の量によって測定されるcomputation efficiencyで評価される。各手法を5つのランダムな種で実行し、平均スコアを報告する。

結果。表6によると、本手法は94.1%という高い精度を得ながら、事前予測を変えることなく平均で20%の計算量を節約していることがわかる。さらに、支配的なFFNサブアップデートを観察するだけで、表現とFFN出力ベクトルに依存する事前予測ルールと同程度の性能を発揮することがわかった。 このことは、飽和事象の予測にサブアップデートが有用であることを示し、FFNのアップデートが予測に機能的な役割を果たすという我々の仮説をさらに支持する(5.2節)。

結論

トランスフォーマーの内部構造を理解することは、エンドユーザーへの説明のしやすさ、予測のデバッグ、望ましくない動作の排除、およびNLPモデルの長所と限界の理解にとって価値がある。FFNは、トランスフォーマーに基づくLMのコアコンポーネントとして、あまり研究されていないものであり、本研究ではこれに焦点を当てる

 我々は、FFNの出力を、valueと呼ばれるパラメータベクトルと、これらのベクトルがトークン表現を更新するメカニズムとの線形結合として研究する。valueベクトルには人間が解釈可能な概念が含まれていることが多く、これらの概念は出力分布において促進されることを示す。

 トランスフォーマーベースLMの分析により、その内部予測プロセスをより詳細に理解することができ、個々のベクトルレベルでの解釈可能性、制御性、効率性に関する新しい研究方向が示唆された。