model.add(Activation('relu')) model.add(Dense(1)) model.add(Activation('sigmoid')) # model.compile(loss='binary_crossentropy', optimizer='rmsprop', class_mode='binary') model_b = Sequential() model_b.add(Dense(287, init='uniform', input_shape=(sequence_length,))) model_b.add(Dense(32, init='uniform')) model_b.add(Activation('relu')) model_b.add(Dense(2, init='uniform')) model_b.compile(loss='binary_crossentropy', optimizer='rmsprop', class_mode='binary') decoder = Sequential() decoder.add(Merge([model, model_b], mode='concat')) decoder.add(Dense(2, activation='softmax')) decoder.compile(loss='binary_crossentropy', optimizer='rmsprop', class_mode='binary') # Training model # ================================================== print ("Drawing graph") graph = to_graph(decoder, show_shape=True) graph.write_png("model.png") print ("Training model") decoder.fit([x_shuffled, x_pos], y_shuffled, batch_size=batch_size, nb_epoch=num_epochs, show_accuracy=True, validation_split=val_split, verbose=2)