본문 바로가기
  • Hello_
Python

[Python] tqdm - 알고리즘 진행률 확인하기

by LDwDL 2022. 9. 10.
728x90
반응형

오늘 포스팅 할 내용은 tqdm으로 알고리즘이 얼마만큼 진행이 되고 있는지 시각화 시켜주는 라이브러리이다.

특히, 학습 모델의 진행률을 보는데 매우 유용하다.

추가적으로 tqdm, enumerate, zip을 동시에 사용하고자 할때 어떠한 순서로 구성을 해야하는지도 다뤄보고자 한다.

 

tqdm

우선 tqdm은 anaconda에서 기본적으로 제공하는 함수가 아니기 때문에 추가적인 설치가 필요하다.

 

[tqdm 설치]

tqdm은 "pip insatll tqdm"을 터미널에 입력하면 손쉽게 설치가 가능하다.

tqdm 설치

 

[tqdm 사용]

tqdm의 라이브러리의 tqdm 함수를 그대로 사용해주면 된다.

결과와 같이 10000번이 수행되었다는 것을 프로세스바를 통해 제공해준다.

본 예시는 computational memory가 많이 들지 않는 연산이라 금방 끝났지만, 학습 모델 같은 고차원 연산이 필요한 알고리즘의 경우 진행도를 손쉽게 팔로우 할 수 있다.

 

tqdm, enumerate, zip

python에서 많이 사용되는 enumerate와 zip을 tqdm과 함께 쓰려면 코드 순서가 옳게 기입되어야 한다.

 

[tqdm, enumerate, zip 순서]

우선 enumerate 함수 안에 zip이 위치해 있어야 하며, zip안의 둘 중 아무 변수에 tqdm을 씌우면 된다.

아래 예시는 첫번째 argument에 씌웠지만 두번째 argument에 씌워도 첫번째 argument와 길이가 동일하기 때문에 상관없다.

 

 

위 예시와 같은 저차원 연산에는 큰 의미를 못느끼겠지만 고차원 연산의 알고리즘을 다룰 수록 tqdm은 필수가 된다. 필자는 실수로 tqdm을 작성하지 않고 퇴근했다가 다음날 출근해서 돌아가고 있는 알고리즘을 보고 망연자실한 경험이 있다...

 

 

 

728x90
반응형

댓글