我正在研究回归nn。 我正在使用keras 1.2.1,并希望使用数据扩充来改进我的模型 为了这个目的,我修改了我的代码以使用生成器:
datagen = ImageDataGenerator(horizontal_flip=True)
datagen.fit(X_train, y_train, shuffle=True, validation_split=0.2, nb_epoch=EPOCHS, callbacks=callbacks)
我所坚持的部分是我需要修改此数据的关联y_label,以解释我水平翻转图像的事实。
在这个简单的例子中,我基本上需要将y_label的符号从正面翻转为负面,反之亦然, IF 图像被翻转。
答案 0 :(得分:0)
在最近的 tensorflow-keras 版本中,我们可以在 map 数据增强函数中使用 tf.data API 来实现。
flip_prob=tf.random.uniform(shape=[1])
image = tf.cond(flip_prob < 0.5, lambda: tf.image.flip_left_right(image), lambda: image)
label = tf.cond(flip_prob < 0.5, lambda: -label, lambda: label) # label is int
我们还可以将 tf.py_function 与 python 条件语句(用于扩充)一起使用,以获得相同的结果。