【问题标题】:Keras attribute error due to tensorflow version support in CNN由于 CNN 中的 tensorflow 版本支持导致 Keras 属性错误
【发布时间】:2021-06-04 02:57:40
【问题描述】:

我正在研究卷积神经网络,但出现错误

AttributeError: 模块 'keras.utils.generic_utils' 没有属性 'populate_dict_with_module_objects

这里是不包括对数据集的数据处理的代码。 我的 Keras 版本是 2.4.3,TensorFlow 是 2.5.0,python 是 3.8

我见过许多其他人面临类似问题,但我认为这与 TensorFlow 的兼容版本有关。我已经尝试了 3-4 个版本的 TensorFlow,但它们都给了我像上面这样的模糊错误。

我希望可以解决这个问题,否则,我不知道我将如何继续使用网络

import pickle 
import time 
import os 
import cv2
import random 
import matplotlib.pyplot as plt 
import numpy as np 
from keras.models import Sequential 
from keras.layers import Conv2D, MaxPooling2D, Dense, Flatten, Activation
model = Sequential()

model.add(Conv2D(64,(3,3), activation = 'relu'))
model.add(MaxPooling2D(2,2))

model.add(Conv2D(64,(3,3), activation = 'relu'))
model.add(MaxPooling2D(2,2))

model.add(Flatten())

model.add(Dense(128, input_shape = X.shape[1:]), activation = 'relu')
model.add(Dense(4,activation = 'softmax'))

model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics = ['accuracy'])
model.fit(X,Y, epochs =2, validation_split = 0.2)

【问题讨论】:

    标签: tensorflow keras tf.keras


    【解决方案1】:

    如果您使用的是 2.x,则不应在同一导入中混合使用独立的 和新的。您上面的代码应该按如下方式导入:(在 colab 中测试 2.4、2.5 版本)。

    import pickle, time, os ,cv2, random 
    import matplotlib.pyplot as plt 
    import numpy as np 
    from tensorflow.keras.models import Sequential 
    from tensorflow.keras.layers import (Conv2D, MaxPooling2D, Dense, 
                                         Flatten, Activation)
    
    model = Sequential()
    model.add(Conv2D(64,(3,3), activation = 'relu'))
    model.add(MaxPooling2D(2,2))
    model.add(Conv2D(64,(3,3), activation = 'relu'))
    model.add(MaxPooling2D(2,2))
    model.add(Flatten())
    model.add(Dense(128, activation = 'relu'))
    model.add(Dense(4,activation = 'softmax'))
    

    另外,请注意模型中间的input_shape 没有任何效果(就像您在Dense 层中所做的那样)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-24
      • 2017-07-05
      • 2017-09-29
      • 2020-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多