Diff of /helpers/visualizer.py [000000] .. [d129b2]

Switch to side-by-side view

--- a
+++ b/helpers/visualizer.py
@@ -0,0 +1,44 @@
+import glob, os, re
+import pandas as pd
+import seaborn as sns;
+from optparse import OptionParser
+
+sns.set()
+import matplotlib.pyplot as plt
+
+
+def process_data(experimentPath, split):
+    results = None
+    path = experimentPath + "/" + "**/" + split + "/summary.csv"
+    for filename in glob.iglob(path, recursive=True):
+        # extract the epoch number
+        df = pd.read_csv(filename, index_col=0)
+        df['EPOCH'] = int(filename.split("/")[-3:-2][0])
+
+        if results is not None:
+            results = pd.concat([results, df], axis=0)
+
+        else:
+            results = df
+    results['data_split'] = split
+    results['expname'] = experimentPath
+    return results
+
+if __name__ == "__main__":
+
+    parser = OptionParser()
+
+    parser.add_option("--input", help="specify the input data")
+
+    parser.add_option("--y_columns", help="y column name")
+    parser.add_option("--save_dataframe", help="location to save the data frame to ")
+    (options, args) = parser.parse_args()
+
+    train = process_data(options.input, "train")
+    validation = process_data(options.input, "validation")
+    results = pd.concat([train, validation], axis=1)
+
+
+    results.to_csv(options.save_dataframe)
+    ax = sns.lineplot(x="EPOCH", y="LOSS", data=results['train'])
+    plt.show()