From 6111caab6f12237581eeaa1fad39003e32315aa1 Mon Sep 17 00:00:00 2001 From: sguada Date: Sat, 8 Feb 2014 19:46:01 -0800 Subject: [PATCH] Added bash script to parse log and extract training loss, and test loss and accuracy --- scripts/parselog.sh | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 scripts/parselog.sh diff --git a/scripts/parselog.sh b/scripts/parselog.sh new file mode 100644 index 0000000..187607a --- /dev/null +++ b/scripts/parselog.sh @@ -0,0 +1,28 @@ +#!/bin/bash +# Usage parselog.sh caffe.log [init_iter=0] [test_interval=1000] +# It creates two files one caffe.log.test that contains the loss and test accuracy of the test and +# another one caffe.log.loss that contains the loss computed during the training +# Use init_iter when the log start from a previous snapshot +# Use test_interval when the testing interval is different than 1000 +if [ "$#" -lt 1 ] +then +echo "Usage parselog.sh /path_to/caffe.log [init_iter=0] [test_interval=1000]" +fi +if [ "$#" -gt 1 ] +then + INIT=$2 +else + INIT=0 +fi +if [ "$#" -gt 2 ] +then + INC=$3 +else + INC=1000 +fi +LOG=`basename $1` +grep 'Test score #0' $1 | awk -v init=$INIT -v inc=$INC '{print (NR*inc+init), $8}' > aux0.txt +grep 'Test score #1' $1 | awk '{print $8}' > aux1.txt +grep ' loss =' $1 | awk '{print $6,$9}' | sed 's/,//g' | column -t > $LOG.loss +paste aux0.txt aux1.txt | column -t > $LOG.test +rm aux0.txt aux1.txt \ No newline at end of file -- 2.7.4