我试图将我训练的神经网络模型中的所有值都设为零。
初始模型文件大小接近 330 MB。但是当我将权重矩阵的值修改为零时,它就变成了双倍尺寸模型。近660MB。
这可能是什么原因。我检查权重矩阵形状。它没有改变。两者都一样
model_transmitter_main0 = keras.models.load_model(f"/content/drive/MyDrive/auto_encoder/models/video{the_video}/gop{the_gop}/model_transmitter_main0.h5")
weights1 = model_transmitter_main0.get_weights()
weights1[0] = np.zeros_like(weights1[0])
weights1[1] = np.zeros_like(weights1[1])
weights1[2] = np.zeros_like(weights1[2])
weights1[3] = np.zeros_like(weights1[3])
model_transmitter_main0.set_weights(weights1)
# Save the modified model
model_transmitter_main0.save("/content/drive/MyDrive/auto_encoder/existing.h5")
它可能必须更改数据类型。一个例子是最初它是
tf.float32
,当你将它初始化为零时,它变成了 tf.float64
。您可以检查模型的数据类型是否改变。