在Pycharm上使用Keras运行ResNet50时发生AttributeError

时间:2019-09-10 09:59:26

标签: machine-learning keras pycharm image-recognition resnet

我正在使用PyCharm并导入ResNet50来对样本图像进行图像识别。当我运行代码时,发生以下错误。

我正在使用需要学习者完成的在线代码进行学习。我配置了PyCharm并安装了建议的必需软件包。在使用ResNet50学习图像识别的过程中,运行代码时出现以下错误。我应该在pycharm上自定义安装ResNet50才能正常工作吗?讲师说,IDE将在代码执行期间自动下载ResNet50。在下面附加python代码。

import numpy as np
from keras.preprocessing import image
from keras.applications import resnet50

model = resnet50.ResNet50

img = image.load_img("bay.jpg", target_size=(224, 224))

x = image.img_to_array(img)

x = np.expand_dims(x, axis=0)

x = resnet50.preprocess_input(x)

predictions = model.predict(x)

predicted_classes = resnet50.decode_predictions(predictions, top=9)

print("This is an image of:")

for imagenet_id, name, likelihood in predicted_classes[0]:
    print(" - {}: {:2f} likelihood".format(name, likelihood))

这是我在执行过程中遇到的结果错误。

File "/home/warlock/Downloads/Ex_Files_Building_Deep_Learning_Apps/
Exercise Files/05/image_recognition.py", line 21, in <module>
    predictions = model.predict(x)
AttributeError: 'function' object has no attribute 'predict'

1 个答案:

答案 0 :(得分:0)

您有此错误,因为ResNet50是一个函数,因此您需要像一个函数一样实现它:

model = resnet50.ResNet50()

要使用具有所有默认参数的resnet50模型