训练模式有full, lora(+ qlora),和freeze模式,感觉freeze模式很少被提及,这里做一个总结
Freeze(冻结微调)指的是在训练过程中只对模型的小部分权重进行更新,这样可以降低对显存的要求。
如果您需要进行冻结微调,请将 finetuning_type
设置为 freeze
并且设置相关参数,
例如冻结的层数 freeze_trainable_layers
、可训练的模块名称 freeze_trainable_modules
等。
以下是一个例子:
… code-block:: yaml
...
### method
stage: sft
do_train: true
finetuning_type: freeze
freeze_trainable_layers: 8
freeze_trainable_modules: all
...
… list-table:: FreezeArguments
:widths: 30 10 50
:header-rows: 1
-
- 参数名称
- 类型
- 介绍
-
- freeze_trainable_layers
- int
- 可训练层的数量。正数表示最后 n 层被设置为可训练