티스토리 뷰
반응형
kaggle에는 /kaggle/working/에 모듈을 저장해서 불러올 수 있는 기능이 있다.
이 기능을 사용하면 하나의 노트북에서는 각 세션마다 모듈을 pip install로 받지 않아도 계속해서 지속된다.
필자는 pycaret으로 진행하였는데, classification 모듈을 import할 때 오류가 나는 부분이 발생했다.
cannot import name 'is_datetime64tz_dtype' from 'pandas.core.tools.datetimes' (/kaggle/working/pandas/core/tools/datetimes.py)
어느 부분이 문제인지 몰라, 조건을 바꿔가면서 실험했다.
1. pycaret을 다운받을 때 사용하는 각 모듈의 문제인가? -> 아니였다. 세션을 종료하고 다시 실행해도 되는 녀석이 있다.
2. 그렇다면 /kaggle/working/의 문제인가? -> 아니였다. 그냥 다운받아도 잘만 돌아간다.
3. 그렇다면 cpu와 gpu의 문제인가? -> 이거였다.
몇시간동안 패키지를 다운받고 삭제하고를 반복해서 알아낸 결론이었다.
결론적으로 말하자면 pycaret을 /kaggle/working/에 모듈을 다운받아서 사용할 때 GPU는 사용할 수 없다.
=> 추가 : cuml의 문제로서 pandas 버전을 호환하면 GPU도 사용가능한 것 같다. 버전은 1.2.4
2.0.3으로 해서 문제가 해결되었다는 사람도 있다.
캐글 보안 정책 때문인지는 모르겠지만, 확실히 번거로움이 있긴 하다.
그러므로 모듈을 다운 받아 사용할 때는 CPU와 GPU를 바꿔서도 안된다. 오류가 난다.
+TPU는 가능하다.
참고로 이렇게 사용하면 버전 관리도 되지 않는다. 말 그대로 일회용.
반응형