Tensorflow Keras:Changed ImageDataGenerator给出错误“__init_quo()得到一个意外的关键字参数";

Tensorflow Keras:Changed ImageDataGenerator给出错误“__init_quo()得到一个意外的关键字参数";,tensorflow,keras,data-augmentation,image-preprocessing,Tensorflow,Keras,Data Augmentation,Image Preprocessing,我使用的是keras=2.3.1,我想使用我自己的zca_美白版本。为此,我直接修改了keras文件/home/user/.local/lib/python3.6/site packages/keras\u preprocessing/image/image\u data\u generator.py中的ImageDataGenerator类。包括我的更改在内的文件如下所示。可以看到我的神经网络文件nn_script.py,该文件使用经过修改的image_data_generator.py。只要

我使用的是
keras=2.3.1
,我想使用我自己的zca_美白版本。为此,我直接修改了keras文件
/home/user/.local/lib/python3.6/site packages/keras\u preprocessing/image/image\u data\u generator.py中的
ImageDataGenerator
类。包括我的更改在内的文件如下所示。可以看到我的神经网络文件
nn_script.py
,该文件使用经过修改的
image_data_generator.py
。只要
nn_script.py
使用默认的keras增强,就没有问题,如:

train_datagen = ImageDataGenerator(
    rotation_range=30,
    shear_range=0.2,
    samplewise_center=True, samplewise_std_normalization=True) 
但是如果我决定以这种方式打开我的定制版zca_whitening,名为
zca_whitening_fast

train_datagen = ImageDataGenerator(
    rotation_range=30,
    shear_range=0.2,
    samplewise_center=True, samplewise_std_normalization=True,
    zca_whitening_fast=True) 
我收到了错误信息

Traceback (most recent call last):
  File "nn_script.py", line 55
TypeError: __init__() got an unexpected keyword argument 'zca_whitening_fast'

您可以用我上面发布的文件替换
image\u data\u generator.py
文件,并尝试使用选项
zca\u whitening\u fast=True
创建一个生成器,从而重现我的错误消息

首先,我认为问题是,我忘记了在文件
image\u data\u generator.py
中的
def\uuuu init\uuu()
中包含
zca\u flash
,但它在那里,您可以检查一下。我还尝试删除
\uuuu pycache\uuuu
文件夹,因为我认为一些较旧的文件正在该文件夹中执行,但出现了相同的错误。现在我想知道错误消息是否来自另一个文件中的
\uuu init\uuu()
,而不是
image\u data\u generator.py
。我认为解决方案是显而易见的,我可能需要在keras preprocessing文件夹中的另一个文件中进行更改,但我不知道是哪个文件。我不认为问题是因为我的keras版本太旧,并且由于与图形卡兼容的原因,我无法升级keras


你知道我为什么会收到这个错误消息吗?谢谢

您修改了
keras\u预处理
包中的文件,但您可能正在导入另一个包
keras.preprocessing
。这很好,
keras.preprocessing
只需将所有调用转发到
keras\u preprocessing


因此,您还需要对
keras
包中的
keras/preprocessing/image.py
文件进行修改,如图所示。

您修改了
keras\u preprocessing
包中的文件,但您可能正在导入
keras.preprocessing
,这是一个不同的包。这很好,
keras.preprocessing
只需将所有调用转发到
keras\u preprocessing


因此,您还需要对
keras
包中的
keras/preprocessing/image.py
文件进行修改,如图所示。

谢谢!我在
keras/preprocessing/image.py
中做了更改,但是出现了相同的错误:(我需要更新什么吗?有没有办法跟踪这个错误消息
TypeError:\uuuuu init\uuuuuu()得到了一个意外的关键字参数“zca\u whitening\u fast”
?谢谢!我在
keras/preprocessing/image.py
中做了更改,但出现了相同的错误:(我需要更新什么吗?有没有办法跟踪此错误消息来自哪个文件
TypeError:\uu init\uuuuuuuuuuuuu()获取了一个意外的关键字参数“zca\u whitening\u fast”