| 6 | static_dict = {} |
| 7 | |
| 8 | def get_static(file_name): |
| 9 | re_bestAcc = r'BEST_EVAL_ACC: (([0-9]|\.)*)' # .group(1) |
| 10 | re_bestIt = r'at ([0-9]*)' # .group(1) |
| 11 | re_top1Acc = r"eval\/top-1-acc': (([0-9]|\.)*)" |
| 12 | re_top5Acc = r"eval\/top-5-acc': (([0-9]|\.)*)" |
| 13 | |
| 14 | stat = {"bestAcc": 0, |
| 15 | "bestIt": 0, |
| 16 | "Top1Acc": [], |
| 17 | "Top5Acc": [], |
| 18 | } |
| 19 | with open(file_name, 'r', encoding='utf-8') as f: |
| 20 | lines = f.readlines() |
| 21 | continue_flag = False |
| 22 | for line in lines: |
| 23 | if '1048000 iteration' in line: |
| 24 | continue_flag = True |
| 25 | if continue_flag == False: |
| 26 | return {'Top1_1': [], |
| 27 | 'Top1_20': [], |
| 28 | 'Top1_50': [], |
| 29 | 'Top5_1': [], |
| 30 | 'Top5_20': [], |
| 31 | 'Top5_50': [], |
| 32 | 'BestAcc': 0, |
| 33 | 'BestIt': 0, |
| 34 | 'Finish': False} |
| 35 | with open(file_name, 'r', encoding='utf-8') as f: |
| 36 | lines = f.readlines() |
| 37 | for line in lines: |
| 38 | if line.endswith('iters\n'): |
| 39 | stat['bestAcc'] = re.search(re_bestAcc,line).group(1) |
| 40 | stat['bestIt'] = re.search(re_bestIt,line).group(1) |
| 41 | stat['Top1Acc'].append(re.search(re_top1Acc,line).group(1)) |
| 42 | stat['Top5Acc'].append(re.search(re_top5Acc,line).group(1)) |
| 43 | for i in range(len(stat['Top1Acc'])): |
| 44 | stat['Top1Acc'][i] = float(stat['Top1Acc'][i]) |
| 45 | for i in range(len(stat['Top5Acc'])): |
| 46 | stat['Top5Acc'][i] = float(stat['Top5Acc'][i]) |
| 47 | stat['bestAcc'] = float(stat['bestAcc']) |
| 48 | avg_1_1acc = stat['Top1Acc'][-1] |
| 49 | avg_20_1acc = sum(stat['Top1Acc'][-20:])/20 |
| 50 | avg_50_1acc = sum(stat['Top1Acc'][-50:])/50 |
| 51 | avg_1_5acc = stat['Top5Acc'][-1] |
| 52 | avg_20_5acc = sum(stat['Top5Acc'][-20:])/ 20 |
| 53 | avg_50_5acc = sum(stat['Top5Acc'][-50:])/ 50 |
| 54 | return {'Top1_1': avg_1_1acc, |
| 55 | 'Top1_20': avg_20_1acc, |
| 56 | 'Top1_50': avg_50_1acc, |
| 57 | 'Top5_1': avg_1_5acc, |
| 58 | 'Top5_20': avg_20_1acc, |
| 59 | 'Top5_50': avg_50_1acc, |
| 60 | 'BestAcc': stat['bestAcc'], |
| 61 | 'BestIt': stat['bestIt'], |
| 62 | 'Finish': True} |
| 63 | |
| 64 | # str = r"[2021-04-13 15:57:33,078 INFO] 228000 iteration, USE_EMA: True, {'train/sup_loss': tensor(0.0311, device='cuda:0'), 'train/unsup_loss': tensor(0.2391, device='cuda:0'), 'train/total_loss': tensor(0.3913, device='cuda:0'), 'train/mask_ratio': tensor(0.5246, device='cuda:0'), 'lr': 0.028670201217471786, 'train/prefecth_time': 0.0050832958221435545,'train/run_time': 0.315829833984375, 'eval/loss': tensor(1.0763, device='cuda:0'), 'eval/top-1-acc': 0.6306},BEST_EVAL_ACC: 0.9348, at 173000 iters" |
| 65 | |