深度学习问题2:pytorch-lightning加载的预训练网络会变化并且参数冻结失败

问题描述

pytorch-lightning进行训练网络的时候,需要另一个预训练的网络进行特征提取,因为预训练网络也是我自己编写的,有输出的效果图,但在另一个pytorch-lightning编写的网络中发现,他在测试过程中输出的效果图跟原来不一样,并且evaldetachrequires_grad = False都加了也是一样的问题

原因分析

经过不断调试,定位到是预训练模型参数改变的原因,但是evaldetachrequires_grad = False这些我都加了。我是在pytorch-lightninginit方法里边进行eval的,我无意中发现,他在初始化的时候。似乎会自动帮我改成train模式

深度学习问题2:pytorch-lightning加载的预训练网络会变化并且参数冻结失败_第1张图片

问题解决

如下,在on_train_start加上eval即可
在这里插入图片描述

你可能感兴趣的:(#,深度学习问题,深度学习,pytorch,人工智能)