2个问题中的相同问题,1个使用Keras,1个使用PyTorch-
我使用预先训练的PyTorch模型(N C HW格式),通过ONNX将其转换为Keras。但是我要使用的加速平台仅支持使用channels_last(NHW C )格式的Keras。有没有一种方法可以轻松地将keras模型转换为channels_last格式?
如果没有简单的实现方法,我相信-我需要以正确的格式在Keras中手动定义模型结构,并手动移植权重。如果是这种情况,请问一种简便的方法来从权重(.h5文件)重新创建/定义模型吗?
除此之外,我还认为将PyTorch模型本身转换为NHWC是可能的-但我对此框架知之甚少。我已经通过从PyTorch的{{1}}方法(如-
state_dict()
但是无法使用置换字典重新填充模型-
if('conv' in str(key)):
params[key] = value.permute(0,2,3,1)
给出-
model.load_state_dict(Updated_params)
要解决此问题,如何在PyTorch中以NHWC格式在新模型中定义图层。