训练后如何查看拥抱脸模型的变化?
Posted
技术标签:
【中文标题】训练后如何查看拥抱脸模型的变化?【英文标题】:How to view the changes in a huggingface model after training? 【发布时间】:2021-12-21 21:20:05 【问题描述】:我训练了一个 BART 模型 (facebook-cnn) 进行摘要,并将摘要与预训练模型进行比较
model_before_tuning_1 = AutoModelForSeq2SeqLM.from_pretrained(model_name)
trainer = Seq2SeqTrainer(
model=model,
args=training_args,
data_collator=data_collator,
train_dataset=train_data,
eval_dataset=validation_data,
tokenizer=tokenizer,
compute_metrics=compute_metrics,
)
trainer.train()
model() 和 model_before_tuning_1() 的摘要不同,但是当我比较模型配置和/或 print(model) 时,两者的结果完全相同。
如何知道这次训练改变了哪些具体参数?
【问题讨论】:
【参考方案1】:您可以比较模型的 state_dict。 IE。 model.state_dict() 和 model_before_tuning_1.state_dict()。
State_dict 包含在训练过程中发生变化的可学习参数。更多详情见:https://pytorch.org/tutorials/recipes/recipes/what_is_state_dict.html
否则,打印模型或模型配置会得到相同的结果,因为架构在训练期间不会改变。
【讨论】:
以上是关于训练后如何查看拥抱脸模型的变化?的主要内容,如果未能解决你的问题,请参考以下文章
我们是不是应该小写输入数据以(预)使用拥抱脸训练 BERT 无大小写模型?