Purpose
이 Code Snippet은 'Average Meter'객체를 설명하고자 합니다.
Dependency Packages
tqdm
Code Example
Ex1) 객체 선언부
class AverageMeter(object):
"""Computes and stores the average and current value"""
def __init__(self):
self.reset()
def reset(self):
self.val = 0
self.avg = 0
self.sum = 0
self.count = 0
def update(self, val, n=1):
self.val = val
self.sum += val * n
self.count += n
self.avg = self.sum / self.count
Ex2) 사용 예시
train_loss = AverageMeter()
for epoch in num_epochs :
pbar = tqdm(train_loader, total=len(train_loader), position=0, leave=True)
for batch in pbar :
...
train_loss.update(loss, len(batch.shape[0]))
description(f'train_loss : {train_loss.avg}')
pbar.set_description(description)
...
train_loss.reset()
PS
Model 학습 시 Loss나 Metric에 대한 값을 손쉽게 핸들링할 수 있도록 사용하는 객체입니다.
'Python Code Snippet' 카테고리의 다른 글
[Python Code Snippet] Train시 Progress Bar를 표시하는 Code (0) | 2021.05.21 |
---|---|
[Python Code Snippet] Pickle File 저장하고 불러오는 함수 (0) | 2021.05.21 |
[Python Code Snippet] 파이토치 기본설정 (0) | 2021.03.24 |
[Python Code Snippet] 코랩에 구글 드라이브 연결 (0) | 2021.03.24 |
[Python Code Snippet] 파일 입출력 (0) | 2021.03.23 |