Spaces:
Runtime error
Runtime error
File size: 1,305 Bytes
4d0eb62 |
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 42 43 44 |
# Copyright (c) OpenMMLab. All rights reserved.
import json
def load_json_log(json_log):
"""load and convert json_logs to log_dicts.
Args:
json_log (str): The path of the json log file.
Returns:
dict: The result dict contains two items, "train" and "val", for
the training log and validate log.
Example:
An example output:
.. code-block:: python
{
'train': [
{"lr": 0.1, "time": 0.02, "epoch": 1, "step": 100},
{"lr": 0.1, "time": 0.02, "epoch": 1, "step": 200},
{"lr": 0.1, "time": 0.02, "epoch": 1, "step": 300},
...
]
'val': [
{"accuracy/top1": 32.1, "step": 1},
{"accuracy/top1": 50.2, "step": 2},
{"accuracy/top1": 60.3, "step": 2},
...
]
}
"""
log_dict = dict(train=[], val=[])
with open(json_log, 'r') as log_file:
for line in log_file:
log = json.loads(line.strip())
# A hack trick to determine whether the line is training log.
mode = 'train' if 'lr' in log else 'val'
log_dict[mode].append(log)
return log_dict
|