Efficient Head Finetuning
1.0.0
EMNLP2022 の長い論文のソース コード: パラメーター効率の高い調整により優れた分類ヘッドが作成される
アークシヴ
私たちはそれを発見しました
- パラメータ効率の高いアルゴリズムを使用して、事前トレーニングされた LM を微調整します。
- 分類ヘッドを重みとして 1 から初期化して、事前トレーニングされた LM を微調整します。
通常、直接微調整するよりも優れています。
私たちはオープンソース ライブラリ SwissArmyTransformers に基づいてメソッドを実装しています。
ステップ1.
RoBERTa-Large または BERT-Large (SwissArmyTransformer 提供) のチェックポイントをダウンロードし、解凍します。
ステップ2。
EH-FT/roberta/scripts/finetune.sh の 5 行目にチェックポイント ディレクトリ パスを追加します。
ステップ3.
cd EH-FT/roberta
python scripts/run_multiseed.py --number-gpu 1 --gpu-s 0 --seed-per-gpu 1 --dataset rte --finetune-type 2step+bitfit
ステップ4.
cd EH-FT/roberta
python scripts/run_multiseed.py --number-gpu 1 --gpu-s 0 --seed-per-gpu 1 --dataset rte --finetune-type 2step+bitfit
スクリプトは、GPU [gpu-s]、GPU [gpu-s+1]、...、GPU [gpu-s +number-gpu - 1] を使用して [number-gpu] プロセスを起動します。各プロセスには異なるランダム シードがあります。
データセットと微調整タイプを変更できます。
データセット: rte、mrpc、boolq、wic、cb、copa、wsc、qnli、stsb
ファインチューンタイプ | 紙に書かれた名前 |
---|---|
全て | 伝統的な微調整 |
2ステップ+ヘッド | LP-FT |
2ステップ+ビットフィット | EH-FT(ビットフィット) |
2ステップ+ローラ | EH-FT(LoRA) |
2ステップ+ポイント | EH-FT(PT) |
ビットフィート/ロラ/ポイント | BitFit/LoRA/プレフィックスチューニング |
頭 | リニアプロービング |
子供 | チャイルドチューニング |
ミックスアウト | ミックスアウト |
ステップ4.
tensorboard を使用した実行の結果を参照してください。