问题可能是因为您使用的Keras版本不兼容。在较新的Keras版本中,输出名称已经被重命名为output_names
。您可以通过以下方法解决这个问题:
pip install --upgrade keras
import keras
print(keras.__version__)
确保输出的版本号是最新的。
output_names
改为output_names[0]
。这是因为在较新的Keras版本中,output_names
是一个列表,您需要将其索引为0来获得实际的输出名称。以下是一个示例代码,展示了如何保存Keras模型:
from keras.models import Sequential
from keras.layers import Dense
# 创建模型
model = Sequential()
model.add(Dense(10, input_dim=5, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
# 编译模型
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# 训练模型
model.fit(X_train, y_train, epochs=10, batch_size=32)
# 保存模型
model.save('my_model.h5')
确保按照上述步骤更新Keras版本或修改代码后,重新运行代码以查看问题是否已解决。