值错误:在 _make_train_function(Keras)中不支持 None 值

2024-03-28 22:45:54 发布

您现在位置:Python中文网/ 问答频道 /正文

尝试在Keras中拟合一个模型,初始化和编译如下,但没有得到值错误。有什么建议的方法来调试这些错误?我是新来的。在

我能早点发现问题吗,即在初始化或编译模型时?在

model = Model((64,64,3))
opt = keras.optimizers.Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon=None, decay=0.0)
binLoss = "binary_crossentropy"
model.compile(optimizer = opt, loss = binLoss, metrics = ["accuracy"])

ValueError                                Traceback (most recent call last)
<ipython-input-15-5b61099068d8> in <module>()
      1 ### START CODE HERE ### (1 line)
----> 2 happyModel.fit(x = X_train, y = Y_train, epochs = 100, batch_size = 32)
      3 ### END CODE HERE ###

/opt/conda/lib/python3.6/site-packages/keras/engine/training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, **kwargs)
   1574         else:
   1575             ins = x + y + sample_weights
-> 1576         self._make_train_function()
   1577         f = self.train_function
   1578 
...
/opt/conda/lib/python3.6/site-packages/tensorflow/python/framework/tensor_util.py in make_tensor_proto(values, dtype, shape, verify_shape)
    362   else:
    363     if values is None:
--> 364       raise ValueError("None values not supported.")
    365     # if dtype is provided, forces numpy array to be the type
    366     # provided if possible.

ValueError: None values not supported.

Tags: in模型selfnonemodelif错误train
3条回答

将opt替换为“adam”解决了这个问题,但我不清楚为什么https://keras.io/optimizers/上的指令建议两者都可以。在

更新Keras,因为在2.1.3之前,None不是epsilon的有效参数

这不是使用kerasapi的有效模型构造。您应该看看documentation,其中有一个30秒的指南,介绍了如何构建一个最小模型:

from keras.models import Sequential
from keras.layers import Dense

model = Sequential()
model.add(Dense(units=64, activation='relu', input_dim=100))
model.add(Dense(units=10, activation='softmax'))
# ...

如果您仍然对文档中的内容感到不舒服,可以从一个tutorial开始,它解释了沿途的一些概念。在

相关问题 更多 >