Skip to main content
 首页 » 编程设计

python之Keras/Tensorflow之类型错误 : __init__() got an unexpected keyword argument 'rescale'

2025年02月15日31zhoujg

在下面的代码行中:

datagen = ImageDataGenerator(rescale=1./255) 

我收到这个错误:

TypeError: __init__() got an unexpected keyword argument 'rescale' 

假设我使用的是带有 Tensorflow 后端的 Keras v.1.0.3。我正在使用 TensorFlow v.1.0.0。

使用最新版本的 Keras 会导致以下问题,这就是我避免使用最新版本的原因:

KeyError: "Can't open attribute (Can't locate attribute: 'nb_layers')" 

后一个问题似乎与这段代码有关:

# load VGG16 weights 
    f = h5py.File(weights_path) 
 
    for k in range(f.attrs['nb_layers']): 
        if k >= len(model.layers): 
            break 
        g = f['layer_{}'.format(k)] 
        weights = [g['param_{}'.format(p)] for p in range(g.attrs['nb_params'])] 
        model.layers[k].set_weights(weights) 
 
    f.close() 
    print('Model loaded.') 

我该如何解决这个rescale 问题,如果可行的话,甚至是后一个问题?

谢谢。

请您参考如下方法:

更新到最新的 Keras 和 Tensorflow 版本解决了这个问题。