티스토리 뷰

반응형

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는 가능하다.

 

참고로 이렇게 사용하면 버전 관리도 되지 않는다. 말 그대로 일회용.

 

 

반응형