def __init__(self, weight_decay): super(InceptionResNetB, self).__init__() self.b1_conv = BasicConv2D(filters=192, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.b2_conv1 = BasicConv2D(filters=128, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.b2_conv2 = BasicConv2D(filters=160, kernel_size=(1, 7), strides=1, padding="same", weight_decay=weight_decay) self.b2_conv3 = BasicConv2D(filters=192, kernel_size=(7, 1), strides=1, padding="same", weight_decay=weight_decay) self.conv = Conv2DLinear(filters=1152, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay)
def __init__(self, weight_decay): super(InceptionResNetC, self).__init__() self.b1_conv = BasicConv2D(filters=192, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.b2_conv1 = BasicConv2D(filters=192, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.b2_conv2 = BasicConv2D(filters=224, kernel_size=(1, 3), strides=1, padding="same", weight_decay=weight_decay) self.b2_conv3 = BasicConv2D(filters=256, kernel_size=(3, 1), strides=1, padding="same", weight_decay=weight_decay) self.conv = Conv2DLinear(filters=2144, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay)
def __init__(self, weight_decay): super(Stem, self).__init__() self.conv1 = BasicConv2D(filters=32, kernel_size=(3, 3), strides=2, padding="valid", weight_decay=weight_decay) self.conv2 = BasicConv2D(filters=32, kernel_size=(3, 3), strides=1, padding="valid", weight_decay=weight_decay) self.conv3 = BasicConv2D(filters=64, kernel_size=(3, 3), strides=1, padding="same", weight_decay=weight_decay) self.maxpool = tf.keras.layers.MaxPool2D(pool_size=(3, 3), strides=2, padding="valid") self.conv4 = BasicConv2D(filters=80, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.conv5 = BasicConv2D(filters=192, kernel_size=(3, 3), strides=1, padding="valid", weight_decay=weight_decay) self.conv6 = BasicConv2D(filters=256, kernel_size=(3, 3), strides=2, padding="valid", weight_decay=weight_decay)
def __init__(self, weight_decay): super(ReductionB, self).__init__() self.b1_maxpool = tf.keras.layers.MaxPool2D(pool_size=(3, 3), strides=2, padding="valid") self.b2_conv1 = BasicConv2D(filters=256, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.b2_conv2 = BasicConv2D(filters=384, kernel_size=(3, 3), strides=2, padding="valid", weight_decay=weight_decay) self.b3_conv1 = BasicConv2D(filters=256, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.b3_conv2 = BasicConv2D(filters=288, kernel_size=(3, 3), strides=2, padding="valid", weight_decay=weight_decay) self.b4_conv1 = BasicConv2D(filters=256, kernel_size=(1, 1), strides=1, padding="same", weight_decay=weight_decay) self.b4_conv2 = BasicConv2D(filters=288, kernel_size=(3, 3), strides=1, padding="same", weight_decay=weight_decay) self.b4_conv3 = BasicConv2D(filters=320, kernel_size=(3, 3), strides=2, padding="valid", weight_decay=weight_decay)