Exemple #1
0
def input_node():
    def compile_fn(di, dh):
        def fn(di):
            return {'out': layers.Input(di['in'])}

        return fn

    return siso_keras_module('input', compile_fn, {})
Exemple #2
0
def dropout(h_keep_prob):
    def compile_fn(di, dh):
        layer = layers.Dropout(dh['keep_prob'])

        def fn(di):
            return {'out': layer(di['in'])}

        return fn

    return siso_keras_module('Dropout', compile_fn, {'keep_prob': h_keep_prob})
Exemple #3
0
def fc_layer(h_num_units):
    def compile_fn(di, dh):
        layer = layers.Dense(dh['num_units'])

        def fn(di):
            return {'out': layer(di['in'])}

        return fn

    return siso_keras_module('FCLayer', compile_fn, {'num_units': h_num_units})
Exemple #4
0
def global_pool2d():
    def compile_fn(di, dh):
        layer = layers.GlobalAveragePooling2D()

        def fn(di):
            return {'out': layer(di['in'])}

        return fn

    return siso_keras_module('GlobalAveragePool', compile_fn, {})
Exemple #5
0
def batch_normalization():
    def compile_fn(di, dh):
        layer = layers.BatchNormalization()

        def fn(di):
            return {'out': layer(di['in'])}

        return fn

    return siso_keras_module('BatchNormalization', compile_fn, {})
Exemple #6
0
def activation(h_activation):
    def compile_fn(di, dh):
        layer = layers.Activation(dh['activation'])

        def fn(di):
            return {'out': layer(di['in'])}

        return fn

    return siso_keras_module('Activation', compile_fn,
                             {'activation': h_activation})
Exemple #7
0
def avg_pool2d(h_kernel_size, h_stride):
    def compile_fn(di, dh):
        layer = layers.AveragePooling2D(pool_size=dh['kernel_size'],
                                        strides=(dh['stride'], dh['stride']),
                                        padding='same')

        def fn(di):
            return {'out': layer(di['in'])}

        return fn

    return siso_keras_module('AvgPool2D', compile_fn, {
        'kernel_size': h_kernel_size,
        'stride': h_stride,
    })
def nonlinearity(h_nonlin_name):
    def compile_fn(di, dh):
        def fn(di):
            nonlin_name = dh['nonlin_name']
            if nonlin_name == 'relu':
                Out = Activation('relu')(di['in'])
            elif nonlin_name == 'tanh':
                Out = Activation('tanh')(di['in'])
            elif nonlin_name == 'elu':
                Out = Activation('elu')(di['in'])
            else:
                raise ValueError
            return {"out": Out}

        return fn

    return hke.siso_keras_module('Nonlinearity', compile_fn,
                                 {'nonlin_name': h_nonlin_name})
Exemple #9
0
def conv2d(h_num_filters, h_filter_width, h_stride, h_use_bias):
    def compile_fn(di, dh):
        layer = layers.Conv2D(dh['num_filters'], (dh['filter_width'], ) * 2,
                              strides=(dh['stride'], ) * 2,
                              use_bias=dh['use_bias'],
                              padding='SAME')

        def fn(di):
            return {'out': layer(di['in'])}

        return fn

    return siso_keras_module(
        'Conv2D', compile_fn, {
            'num_filters': h_num_filters,
            'filter_width': h_filter_width,
            'stride': h_stride,
            'use_bias': h_use_bias,
        })