詳細解釋
Adapter是參數高效微調方法,在Transformer層插入小型可訓練模塊,凍結主模型,適配特定任務而不損失通用能力。
結構:
- 插入位置:
- FFN層後
- 注意力層後
- 結構:
- 下投影(降維)
- 激活函數
- 上投影(升維)
- 殘差連接
- 參數量:
- 約1-5%的模型參數
- Bottleneck設計減少參數
優勢:
- 模組化:每任務一個Adapter
- 可組合:多個Adapter組合
- 不影響推理速度(推理時可合併)
- 小存儲:每任務只存Adapter權重
與LoRA對比:
- Adapter:插入模塊
- LoRA:低秩更新
- 效果相當:不同任務各有優劣
- 可組合使用
應用:
- 多語言:每語言一個Adapter
- 多領域:領域特定Adapter
- 持續學習:增量添加
實現:
- AdapterHub:預訓練Adapter庫
- Hugging Face:簡單整合
- 與Transformers無縫配合
Adapter是模組化微調的優雅方案。