【发布时间】:2022-02-03 00:41:57
【问题描述】:
这些是文本分类 bert 模型的训练参数。 (我正在使用拥抱脸训练器)
我需要为我的数据集找到training epochs、batch size、learning rate、warmup steps、weight decay 的最佳值。有什么方法可以在训练前检查它们吗?
还有其他我应该考虑的论点吗?
training_args = TrainingArguments(
output_dir='./results',
num_train_epochs=1,
per_device_train_batch_size=8,
per_device_eval_batch_size=8,
learning_rate= 5e-05
warmup_steps=500,
weight_decay=0.01,
logging_dir='./logs',
load_best_model_at_end=True,
logging_steps=400,
save_steps=400,
evaluation_strategy="steps",
)
【问题讨论】:
-
基本上你用不同的参数训练,看看什么效果最好:en.wikipedia.org/wiki/Hyperparameter_optimization
-
如果你真的想找到一个好的超参数组合,你可以尝试贝叶斯超参数调优,它可以帮助你快速找到它,而不是贪婪的网格搜索。权重和偏差支持这种超参数搜索wandb.ai/site/articles/…。
-
但总的来说,根据我的经验,学习率可能是微调预训练模型最重要的因素。
标签: python pytorch huggingface-transformers transformer