def custom_model_layer_fully_connected(params, network_initializer): ''' Append fc (dense) to custom network Args: params (dict): All layer parameters Returns: neural network layer: fc (dense) layer ''' units = params["units"] activation = None use_bias = params["use_bias"] kernel_initializer = get_initializer(network_initializer) bias_initializer = 'zeros' kernel_regularizer = None bias_regularizer = None activity_regularizer = None kernel_constraint = None bias_constraint = None layer = keras.layers.Dense(units, activation=activation, use_bias=use_bias, kernel_initializer=kernel_initializer, bias_initializer=bias_initializer, kernel_regularizer=kernel_regularizer, bias_regularizer=bias_regularizer, activity_regularizer=activity_regularizer, kernel_constraint=kernel_constraint, bias_constraint=bias_constraint) return layer
def custom_model_layer_transposed_convolution3d(params, network_initializer): ''' Append 3d-transposed-convolution to custom network Args: params (dict): All layer parameters Returns: neural network layer: 3d-transposed-convolution layer ''' out_channels = params["output_channels"] kernel_size = params["kernel_size"] strides = params["stride"] if (params["padding"] == "in_eq_out"): padding = "same" elif (params["padding"] == 0): padding = "valid" else: padding = "causal" if (params["layout"][-1] == "C"): data_format = 'channels_last' else: data_format = 'channels_first' dilation_rate = params["dilation"] activation = None use_bias = params["use_bias"] kernel_initializer = get_initializer(network_initializer) bias_initializer = 'zeros' kernel_regularizer = None bias_regularizer = None activity_regularizer = None kernel_constraint = None bias_constraint = None layer = keras.layers.Conv3DTranspose( out_channels, kernel_size, strides=strides, padding=padding, data_format=data_format, dilation_rate=dilation_rate, activation=activation, use_bias=use_bias, kernel_initializer=kernel_initializer, bias_initializer=bias_initializer, kernel_regularizer=kernel_regularizer, bias_regularizer=bias_regularizer, activity_regularizer=activity_regularizer, kernel_constraint=kernel_constraint, bias_constraint=bias_constraint) return layer
def custom_model_layer_convolution2d(params, network_initializer): ''' Append 2d-convolution to custom network Args: params (dict): All layer parameters Returns: neural network layer: 2d-convolution layer ''' out_channels = params["output_channels"]; kernel_size=params["kernel_size"]; strides=params["stride"]; if(params["padding"] == "in_eq_out"): padding = "same"; elif(params["padding"] == 0): padding = "valid"; else: padding = "causal"; #causal if(params["layout"][-1] == "C"): data_format='channels_last'; else: data_format='channels_first'; dilation_rate=params["dilation"]; activation=None; use_bias = params["use_bias"]; kernel_initializer=get_initializer(network_initializer); bias_initializer='zeros'; kernel_regularizer=None; bias_regularizer=None; activity_regularizer=None; kernel_constraint=None; bias_constraint=None; layer = keras.layers.Conv2D(out_channels, kernel_size, strides=strides, padding=padding, data_format=data_format, dilation_rate=dilation_rate, activation=activation, use_bias=use_bias, kernel_initializer=kernel_initializer, bias_initializer=bias_initializer, kernel_regularizer=kernel_regularizer, bias_regularizer=bias_regularizer, activity_regularizer=activity_regularizer, kernel_constraint=kernel_constraint, bias_constraint=bias_constraint) return layer
def custom_model_layer_convolution3d(params, network_initializer): out_channels = params["output_channels"] kernel_size = params["kernel_size"] strides = params["stride"] if (params["padding"] == "in_eq_out"): padding = "same" elif (params["padding"] == 0): padding = "valid" else: padding = "same" #causal if (params["layout"][-1] == "C"): data_format = 'channels_last' else: data_format = 'channels_first' dilation_rate = params["dilation"] activation = None use_bias = params["use_bias"] kernel_initializer = get_initializer(network_initializer) bias_initializer = 'zeros' kernel_regularizer = None bias_regularizer = None activity_regularizer = None kernel_constraint = None bias_constraint = None layer = keras.layers.Conv3D(out_channels, kernel_size, strides=strides, padding=padding, data_format=data_format, dilation_rate=dilation_rate, activation=activation, use_bias=use_bias, kernel_initializer=kernel_initializer, bias_initializer=bias_initializer, kernel_regularizer=kernel_regularizer, bias_regularizer=bias_regularizer, activity_regularizer=activity_regularizer, kernel_constraint=kernel_constraint, bias_constraint=bias_constraint) return layer
def custom_model_layer_fully_connected(params, network_initializer): units = params["units"] activation = None use_bias = params["use_bias"] kernel_initializer = get_initializer(network_initializer) bias_initializer = 'zeros' kernel_regularizer = None bias_regularizer = None activity_regularizer = None kernel_constraint = None bias_constraint = None layer = keras.layers.Dense(units, activation=activation, use_bias=use_bias, kernel_initializer=kernel_initializer, bias_initializer=bias_initializer, kernel_regularizer=kernel_regularizer, bias_regularizer=bias_regularizer, activity_regularizer=activity_regularizer, kernel_constraint=kernel_constraint, bias_constraint=bias_constraint) return layer