import tensorflow as tf

                return tf.multiply(tf.nn.l2_loss(x), weight_decay)
            else:
                return None

        if weight_decay is not None:
            reg = _reg
        else:
            reg = None

        kernel = tf.get_variable(
            'w', ksize, initializer=init, regularizer=reg, dtype=dtype, trainable=True)

        return tf.nn.conv2d(
            x, kernel, strides, padding, data_format=data_format, use_cudnn_on_gpu=True)


def _bottleneck_residual(x,
                         ksize_list,
                         strides,
                         padding,
                         is_training,
                         data_format='NHWC',
                         no_activation=False):
    with tf.variable_scope('sub1'):
