import numpy as np import pandas as pd import tensorflow as tf # Load the trained GRU model loaded_model = tf.keras.models.load_model('save/gru_model.keras') # Load new data for prediction new_data = pd.read_csv('input/data.csv') # Replace with the path to your new data CSV file # Preprocess the new data (similar to how you preprocessed the training data) # Assuming the new_data has the same features as the training data X_new = new_data.drop('label', axis=1) # Make predictions on new data predicted_labels = loaded_model.predict_classes(X_new) # Map predicted labels back to emotions using the label_mapping dictionary reverse_label_mapping = {v: k for k, v in label_mapping.items()} predicted_emotions = [reverse_label_mapping[label] for label in predicted_labels] # Add predicted emotions to the new_data DataFrame new_data['predicted_emotion'] = predicted_emotions # Print the new_data DataFrame with predicted emotions print(new_data)