coo*_*ter 7 huggingface-transformers
我想在训练期间保留多个检查点以便稍后分析它们,但Trainer也保存其他文件以恢复训练。有没有办法只保存模型来节省空间和编写时间?
15K rng_state.pth
906 trainer_state.json
623 scheduler.pt
2,1G optimizer.pt
2,5K training_args.bin
1,1G pytorch_model.bin
900 config.json
Run Code Online (Sandbox Code Playgroud)
我可以在训练后删除优化器,但我也在使用写入速度较慢的磁盘,所以这也是一个考虑因素
不幸的是,目前没有办法禁用单个文件的保存。基本上有两种方法可以获取您的行为:
Trainer“hacky”方法是简单地禁用源代码中存储优化器的代码行,(如果您在本地计算机上训练)应该是这一行。然而,每当你更新你的变形金刚版本时,这都可能导致丑陋的行为,这就是我推荐第二个的原因。_save_checkpoint()您自己的Trainer对象中的函数。这样,您始终可以保证保存正确的文件,并且不必与库的代码进行交互。大致如下:
from transformers import Trainer
class OwnTrainer(Trainer):
# Don't forget to correctly set up __init__()
# ...
def _save_checkpoint(self, model, trial, metrics=None):
# insert your own behavior here
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3121 次 |
| 最近记录: |