AttributeError:“ NoneType”对象在keras resnet50中没有属性“ image_data_format”

时间:2019-01-06 19:04:31

标签: python-3.x tensorflow keras

我正在尝试使用Resnet50模型进行培训。

from keras import backend as K
from keras_applications.resnet50 import ResNet50
from keras.layers import Input
from keras.callbacks import ModelCheckpoint

K.set_image_data_format('channels_last')
K.set_image_dim_ordering('tf')

input_layer = Input(shape=(224, 224, 3))
model = ResNet50(include_top=True, weights=None, classes=2)
model.compile(optimizer='rmsprop', loss='binary_crossentropy', metrics=['accuracy'])

为什么出现以下错误?

Using TensorFlow backend.
Traceback (most recent call last):
File "model.py", line 42, in <module>
model = ResNet50(include_top=True, weights=None, input_tensor=input_layer, classes=2)
File "/home/mario/.local/lib/python3.6/site-packages/keras_applications/resnet50.py", line 209, in ResNet50
data_format=backend.image_data_format(),
AttributeError: 'NoneType' object has no attribute 'image_data_format'

2 个答案:

答案 0 :(得分:1)

我遇到了类似的问题。通过将keras_applications更改为keras.applications来起作用。

他们在GitHub上仍然存在问题,并且仍然开放:https://github.com/keras-team/keras-applications/issues/54

答案 1 :(得分:0)

我也遇到了这个问题。

请尝试这个。效果很好:

from keras.applications.resnet50 import ResNet50