Beispiel #1
0
def brainnetCNN_model_2(input_shape, n_filters, use_bias, n_outputs):
    act = 'relu'

    # define network architecture
    # 2 E2E
    # followed by 1 E2N
    # followed by 1 N2G
    # followed by dense
    # then sigmoid for classification
    # sprinkle with batch normalization and dropout
    X_input = Input(shape=input_shape, name='input_layer')
    E2E_1 = EdgeToEdge(n_filters[0], use_bias[0])(X_input)
    E2E_1 = BatchNormalization()(E2E_1)
    E2E_1 = Activation(act)(E2E_1)
    E2E_2 = EdgeToEdge(n_filters[1], use_bias[1])(E2E_1)
    E2E_2 = BatchNormalization()(E2E_2)
    E2E_2 = Activation(act)(E2E_2)
    E2N = EdgeToNode(n_filters[2], use_bias[2])(E2E_2)
    E2N = Activation(act)(E2N)
    N2G = NodeToGraph(n_filters[3], use_bias[3])(E2N)
    N2G = Activation(act)(N2G)
    N2G = Flatten()(N2G)
    N2G = Dropout(0.2)(N2G)
    dense_1 = Dense(n_filters[4], activation=act, use_bias=use_bias[4])(N2G)
    dense_1 = Dropout(0.2)(dense_1)
    dense_final = Dense(n_outputs, activation='linear',
                        use_bias=use_bias[5])(dense_1)
    model = Model(inputs=X_input, outputs=dense_final)
    return model
def custom_layer_model_stacked_B(input_shape, n_filters, use_bias):
    
    # test my Keras layer
    X_input = Input(shape=input_shape, name='input_layer')
    E2E1 = EdgeToEdge(n_filters[0], use_bias[0])(X_input)
    E2E2 = relu(E2E1)
    E2E2 = EdgeToEdge(n_filters[1], use_bias[1])(E2E1)
    E2N = EdgeToNode(n_filters[2], use_bias[2])(E2E2)
    N2G = NodeToGraph(n_filters[3], use_bias[3])(E2N)
    model = Model(inputs = X_input, outputs= N2G)
    #model = Model(inputs = X_input, outputs= E2E2)
    
    return model
def brainnetCNN_model(input_shape, n_filters, use_bias):
    
    # define network architecture
    # 2 E2E
    # followed by 1 E2N
    # followed by 1 N2G
    # followed by dense
    # then sigmoid for classification
    X_input = Input(shape=input_shape, name='input_layer')
    E2E_1 = EdgeToEdge(n_filters[0], use_bias[0])(X_input)
    #E2E1 = relu(E2E1)
    E2E_1 = Activation('relu')(E2E_1)
    E2E2 = EdgeToEdge(n_filters[1], use_bias[1])(E2E_1)
    
    #E2E2 = relu(E2E2)
    #E2N = EdgeToNode(n_filters[2], use_bias[2])(E2E2)
#    E2N = relu(E2N)
#    N2G = NodeToGraph(n_filters[3], use_bias[3])(E2N)
#    N2G = relu(N2G)
#    dense_1 = Dense(n_filters[4], activation = 'relu', use_bias = use_bias[4])(N2G)
#    dense_final = Dense(1, activation='sigmoid', use_bias = use_bias[5])(dense_1)
#    model = Model(inputs = X_input, outputs= dense_final)
    model = Model(inputs = X_input, outputs= E2E2)
    return model
def brainnetCNN_model_3(input_shape, n_filters, use_bias):
    
    # define network architecture
    # 2 E2E
    # followed by 1 E2N
    # followed by 1 N2G
    # followed by dense
    # then sigmoid for classification
    # sprinkle with batch normalization and dropout
    X_input = Input(shape=input_shape, name='input_layer')
    E2E_1 = EdgeToEdge(n_filters[0], use_bias[0])(X_input)
    E2E_1 = BatchNormalization()(E2E_1)
    E2E_1 = Activation('relu')(E2E_1)
    dense_final = Dense(1, activation='linear', use_bias = use_bias[5])(E2E_1)
    model = Model(inputs = X_input, outputs= dense_final)
    return model