近年、清華大学コンピューターサイエンス学部の孫茂松氏のチームは、大規模な言語モデルパラメーターの効率的な微調整方法のメカニズムと特性を徹底的に調査し、研究分野の他の関連チームと協力してきました。研究成果「大規模事前トレーニング言語モデルのパラメータ効率的な微調整」(Parameter-eficient Fine-tuning of Large-scale Pre-trained Language Models)が完成し、3月に「Nature Machine Intelligence」に掲載されました。 2.この研究結果は、コンピュータサイエンス学科の孫茂松氏、李建子氏、唐潔氏、劉洋氏、陳建飛氏、劉志源氏、深セン国際大学院の鄭海濤氏らの教師と学生が共同で完成させたものです。と Sun Maosong はこの記事の責任著者であり、清華大学コンピュータ サイエンス学部で博士号を取得しており、Sheng Dingning (メンター Zheng Haitao) と Qin Yujia (メンター Liu Zhiyuan) はこの記事の共同筆頭著者です。
2018 年以降、事前トレーニング済み言語モデル (PLM) とその「事前トレーニング微調整」メソッドが、自然言語処理の主流のパラダイムとなっています。 (NLP) タスク、このパラダイムは、まず大規模なラベルなしデータを使用して自己教師あり学習を通じて大規模な言語モデルを事前トレーニングし、基本モデルを取得します。次に、下流タスクからのラベル付きデータを使用して教師あり学習を実行し、モデルを微調整しますパラメータを使用して、下流のタスクへの適応を実現します。
テクノロジーの発展に伴い、PLM は間違いなくさまざまな NLP タスクのインフラストラクチャになりました。PLM の開発には、一見不可逆的な傾向があります。つまり、モデルはますます大きくなっています。 。モデルが大きくなると、既知のタスクでより良い結果が得られるだけでなく、より複雑な未知のタスクを完了できる可能性も示されます。
しかし、大規模なモデルはアプリケーションにおいても大きな課題に直面しており、超大規模な事前トレーニング済みモデルをフルパラメータで微調整する従来の方法では、大量の GPU コンピューティングが消費されます。リソースとストレージ リソースの莫大なコストは法外です。このコストは、学術界に一種の「慣性」も生み出しています。つまり、研究者は小規模および中規模のモデルでのみ手法を検証し、大規模なモデルを習慣的に無視しています。
この記事の統計では、過去 5 つの NLP カンファレンスから 1,000 件の論文をランダムに選択し、事前トレーニングされたモデルの使用が研究の基本パラダイムとなっていることがわかりました。大規模なモデルが含まれますが、その数はほとんどありません (図 1 を参照)。
#図 1: ランダムに選択された 1000 件の論文間の事前トレーニング済みモデルを使用した統計分布
これに関連して、標準的なフルパラメータ微調整と比較して、新しいモデル適応スキーム、パラメータ効率の高い 手法が徐々に注目を集めています。これらの方法では、モデル パラメーターのごく一部のみを微調整し、残りは変更しないため、コンピューティングとストレージのコストが大幅に削減され、同時にフルパラメーターの微調整に匹敵するパフォーマンスが得られます。これらの方法は基本的に「増分」(デルタ パレムター) で調整されると考えられるため、デルタ チューニング と名付けました。
この論文では、デルタチューニング問題を定義して説明し、統一されたフレームワークを通じて以前の研究をレビューします。このフレームワークでは、既存のデルタ チューニング手法は、インクリメンタル (加算ベース)、仕様ベース (仕様ベース)、および再パラメータ化 (再パラメータ化) 手法の 3 つのグループに分類できます。
実際的な重要性に加えて、非常に重要な理論的重要性もあると考えています。デルタ チューニングは、大規模モデルの背後にあるメカニズムをある程度明らかにし、大規模モデルの理論をさらに開発するのに役立ちます。そしてディープニューラルネットワークさえも。この目的を達成するために、我々は、その後の構造とアルゴリズムの設計を導くために、最適化と最適制御の 2 つの観点からデルタ チューニングを議論するための理論的枠組みを提案します。さらに、代表的な手法の包括的な実験比較を実施し、100 を超える NLP タスクの結果について、さまざまな手法の包括的なパフォーマンス比較を実証します。実験結果には、デルタ チューニングのパフォーマンス、収束パフォーマンス、効率パフォーマンス、スケールの力、汎化パフォーマンス、および移行パフォーマンスの調査と分析が含まれます。また、実務者が PLM にデルタ チューニングを効率的かつ柔軟に実装できるようにするオープン ソース ツールキットである OpenDelta も開発しました。
# #図 2: デルタ チューニングの分割フレームワークデルタ チューニング: 手法と分析
事前トレーニングされたモデルとトレーニング データが与えられた場合、PLM は次の用途に適しています。フィッティングの目的は、パラメーターが であるモデルを生成することです。は、元のモデル上の操作として定義されます。従来のフルパラメータ微調整には、があり、その中には
があります。
## は、トレーニング データに関連する
内のすべてのパラメーターの更新された値です。デルタ チューニングでは、
とは、少数のパラメーターを変更することを指します。経験的に言えば、フルパラメータ微調整には
# があり、デルタ チューニングには
# があります。 ######。したがって、パラメータ効率の高いデルタ チューニングを、調整されたパラメータの形式と構造に基づいて 3 つの戦略に分割し、以前の方法を整理できます。
インクリメンタル (加算ベース) 方法
このタイプの方法では、元のモデルには存在しない追加のトレーニング可能なニューラル モジュールまたはパラメーターが導入されます。このタイプのアプローチでは、上記の定義に基づいて、が得られます。一般的な増分方法には、アダプター チューニング、プレフィックス チューニング、プロンプト チューニングなどが含まれます。彼らは常に小規模なニューラル モジュールまたは調整可能なパラメーターをモデルに挿入し、パラメーターのこの小さな部分のみを微調整することで効率的なモデル適応を実現します。中でも、アダプター チューニングはこの種の手法の先駆的な研究であり、単純なニューラル ネットワークを各層に追加するだけで、多くのタスクにおけるフルパラメーターの微調整に匹敵することができることを証明しています。同時に、Adapter はマルチタスクおよび複数言語のシナリオでもその可能性を実証します。プレフィックス チューニングとプロンプト チューニングは、最近非常に人気のあるデルタ チューニング アルゴリズムで、調整可能なベクトルを入力層またはプレゼンテーション層に挿入して微調整します。このうち、Prompt Tuning は Prefix Tuning の簡易版、つまり入力層に Soft Prompt を追加しただけと考えることができます。このアプローチは、モデルの内部構造を変更する必要がないという非常に大きな利点があると同時に、モデルパラメータの数が100億個に増加するにつれて、一部のデータに対するフルパラメータの微調整と同じ効果があります。ただし、このタイプの方法は、最適化に関する大きな問題にも直面しており、実験によると、その最適化効率は他の微調整パラダイムよりも低く、収束までに時間がかかり、中小規模のモデルではパフォーマンスが低いことがわかっています。
#図 3: デルタ チューニングの正式な表現
#このメソッドは、元のモデルの特定のパラメーターがトレーニング可能になる一方で、他のパラメーターが固定されることを指定します。このタイプのメソッドでは、トレーニング パラメーター セットを として表し、この時点で更新されたパラメーターを として表すことができます。それ以外の場合は増分値です。指定されたメソッドは、モデルに新しいパラメーターを導入したり、モデルの構造を変更したりすることはありませんが、最適化されるパラメーターを直接指定します。このアイデアはシンプルですが、驚くほどうまく機能します。たとえば、一部のメソッドは BERT と RoBERTa の最後の層の 4 分の 1 を微調整するだけで、完全なパラメーター微調整のパフォーマンスの 90% を生み出すことができます。 BitFit による研究では、モデル内のバイアス項を最適化し、他のパラメーターを固定するだけで、モデルが複数のベンチマークにわたってフルパラメーター微調整パフォーマンスの 95% 以上を再現できることが示されています。 BitFit の実験結果は、デルタ チューニングに小さなランダム パラメーター セットを使用した場合でも (明らかにパフォーマンスが低下します)、モデルは GLUE ベンチマークで許容可能な結果を生成できることも示しています。もう 1 つの貴重な観察は、異なるバイアス項がモデル適応中に異なる機能を持つ可能性があることです。
更新するパラメータを手動またはヒューリスティックに指定することに加えて、そのような仕様を学習することもできます。 Diff Pruning は代表的な作品の 1 つで、微調整されたモデルのパラメーターを、事前に学習されたパラメーターと差分ベクトルの合計に再パラメーター化します。現時点での重要な問題は、差分ベクトルが可能な限り疎になるようにすることです。この作業では、微分可能近似によってベクトルを正規化し、疎性の目標を達成します。実際、差分プルーニングは、学習フェーズ中に最適化される新しいパラメーターを導入するため、フルパラメーターの微調整よりも多くの GPU メモリを消費しますが、大規模な PLM 上のアプリケーションでは困難になる可能性があります。マスキング手法 (マスキング) は、PLM の選択的マスクを学習し、特定のタスクのクリティカル ウェイトのみを更新します。このようなマスクのセットを学習するには、モデルの重みに関連するバイナリ行列が導入され、各値はしきい値関数によって生成されます。バックプロパゲーション中、行列はノイズ推定器によって更新されます。
このタイプのメソッドは、既存の最適化プロセスを変換することで、パラメータが有効な形式に再パラメータ化します。再パラメータ化されるパラメータのセットを として示し、それぞれが新しいパラメータで表されると仮定すると、更新されたパラメータは として示されます。簡単に言えば、再パラメータ化手法は多くの場合、事前トレーニングされたモデルの適応プロセスが本質的に低ランクまたは低次元であるという同様の仮定に基づいています。したがって、このプロセスはパラメーター効率の高いパラダイムと同等である可能性があります。
たとえば、モデルの適応には「固有の次元」があると仮定できます。微調整プロセスを低次元の部分空間での最適化プロセスに再パラメータ化することで、次のことが可能になります。満足のいくパフォーマンスを達成するには、空間内のサブ空間パラメーターを微調整するだけです。この意味で、PLM は、最適化の複雑さを高次元から低次元まで圧縮するための汎用圧縮フレームワークとして機能します。一般に、より大きな PLM の固有次元は通常より小さくなり、事前トレーニング プロセスによって暗黙的に PLM の固有次元が削減されます。これらの観察に触発されて、再パラメータ化デルタ チューニング法も提案されました。これは、低次元のサロゲート パラメータを使用して元のモデル パラメータ (の一部) を再パラメータ化し、サロゲート パラメータのみを最適化し、それによって計算コストとメモリ コストを削減します。
もう 1 つの有名な研究である LoRA では、モデル調整中の重みの変化には低い「固有ランク」があると仮定しています。この仮定に基づいて、彼らはセルフアテンションモジュールの元の重み行列の変化に対して低ランク分解を最適化することを提案しています。展開時に、最適化された低ランク分解行列が乗算されて、セルフアテンション重み行列の増分が得られます。このようにして、LoRA は GLUE ベンチマークの微調整されたパフォーマンスに匹敵することができます。これらは、GPT3 を含め、さまざまなサイズとアーキテクチャの PLM に対するアプローチの有効性を実証しています。
この種の低次元の仮定は、単一タスクの適応に適しているだけでなく、マルチタスクのシナリオにも拡張できます。 IPT は、複数のタスクに対して同じ低次元の固有部分空間が存在すると仮定しており、部分空間のパラメーターを調整するだけで、100 を超える NLP タスクで同時に満足のいく結果を達成できます。このメソッドは、ランダムな部分空間を使用する代わりに、複数の NLP タスクによって共有される共通の部分空間を見つけようとします。実験の結果、250 次元の低次元部分空間では、わずか 250 のパラメーターを調整するだけで、プロンプト チューニングのパフォーマンスの 80% 以上が 100 以上の NLP タスクで再現できることがわかりました。
# 図: 再パラメータ化手法は、多くの場合、同様の低次元または低ランクの仮定に基づいています
デルタ チューニングには本質的に共通点がありますか?私たちは、デルタ チューニング手法には高い実用的価値があるだけでなく、広範囲にわたる理論的重要性もあると信じています。それらはすべて、常に 1 つのことを証明しているように見えます。それは、大規模モデルの適応プロセスが非常に低コストのプロセスであるように見えるということです。 (事前トレーニングと比較して、非常に少ないデータと非常に少ないパラメータ調整で実行できます。デルタ チューニングの成功をきっかけに、モデル適応の背後にある理論的フレームワークをさらに探求することになりました。この記事では、デルタ チューニングの理論的研究を行うための 最適化と最適制御 という 2 つの観点からフレームワークを提案します。 。 解釈。
最適化の角度
デルタ チューニングは、元の大規模言語モデルで同じ結果を達成しようとします。 - 少数のパラメータを調整する完全なパラメータ微調整効果とメモリ使用量の削減。最適化の観点から、デルタ チューニングの効果を分析し、低次元の仮定の下でいくつかのデルタ チューニング方法の設計について議論します。デルタ チューニングを使用すると、目的関数とそれが依存するパラメーターが変化する可能性があります。新しい目的関数では、デルタ チューニングに関連するパラメーターのみが最適化され、初期値が十分であれば、特定の前提条件の下でモデルのパフォーマンスが大きく損なわれることはありません。ただし、デルタ チューニングの有効性を確保するには、この新しい目的関数を設計するための問題の構造を開発する必要があります。出発点は、問題に固有の低次元の特性を利用することです。一般的に、実際に役立つことが証明されているアイデアが 2 つあります。
ディープ ラーニングのほとんどのアプリケーションでは、通常、目的関数には多くの極小点があるため、初期値が極小点に近い場合、極小点はわずか数個しかありません。探索方向が重要であるか、目的関数をこの付近のより単純な関数で近似することができます。したがって、どちらの最適化アイデアも良好な結果が得られることが期待され、通常は低次元パラメーターを最適化する方が効果的で安定しています。
# 解空間の低次元表現。 既存の研究では、事前トレーニング済み言語モデルのパラメーター最適化は低次元多様体に従うことが示されているため (Aghajanyan et al., 2021)、この多様体は次のいずれかに埋め込むことができます。解はベクトルの低次元表現です。この低次元表現が正確であれば、元のモデルのフルパラメータ微調整は、この低次元パラメータの微調整と同等になります。低次元表現に誤差がある場合、事前学習済みモデルの目的関数と新しい目的関数がリプシッツ連続性を満たすとき、フルパラメータ微調整と低次元パラメータ微調整の間の最終的な効果の差は、チューニングもコントロール可能です。
一部のデルタ チューニング手法は、この設計アイデアから恩恵を受けます。たとえば、LoRA (Hu et al., 2021a) では、重み行列は低ランク近似を採用していますが、BitFit (Zaken et al., 2021) や diff pruning (Guo et al., 2021) では、一部の選択されたパラメーターのみが使用されます。最適化。これらの方法の本質は、解ベクトルのより小さな部分空間でパラメーターを更新し、最終的にはより良い結果を達成することです。
#関数空間の低次元表現。 もう 1 つのアプローチは、元の目的関数の近似関数を直接設計し、この関数の近似誤差が小さいことを期待することです。このような関数近似は、インクリメンタル ネットワーク (Houlsby et al.、2019) または拡張特徴空間 (Lester et al.、2021) にすることができます。私たちは通常、言語モデルの最終的な効果に関心があるため、目的関数自体に対する近似的な効果を直接考慮することが合理的です。
実際には、このような関数近似を構築するさまざまな方法があります。最も単純なのは、ネットワークの一部のパラメータを修正し、残りのパラメータのみを微調整することです。この方法では、ネットワークの一部がネットワーク全体のパフォーマンスを大まかに反映できることが期待されます。ネットワーク内の関数の役割はデータ フローによって特徴付けられるため、低ランクの表現を元のネットワークのデータ パスに挿入することができ、その結果として得られる新しいモデルはアダプターなどの増分ネットワークです。関数の誤差はデルタ ネットワークの表現力によって決まります。
Transformer の自己回帰構造が開発されれば、より洗練された関数近似も取得できます。たとえば、プロンプト チューニング (Lester et al.、2021) では、一連のプロンプト トークンをプレフィックスとして入力に追加し、これらのプロンプト トークンが依存するパラメーターのみを微調整します。この方法は特徴空間の拡張とみなすことができ、Transformer の特性のおかげで、このような関数は元の関数をよりよく近似し、言語モデルが特定のタスクに焦点を当てるようにガイドできます。関連する方法には、プレフィックス チューニングなどがあります (Li & Liang、2021)。実験によると、モデルやデータ セットが大規模になると、迅速な調整がより有利になることが観察されています。これらの手法は基本的に低次元関数を使用して高次元関数を近似するため、これも合理的です。モデルとデータの規模が大きくなると、大きいほど、関数近似の部分空間を選択する自由度が自然に高くなります。
2 つの低次元表現は、通常、形式的には同様のデルタ チューニング手法につながります。 (He et al., 2022) は、アダプター、プレフィックス チューニング、および LoRA について正式に統一した声明を発表しました。これは、さまざまなデルタ チューニング技術を関数近似の観点から見たものとみなすことができます。私たちの議論は、これらのデルタ調整方法が低次元の仮定に依存していることを示しています。実際、異なるタスクには共通の低次元部分空間さえ存在します (Qin et al., 2021b)。 Su et al. (2021) と私たちの実験セクションでは、さまざまなタスク間でのデルタ チューニングの移行可能性も実証しています。デルタ チューニングの実際の効果は必然的にタスクに関連するため、フルパラメータ微調整の効果を達成するには、問題自体の構造をより適切に探索して利用するか、いくつかのハイブリッド アルゴリズムを設計することが有益です。
#最適制御の観点
最適制御の観点からディープラーニングを説明するこれまでの理論に基づいて、以下から始めます。デルタチューニングは最適なコントローラーを見つけるプロセスとみなすことができることが明らかになりました。自己回帰分類モデルの場合、モデルは最後のステップ (位置としてマーク) でラベル予測を生成します。この最適化プロセスは次のように表現できます:
ここでの関数は、デルタの介入のもとで PLM における変更の前方伝播を定義します。具体的には、学習可能なアクティベーションは からの固定パラメータであるため、層での表現を に正しく変換できます。したがって、2 つの連続するレイヤー間の表現変換は、Transformer の関数と残差接続によって記述されます。アダプターとプレフィックスの加算ベースの方法、BitFit の指定された方法、または LoRA の大量のパラメーター化方法のいずれであっても、デルタ チューニングを表すこのような関数を導出できます (詳細な導出は論文にあります)。
デルタチューニングにおけるソフトマックス関数と正則化項を終端とみなし、デルタパラメータを制御変数の操作損失として扱い、デルタチューニング問題を離散時間として定式化します。したがって、デルタチューニングにおける順方向伝播と逆方向伝播は、ポントリャギンの最大原理における同型過程の計算と等価です。要約すると、インクリメンタル チューニングは、特定の下流タスク用の PLM に最適なコントローラーを探すプロセスとみなすことができます。
私たちの分析は、新しいデルタ チューニング手法の設計にインスピレーションを与えることができ、また、PLM におけるデルタ パラメーターの介入がコントローラーの設計と同等であることも実証します。コントローラー設計の理論を適用することで、設計されたデルタ構造が PLM の十分な励起下で原理的に解釈可能であるという理論的保証を備えた、より多くのデルタ調整方法を提案できると期待しています。
デルタ チューニングの包括的な実験分析デルタ チューニングは、大規模な PLM をインスピレーションおよび呼び出すための効率的な方法として、さまざまな実際のアプリケーション シナリオで大きな可能性を秘めています。このセクションでは、さまざまな主流のデルタ チューニング方法の特性をより深く理解するために体系的な実験を実施します。
#1. パフォーマンス、収束、効率の分析
最初に、フルパラメータの微調整と 4 つの代表的なデルタ チューニング方法 (プロンプト チューニング (PT)、プレフィックス チューニング (PF)、LoRA (LR)、アダプター (AP を含む) を選択します。 )) は、パフォーマンス、収束、効率分析の徹底的な比較を提供します。より多様な言語モデリング機能をテストするために、テキスト分類 (感情分類、自然言語推論など)、質問応答 (抽出読解など)、言語生成 (テキスト要約など) を含む 100 以上の典型的な NLP タスクを選択しました。 )、ダイアログ)、およびその他のタスク、およびすべてのタスクの入力と出力はシーケンス対シーケンス形式でモデル化されるため、すべてのタスクを均一にモデル化するには同じモデル (T5) を使用すると便利です。 PT が T5 ベースと T5-large でテストされることを除き、他のメソッドは T5 ベースでテストされます。
パフォーマンス分析: 実験結果は上の表に示されており、次のことがわかります。 (1) 一般に、異なるデルタ チューニング手法は少数のパラメータのみを微調整するため、最適化の難易度が高くなり、ほとんどの場合、パフォーマンスで FT に匹敵することはできませんが、2 つの間のギャップは克服できないわけではありません。効率的なパラメータ適応の大規模なアプリケーション。 (2) PF、LR、AP の 3 つの方式の設計要素は異なりますが、性能は同等です。一部のタスクでは、そのうちの 1 つが他のもの (または FT) よりも優れたパフォーマンスを発揮する可能性があります。平均結果に基づくと、すべてのメソッドのパフォーマンス ランキングは FT > LR > AP > PF > PT です。同時に、デルタ チューニング手法のパフォーマンスは、調整可能なパラメータの数と一致しないこと、つまり、調整可能なパラメータが多いほどパフォーマンスが向上するとは限らないこともわかりました。より重要な役割を果たす可能性があり、大きな効果があります。 (3) PT はこれらの手法の中で実装が最も簡単です (つまり、モデルの内部構造を変更しません) が、ほとんどの場合、そのパフォーマンスは他のデルタ チューニング手法に比べて大幅に遅れます。
収束分析: いくつかのデータセットに対するさまざまな微調整手法のパフォーマンスを抜粋しました。 PT の収束速度が他の手法に比べて遅すぎるため、トレーニング ステップ数によるパフォーマンスの変化は上の図には含まれていません。一般に、これらの微調整方法の収束速度の順序は、FT > AP ≈ LR > PF であることがわかります。 PF はすべてのデルタ調整方法の中で調整可能なパラメーターの数が最も多いですが、依然として収束の困難に直面しているため、収束速度は微調整できるパラメーターの数に直接関係しません。実験では、各デルタ チューニング方法のパフォーマンスと収束は、調整可能なパラメーターの数には影響されませんが、特定の構造により影響されることもわかりました。全体として、私たちの実験は収束と全体的なパフォーマンスの点で非常によく似た結論を導き出し、これらの結論は多数のデータセットの結果によって十分に裏付けられています。
効率分析: デルタ チューニングにより、パラメーターの勾配計算が削減され、GPU メモリが節約されます。 . コンピューティング リソースの効率を反映します。 GPU メモリ上でのデルタ チューニングの効率向上を具体的に検証するために、さまざまなサイズの PLM で微調整するためのさまざまなデルタ チューニング方法によって消費される GPU メモリを比較する実験を実施しました。具体的には、T5 モデルの 3 つのスケール、つまり T5-base、T5-large、および T5-xl を選択し、さまざまなバッチ サイズで到達するピーク GPU メモリをテストしました。実験にはNVIDIA A100(最大GPUメモリ=39.58GB)を使用します。上の図から、バッチ サイズが小さい場合 (1、8 など)、デルタ チューニングは GPU メモリの最大 3/4 を節約でき、バッチ サイズが大きい場合、デルタ チューニングは GPU メモリを節約できることがわかります。少なくとも GPU メモリの 1/3。上記の結果は、コンピューティング リソースの観点からデルタ チューニングの効率を反映しています。
2. 構成可能性分析
さまざまなデルタ チューニング方法が相互に互換性があることを考慮すると、これは次のことを意味します。これらは同じ PLM に同時に適用できます。そこで、デルタチューニングを組み合わせることでパフォーマンスが向上するかどうかを調査しました。具体的には、同時結合と逐次結合の 2 つの結合方法を検討し、代表的なデルタ チューニング方法として Prompt Tuning、BitFit、Adapter の 3 つを選択しました。
同時組み合わせ: まず、3 つのデルタ チューニング方法を同時に適用する効果を調査し、RoBERTa-large を使用して 8 つの GLUE サブタスクで実験を行います。フルデータと低リソースの両方のシナリオで実験を実施し、パフォーマンスに対する人工入力テンプレートの影響を調査しました。人工テンプレートは、トレーニング前と下流のタスク適応の間のギャップを埋めるように設計されています。
上記の表からわかるように、(1) フルデータのシナリオでも低リソースのシナリオでも、手動かどうかテンプレートが存在し、デルタ チューニングを組み合わせてアダプタを導入すると、ほとんどの場合、平均的な GLUE パフォーマンスが向上します。(2) プロンプト チューニングを組み合わせて導入すると、通常、平均的なパフォーマンスが低下します。これは、プロンプト チューニングが他の 2 つのデルタ チューニング方法と互換性がない可能性があることを示しています。 3) BitFit をミックスに導入すると、一般的に平均パフォーマンスが向上します; (4) 手動テンプレートは、下流のタスク適応と事前トレーニングの間のギャップを埋めることにより、ゼロショット パフォーマンスを大幅に向上させることができます (23.7 から 43.4 に)。ショット数が少ない設定では、人工テンプレートによって平均パフォーマンスが大幅に向上する可能性もあります。ただし、トレーニング監視信号が比較的豊富な場合 (フルデータ シナリオの場合)、人工テンプレートの導入ではパフォーマンスの改善が弱いだけであり、パフォーマンスに損害を与える可能性さえあります。
逐次組み合わせ: 同時組み合わせに加えて、上記 3 つのデルタ チューニング方法を特定の順序で導入した場合の互換性をさらに研究しました。具体的には全体の微調整を3段階に分けて行います。各ステージで個別のデルタ チューニング方法をトレーニングします。次のステージでは、前のステージでトレーニングしたデルタ チューニング パラメータを変更せずに固定し、新しく導入されたデルタ チューニング パラメータのみを最適化します。 SST-2 感情分類データセットで人工テンプレートを使用または使用しない RoBERTa-large の実験を実施します。結果は以下の図 (抜粋) に示されており、場合によっては、新しいデルタ チューニング手法を継続的に導入することで、全体的なパフォーマンスを継続的に向上させることができると結論付けることができ、順次組み合わせの利点が検証されます。また、さまざまな設定の下では、固定された最適な組み合わせシーケンスが存在しないこともわかりました。最適な組み合わせは、さまざまなダウンストリーム タスク、使用されるモデル アーキテクチャ、およびその他の要因によって異なる場合があります。
# 一般化ギャップ分析: トレーニング データに対するさまざまな微調整方法の記憶能力 (暗記) と一般化能力 (一般化)は同じではありません。この目的のために、全データ設定における RoBERTa-large の一般化ギャップ (トレーニング セット効果 - 開発セット効果) を報告します。結果は以下の表に示されています。デルタ チューニング方法 ギャップは常にファインチューニングよりも小さいため、過剰なパラメータ化はトレーニング サンプルをより適切に記憶 (オーバーフィット) するのに役立つ可能性があることを意味します。プロンプト チューニングは、すべてのデルタ チューニング方法の中で一般化ギャップが最も小さい傾向があります。各デルタ チューニング手法が適切に一般化でき、開発セット上で自明ではないパフォーマンスを示すことを考慮すると、トレーニング セットの過剰適合は良好な一般化の必要条件ではない可能性があります; (2) 一般に、複数のデルタ チューニング手法を組み合わせると一般化が向上します。フルファインチューニングと同じレベルに達することさえあります。これは、トレーニング セットを記憶する (記憶) にはそれほど多くの微調整は必要ない可能性があることを示しています。つまり、PLM が下流のタスクに適応する場合、モデルの微調整能力が小さくても、記憶するには十分です。トレーニングセット; (3) 人工テンプレートの使用は、一般に汎化ギャップに影響を与えません。
3. モデル サイズの増加に伴うパフォーマンスの変化
モデル サイズの増加がデルタ チューニングのパフォーマンスに及ぼす影響を調査しました。インパクト。最近、使用される PLM モデルのサイズが大きくなるにつれて、プロンプト チューニングのパフォーマンスがますます強化され、フルパラメータのファインチューニングに匹敵するレベルに達することさえあることがいくつかの研究で判明しました。このセクションでは、すべてのデルタ チューニング方法がスケールの力を発揮するかどうかを検討します。具体的には、MNLI、QNLI、SST-2 の 3 つの典型的な NLP タスクで実験を実施し、規模が大きくなる 3 つの PLM (T5-small、T5-base、T5-xxl) を選択し、6 つの代表的なデルタ チューニングのパフォーマンスを評価しました。方法 (アダプター、LoRA、プレフィックス チューニング、プロンプト チューニング、最終層チューニング、および選択的モジュール チューニング) の結果を次の図に示します。
##図 (a-i) から、PLM ネットワークの規模が拡大するにつれて、すべてのデルタ チューニング手法のパフォーマンスと収束が大幅に向上していることがわかります (2) さらに、図 (j-l) は次のことを示しています。他のデルタ チューニング方法と比較して、プロンプト チューニングは小規模 PLM (T5 スモールおよび T5 ベース) ではパフォーマンスが低下する傾向があります。しかし、他のデルタ チューニング方法にはこの問題はありません; (3) 既存の結果に基づいて、図 11 (m-o) および (p-r) で、最終層チューニングと選択モジュール チューニングという 2 つのデルタ チューニング方法をさらに設計します。最終層調整の場合は、T5 エンコーダーの最後の層のみを微調整します。選択モジュール調整の場合は、T5 モデル内のいくつかのモジュールをランダムに選択して微調整します。どちらの方法も、特に PLM の規模が非常に大きい場合に優れた結果を示し、選択モジュール チューニングの方が最終層チューニングよりわずかに優れています。これらの結果は、微調整可能なパラメーターを特定のレイヤーに制限するのは良い戦略ではない可能性があることを示唆しています。一方、PLM の規模が非常に大きくなった場合、異なるレイヤー間でモジュールをランダムに選択することで微調整することで、優れたパフォーマンスを実現できます。全体として、上記の結果は、PLM モデルのサイズが大きくなるにつれて、さまざまな微調整方法のパフォーマンス/収束速度が大幅に向上することが、デルタ チューニングでは一般的な現象である可能性があることを示しています。私たちは、より大きな PLM は通常、固有次元 (固有次元) が小さいため、この現象が存在すると推測しています。したがって、いくつかのパラメータを調整するだけで、下流のタスクに実装するのに十分な強力な表現機能を得ることができます。自明ではないパフォーマンス、さらに過剰パラメータ化されたモデル下流の最適化中に局所最適に陥る可能性が低くなり、収束が加速されます。
4. タスク間移行機能
私たちは、異なる下流タスク間でのデルタ チューニング手法の移行可能性を研究しました。具体的には、4 つのデルタ チューニング手法 (プロンプト チューニング、プレフィックス チューニング、アダプター、LoRA) と 5 つの異なるタイプの 12 の NLP タスク (感情分析、自然言語推論、言い換え認識、質問応答、要約を含む) を使用し、デルタ チューニングを転送しました。ソース タスクでトレーニングされたパラメーターをターゲット タスクに適用して、ゼロショット転送効果をテストします。結果は以下の図に示されており、(1) 同じカテゴリに属するタスク間では、通常、タスク間での転送は良好に実行されます。 (2) 異なる種類のタスク間では、タスク間の転送パフォーマンスは低下します。 ; ( 3) さらに、テキスト生成タスク (質問と回答、要約など) からトレーニングされたデルタ パラメーターは感情分析タスクに転送でき、優れたパフォーマンスを達成できることがわかりました。解決すべき複雑なタスク。タスクに必要な言語スキルには、感情分析スキルが含まれる場合があります。
デルタ チューニングのアプリケーション
高速トレーニングとストレージ スペースの節約。 Transformer モデルは本質的に並列化可能ですが、サイズが大きいためトレーニングに非常に時間がかかります。デルタ チューニングの収束速度は従来のフルパラメータ微調整よりも遅い場合がありますが、バックプロパゲーション中の微調整可能なパラメータの計算量が大幅に削減されるため、デルタ チューニングのトレーニング速度も大幅に向上します。以前の研究では、ダウンストリーム調整にアダプターを使用すると、完全なパラメーター微調整に匹敵するパフォーマンスを維持しながら、トレーニング時間を 40% に短縮できることが確認されています。トレーニングされたデルタパラメータは軽量であるため、ストレージスペースも節約でき、それによって実務者間の共有が容易になり、知識の伝達が促進されます。 マルチタスク学習。一般的な人工知能システムを構築することは、研究者の長年の目標でした。最近、非常に大規模な PLM (GPT-3 など) は、さまざまなデータ分布に同時に適合し、さまざまなタスクにおけるダウンストリームのパフォーマンスを促進する驚くべき能力を実証しました。したがって、大規模な事前トレーニングの時代では、マルチタスク学習がますます注目を集めています。フルパラメータの微調整方法に代わる効果的な代替手段として、デルタ チューニングは、比較的少ない追加ストレージを維持しながら、優れたマルチタスク学習機能を備えています。成功するアプリケーションには、多言語学習、読解などが含まれます。さらに、デルタチューニングは、継続学習における壊滅的な忘却に対する潜在的な解決策としても期待されています。事前トレーニング中に獲得した言語能力は、モデルのパラメーターに保存されます。したがって、PLM が一連のタスクにわたって順次トレーニングされる場合、正則化を行わずに PLM 内のすべてのパラメーターを更新すると、深刻で壊滅的な忘却が発生する可能性があります。デルタ チューニングは最小限のパラメーターのみを調整するため、壊滅的な忘却の問題を軽減する潜在的な解決策となる可能性があります。 一元化されたモデル サービスと並列コンピューティング。非常に大規模な PLM はサービスとしてリリースされることがよくあります。つまり、ユーザーは大規模なモデルをローカルに保存するのではなく、モデル プロバイダーによって公開された API と対話することによって大規模なモデルを消費します。ユーザーとサービスプロバイダー間の耐え難い通信コストを考慮すると、デルタチューニングはその軽量な性質により、従来のフルパラメータ微調整よりも明らかに競争力のあるオプションです。一方では、サービス プロバイダーは、コンピューティングおよびストレージの消費スペースを削減しながら、複数のユーザーのトレーニングに必要な下流のタスクをサポートできます。さらに、一部のデルタ チューニング アルゴリズム (プロンプト チューニングやプレフィックス チューニングなど) が本質的に並列化可能であることを考慮すると、デルタ チューニングでは、同じバッチ内で複数のユーザーからのサンプルの並列トレーニング/テストが可能になります (バッチ内並列コンピューティング)。 。最近の研究では、ほとんどのデルタ チューニング手法は、本質的に並列化できない場合でも、並列計算をサポートするためにいくつかの方法で変更できることも示されています。一方、ユーザーが中央モデルの勾配を利用できない場合でも、デルタ チューニングは勾配のないブラック ボックス アルゴリズムを通じて大規模な PLM を最適化し、モデル推論 API のみを呼び出すことができます。
以上が大規模モデルパラメータの包括的な分析と効率的な微調整、清華大学の研究が Nature サブジャーナルに掲載の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。