如果a==b
以下代码失败,为什么会这样做?
错误:
ValueError: Shapes must be equal rank, but are 2 and 1 for 'Assign' (op: 'Assign') with input shapes: [12,12], [12].
#!/usr/bin/env python3
import keras
a = 12
b = 12
x = keras.layers.Input(shape=(a,))
y = keras.layers.Dense(b)(x)
model = keras.models.Model(inputs=[x], outputs=y)
model.save_weights("model.h5")
model.load_weights("model.h5")
我使用python 3,TensorFlow 1.1.0作为后端和keras版本2.0.1。 操作系统是Linux。
答案 0 :(得分:0)
升级到Tensorflow 1.3.0无法解决问题 但是,升级到Keras 2.0.8确实解决了问题。
显然,加载导致问题而不是保存。