※ このページは「IncreLoRA: Incremental Parameter Allocation Method for Parameter-Efficient Fine-tuning」の要約になります。
このページでわかること
- トレーニング中にモジュールの重要度に基づいてパラメータを適応的に追加する「IncreLoRA」
- 低リソース設定でも高いパフォーマンスを実現
- IncreLoRAは、初期パラメータ数に制限されず、高ランク上限のパラメータ行列を効率的に利用できる
対象読者
- 特に自然言語処理(NLP)や大規模言語モデル(LLM)のファインチューニングに関心のある人
- 効率的なモデル微調整手法を用いてトレーニングコストを削減し、パフォーマンスを向上させたい企業の技術者やデータサイエンティスト
従来手法の問題点
-
大規模言語モデルの微調整コスト:
- 事前学習済み言語モデル(PLM)のサイズが増大するにつれて、全パラメータを微調整することは効率的ではなく、多数の下流タスクに対してはトレーニングおよびストレージのコストが高騰する
-
現行の微調整手法の限界:
- 既存のLow-Rank Adaptation (LoRA)などのパラメータ効率の良い微調整手法は、各モジュールのパラメータの重要性を無視しているため、最適なパフォーマンスを引き出せないことがある
-
初期設定の制約:
- LoRAのような手法は、トレーニングの初期段階で設定されたパラメータ数に依存するため、最終的なランク上限が制約されてしまい、全体的なトレーニング効率とモデルの性能が制限される
IncreLoRA
IncreLoRA とは?
IncreLoRAは、LLMの微調整を効率化するためのインクリメンタルパラメータ割り当て手法です。LoRA(Low-Rank Adaptation)の問題点であるモジュールごとのパラメータの重要性を無視する点を改善し、トレーニング中に各モジュールの重要度スコアに基づいてトレーニング可能なパラメータを適応的に追加します。これにより、初期のトレーニングパラメータ数に制限されず、同じトレーニングコストでより高いランク上限のパラメータ行列を実現します。
低ランク行列の再構成
IncreLoRAは、事前トレーニングされた重み行列Wに対して更新行列ΔWを適用します。LoRAの手法に従って、ΔWは二つの低ランク行列AとBの積として表現されます。しかし、IncreLoRAでは各wiにスケーリングλiを追加し、これを更新します。ΔWの初期状態はゼロに設定され、ランダムガウス分布で初期化されます。
増分パラメータ割り当て
IncreLoRAの主な特徴は、トレーニング中に重要度スコアに基づいて各モジュールにトレーニング可能なパラメータを段階的に追加することです。各モジュールの重要度スコアは、更新行列の全パラメータの平均値として計算されます。スコアは感度平滑化と不確実性定量化を通じて信頼性を高めます。一定のステップごとに、最も高いスコアを持つモジュールに新しいパラメータが追加されます。
学習の安定化
新たに追加されるパラメータがランダムな状態で初期化されるため、これらのパラメータには新しい学習率カーブが設定され、トレーニングの安定性が確保されます。これにより、全てのパラメータがトレーニング終了時にゼロに収束するようになります。
IncreLoRA のメリット
- 高いパラメータ効率:重要なモジュールに適応的にパラメータを追加することで、同じトレーニングコストでより高いパフォーマンスを達成
- 柔軟なパラメータ割り当て:トレーニング中にパラメータを増加させるため、初期のパラメータ設定に依存せず、より柔軟なトレーニングが可能
- 低リソース環境での優れた性能:低リソース設定でも他の手法に比べて高い性能を発揮し、リソースが限られた環境での応用に適している
IncreLoRA の手順
- 初期化:各モジュールに初期のランク1のパラメータを割り当て、トレーニングの準備を行う
- 重要度スコアの計算:トレーニング中に各モジュールの重要度スコアを計算し、パラメータの追加が必要なモジュールを特定する
- パラメータの追加:一定のステップごとに、重要度スコアが高いモジュールに新しいパラメータを追加し、そのパラメータに対して新しい学習率カーブを設定する
- トレーニング:追加されたパラメータを含むモデルをトレーニングし、重要なモジュールに高いランク上限のパラメータを割り当ててパフォーマンスを向上させる
IncreLoRA の性能
- 実験結果:GLUEベンチマークでの実験において、IncreLoRAは低リソース設定でも他のベースライン手法を上回る性能を示した
- パフォーマンス向上:特に低リソース環境でのパフォーマンスが優れており、GLUEベンチマークの複数のタスクで最高のスコアを達成した
- 効率性:IncreLoRAは、同じトレーニングコストでより高いパラメータ効率を実現し、トレーニングとストレージのコストを削減する
まとめ
以上がIncreLoRAの要約でした。個人的に IncreLoRA は LoRA 版 Mixture-of-Experts みたいなイメージを受けましたね。パラメータ効率は良いんでしょうが、実際学習にかかるコストは気になるところです。
おわり。