File size: 1,601 Bytes
19b8775
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import subprocess
import sys

iteration = sys.argv[1]
filenames = sys.argv[2:]

total_score = 0.0
num_scores = 0

for filename in filenames:
    grep_cmd = ["grep", "Dev score.* %s[)]" % iteration, "-A1", filename]
    grep_result = subprocess.run(grep_cmd, stdout=subprocess.PIPE, encoding="utf-8")
    grep_result = grep_result.stdout.strip()
    if not grep_result:
        max_cmd = ["grep", "Dev score", filename]
        max_result = subprocess.run(max_cmd, stdout=subprocess.PIPE, encoding="utf-8")
        max_result = max_result.stdout.strip()
        if not max_result:
            print("{}: no result".format(filename))
        else:
            max_it = max_result.split("\n")[-1]
            max_it = int(max_it.split(":")[0].split("(")[-1][:-1])
            epoch_finished_string = "Epoch %d finished" % max_it
            finish_cmd = ["grep", epoch_finished_string, filename]
            finish_result = subprocess.run(finish_cmd, stdout=subprocess.PIPE, encoding="utf-8")
            finish_result = finish_result.stdout.strip()
            finish_time = finish_result.split(" INFO")[0]
            print("{}: no result.  max iteration: {}   finished at {}".format(filename, max_it, finish_time))
    else:
        grep_result = grep_result.split("\n")[-1]
        score = float(grep_result.split(":")[-1])
        best_iteration = int(grep_result.split(":")[-2][-6:-1])
        print("{}: {}  ({})".format(filename, score, best_iteration))
        total_score += score
        num_scores += 1

if num_scores > 0:
    avg = total_score / num_scores
    print("Avg: {}".format(avg))