Programming/Python

[Python] 모듈의 버전을 확인하는 습관

필요성

  • 데이터 분석 시, 잘 실행되던 코드가 오류로 실행이 되지 않는 경우가 종종 있다.
  • 예측 결괏값이 가장 좋았던 코드로 점수를 복원하고자 할 때 문제가 생길 수 있다.

그렇기 때문에 그 당시의 분석 환경을 기록해두어야 할 필요가 있다고 생각한다.

 

최신 모듈일수록 버전이 중요

계속해서 발전해나가고 있는 최신 모듈의 경우는 비교적 급변하기 때문이다. (종종 버전 충돌로 실행이 안되면 검색해야 하는 번거로움이 발생)

 

습관 들이기

1) 모듈 버전 확인하기

구글링으로 애써 찾은 코드가 실행이 안된다면 버전 문제일 가능성이 크다.

내 코드의 모듈 버전은 버전 문제를 일으키지 않도록 잘 기억해두자. 

# 예시
import tensorflow as tf
import tensorflow_addons as tfa
import tensorflow_datasets as tfds

print(f"tf.__version__: {tf.__version__}")
print(f"tfa.__version__: {tfa.__version__}")
print(f"tfds.__version__: {tfds.__version__}")

출력되는 해당 버전을 주석으로 기록해놓거나 출력 결과를 노트북 형태로 저장하여 그때 당시의 모듈 버전을 알 수 있도록 한다.

 

2) Colab 환경(사양) 확인하기

나는 Colab 환경에서 분석을 하는 경우가 많다. 아래의 코드로 분석 환경(사양)을 확인해 볼 수 있다.

 

# 파이썬 버전
!python --version

# 플랫폼
import platform
platform.platform()

# 운영체제
!cat /etc/issue.net

# CPU 사양
!cat /proc/cpuinfo

# 메모리 사양
!cat /proc/meminfo

# 사용 가능 디스크 확인
!df -h

# 사용 가능 메모리 확인
!free -h

# 모든 장치 목록 확인 방법
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())


# GPU 사양 (Colab 환경 런타임 유형을 GPU로 변경시)
!nvidia-smi

 

3) 노트북 이름 및 출력 파일 이름 

 

이름을 보고 기억할 수 있도록 특징을 잘 요약하여 저장하는 것이 필요하다.

 

결론

뭐든지 다시 봐도 알 수 있도록 잘 기록해두자