R 에는 lubridate package가 있듯이, Python 에는 datetime module모듈이 있다.
datetime module
날짜와 시간 데이터를 다루는데에 유용한 파이썬 스탠다드 라이브러리이다.
- timedelta : 기간을 표현하기 위해 사용
- timezone : 시간대를 표현하기 위해 사용
- date : 날짜를 표현하기 위해 사용
- time : 시간을 표현하기 위해 사용
- datetime : 날짜와 시간을 동시에 표현하기 위해 사용
hh:mm:ss으로 형태 변경 사용자 함수
# 시간 표시 함수
def format_time(elapsed):
# 반올림
elapsed_rounded = int(round((elapsed)))
# hh:mm:ss으로 형태 변경
return str(datetime.timedelta(seconds=elapsed_rounded))
- 모델 학습 단계에서 경과를 표시할 때 유용하다.
경과 시간 확인
import time
# 시작 시간 설정
t0 = time.time()
# 데이터로더에서 배치만큼 반복하여 가져옴
for step, batch in enumerate(train_dataloader):
# 경과 정보 표시
if step % 500 == 0 and not step == 0:
elapsed = format_time(time.time() - t0)
print(' Batch {:>5,} of {:>5,}. Elapsed: {:}.'.format(step, len(train_dataloader), elapsed))
-
시작 시간을 설정한다.
-
각 반복 과정마다 경과된 시간을 저장한다.
-
경과 과정 중간에 출력하여 시각적으로 진행상태를 확인한다.
[참고]
[파이썬] datetime 모듈로 날짜/시간 처리하기 (www.daleseo.com/python-datetime/)