ms 加载checkpoint的时候报warning日志 "xxx parameters in the net are not

[技术干货-功能调试] ms 加载checkpoint的时候报warning日志 "xxx parameters in the net are not loaded."怎么办

1. 系统环境:

Hardware Environment(Ascend/GPU/CPU): ALL
Software Environment:
MindSpore version (source or binary): 1.7.0 & Earlier versions
Python version (e.g., Python 3.7.5): 3.7.6
OS platform and distribution (e.g., Linux Ubuntu 16.04): Ubuntu
GCC/Compiler version (if compiled from source):
复制

2. python代码样例

net = Net()
load_checkpoint("net.ckpt", net=net)
复制

3. 报错信息:

Warnning: [mindspore/train/serialization.py]  xxx parameters in the 'net' are not loaded, because they are not in the 'parameter_dict'
复制

4. 原因分析

报错信息为:把checkpoint文件中的参数加载到网络中时,发现网络中的一些参数没有被加载上。

具体原因为,checkpoint文件中没有那些参数,导致加载时找不到对应的参数。

5. 解决方法

产生这种告警的情况大部分是,训练和加载checkpoint时的网络结构不一致导致的。 首先排查网络定义,是否一致,其次排查是否有超参导致两者内部结构发生变化。 如无结果,可以使用network.parameters_dict方法获取网络中的参数; 使用param_dict = load_checkpoint("net.ckpt")方法获取checkpoint中的参数字典,再对比二者的差异。

6. 参考文档

checkpoint 用法可以参考: 保存与加载

猜你喜欢

转载自blog.csdn.net/beauty0220/article/details/129155163
ms