def depthwise_conv2d(kernel_size, stride=1, activation_fn='linear'):
    return htfe.siso_tensorflow_eager_module_from_tensorflow_op_fn(
        lambda: DepthwiseConv2D(kernel_size,
                                strides=stride,
                                padding='same',
                                activation=activation_fn,
                                use_bias=False), {},
        name="DepthwiseConv2D_%dx%d" % (kernel_size, kernel_size))
def conv2d(filters, kernel_size, stride=1, activation_fn='linear'):
    return htfe.siso_tensorflow_eager_module_from_tensorflow_op_fn(
        lambda: Conv2D(filters,
                       kernel_size,
                       strides=stride,
                       padding='same',
                       activation='relu',
                       use_bias=False), {},
        name="Conv2D_%dx%d" % (kernel_size, kernel_size))
def dense(units):
    return htfe.siso_tensorflow_eager_module_from_tensorflow_op_fn(
        lambda: Dense(units), {})
def global_average_pooling():
    return htfe.siso_tensorflow_eager_module_from_tensorflow_op_fn(
        GlobalAveragePooling2D, {})
def average_pooling(pool_size, stride=1):
    return htfe.siso_tensorflow_eager_module_from_tensorflow_op_fn(
        lambda: AveragePooling2D(pool_size, strides=stride, padding='same'),
        {},
        name="AveragePooling2D_%dx%d" % (pool_size, pool_size))