python - 在 Keras 中同时增强 X,y

标签 python tensorflow machine-learning keras deep-learning

我想同时增强 keras 中的 X (500,28,28,1)、Y (500,28,28,1) 图像集并将它们存储在用于可视化结果的数组(在我可以训练网络之前)。 输出 y 不是标签而是图像。

我在 y_train(Mnist 数据集)中复制 X_train,并且我想在 xy 中应用相同的效果code> 用于训练网络。但是,我无法对 X 和 y 进行转换。我仅在 X 上获得 ZCA。我的代码是:

'''

(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train = X_train.reshape((X_train.shape[0], 28, 28, 1))
X_train = X_train.astype('float32')
y_train=X_train

datagen = ImageDataGenerator(zca_whitening=True)

datagen.fit(X_train)
datagen.fit(y_train)

training_set=datagen.flow(X_train,y_train,batch_size=100):
temp=np.asarray(training_set[0])

'''

temp[0...] 应用了 ZCA,而 temp[1..] 没有任何效果

最佳答案

您需要将 X_train, y_trainX_test, y_test作为参数传递给 datagen 方法。这是一个例子:

datagen = ImageDataGenerator(zca_whitening=True)

datagen.fit(X_train) # to compute quantities required for featurewise normalization

training_set = datagen.flow(X_train, y_train, batch_size=100)
test_set = datagen.flow(X_test, y_test, batch_size=100)

classifier.fit_generator(training_set, validation_data=test_set, epochs=100)

这允许同时增强输入X和相应的真实标签Y来训练神经网络。

希望这有帮助!

以下是一些相同的引用:1 , 2 & 3

关于python - 在 Keras 中同时增强 X,y,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59560639/

相关文章:

python - Python 中的异步流处理

具有最少小数位数的 Python 格式小数

tensorflow - Tensorflow RNN 是否完全实现了 Elman 网络?

python - 一维卷积神经网络输入形状 `ValueError`

php - 区分数学用户输入和其他所有输入

python - 如何从列表列表中删除 None 元素

python - Selenium 打开 Web 浏览器,但不打开目标 url (InvalidArgumentException : Message: invalid argument)

python - Keras - 未知错误 : Failed to get convolution algorithm

python - tensorflow.merge_all_summaries() 挂起

python - 如何在 Windows 8 中为 python 设置 pip