from sklearn.metrics import accuracy_score if __name__ == '__main__': pre = Preprocessing() df_input = pre.data train_data = pre.train_data test_data = pre.test_data Y_train = pre.Y_train Y_test = pre.Y_test lng = Language(df_input) print("Preparing the language data") train_tokens = train_data['title'].apply(util.get_tokens) lng_data_train = lng.get_encoded_data(train_tokens) test_tokens = test_data['title'].apply(util.get_tokens) lng_data_test = lng.get_encoded_data(test_tokens) language_model = lng.lng_model print("training the language model (bi-lstm), this might take some time") language_model.fit(lng_data_train, Y_train, verbose=1, validation_split=0.2, nb_epoch=5) ## printing precision_recall- language modality Y_pred = language_model.predict(lng_data_test, verbose=1) y_pred = np.array([np.argmax(pred) for pred in Y_pred]) print("******************language modality scores(unimodal)*******************************") print(' Classification Report:\n', classification_report(Y_test, y_pred), '\n') image_mod = Image_modality()