diff --git a/src/experiments/finetune_T5/plotting/plot_loss.py b/src/experiments/finetune_T5/plotting/plot_loss.py
new file mode 100644
index 0000000000000000000000000000000000000000..57c365b33cdb456f228e50df069cc28ec9f94c03
--- /dev/null
+++ b/src/experiments/finetune_T5/plotting/plot_loss.py
@@ -0,0 +1,30 @@
+import os
+import re
+import pandas as pd
+import matplotlib.pyplot as plt
+
+def plot_loss_curve(logfile, title):
+
+    eval_losses = []
+    pattern = re.compile(r"'eval_loss': ([\d\.e-]+)")
+    
+    with open(logfile, 'r', errors='ignore') as file:
+        for line in file:
+            match = pattern.search(line)
+            if match:
+                eval_losses.append(float(match.group(1)))
+
+    plt.figure(figsize=(10,5))
+    plt.plot(eval_losses)
+
+    plt.xlabel("Epoch")
+    plt.ylabel("Eval Loss")
+    plt.title(title)
+    plt.legend()
+    plt.grid(True)
+
+    plt.savefig(f"eval_loss_{os.path.basename(logfile)}.pdf")
+
+plot_loss_curve("logs/finetune_T5_MLM_entity_427082.txt", "T5 Finetuning - MLM Entity Masking")
+plot_loss_curve("logs/finetune_T5_MLM_label_427081.txt", "T5 Finetuning - MLM Label Masking")
+plot_loss_curve("logs/finetune_T5_NLI_427080.txt", "T5 Finetuning - NLI")
diff --git a/src/experiments/finetune_T5/results/plot.py b/src/experiments/finetune_T5/results/plot.py
deleted file mode 100644
index 684c1f1ccfdaa5855aba3a19b0218d93a107384b..0000000000000000000000000000000000000000
--- a/src/experiments/finetune_T5/results/plot.py
+++ /dev/null
@@ -1,17 +0,0 @@
-import pandas as pd
-import matplotlib.pyplot as plt
-
-df = pd.read_csv("eval_loss.csv")
-
-print(df.head())
-
-plt.figure(figsize=(10,5))
-plt.plot(df["epoch"], df["eval_loss"])
-
-plt.xlabel("Epoch")
-plt.ylabel("Eval Loss")
-plt.title("T5 finetuning training curve")
-plt.legend()
-plt.grid(True)
-
-plt.savefig("eval_loss.pdf")