【问题标题】:Handle batch size in custom data augmentation layer - tensorflow处理自定义数据增强层中的批量大小 - tensorflow
【发布时间】:2021-07-27 15:17:11
【问题描述】:

我已经实现了这个简单的数据增强层,基本上它将图像旋转一个特定的角度(我知道可以通过 ImageDataGenerator 完成,但这只是为了解释问题)。

    class RandomRotation(tf.keras.layers.Layer):

        def __init__(self, rotation_range=None, **kwargs):
            super(RandomRotation, self).__init__(**kwargs)    
 

        def call(self, images, training=None, **kwargs):

            batch_size = tf.shape(images)[0]

            if training is None:
               training = K.learning_phase()

            if not training:
               return images

            angles = np.random.uniform(-0.5, 0.5, batch_size)
            images = tfa.image.rotate(images, angles)

我的模型,包括这一层,然后通过 fit 方法使用 ImageDataGenerator 进行训练,以自动获取生成器。我收到此错误是因为批量大小的值为 None。

TypeError:len >= 0 或单个整数的预期序列对象

【问题讨论】:

    标签: tensorflow layer batchsize


    【解决方案1】:
    tf.config.run_functions_eagerly(True)
    

    脚本的第一行解决了问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-19
      • 1970-01-01
      • 2018-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-01
      相关资源
      最近更新 更多