MachineLearning
AutoML : Pycaret
코딩초보ran
2022. 12. 22. 22:00
AutoML
: Automated Machine Learning, 자동화된 머신러닝
: 데이터 전처리, 모델 학습 및 평가, 튜닝 등 머신러닝 모델링을 자동으로 해주는 기술
AutoML 라이브러리 및 서비스 중에 가장 접근성이 좋은 라이브러리가 Pycaret이다.
Pycaret
: AutoML 기능을 제공하는 라이브러리
: 여러 머신러닝 모델의 결과를 확인 할 수 있으며, 모델 간 비교가 가능해짐
: 모델 비교 외에도 feature importance, residual 시각화 등 다양한 기능을 제공
따라서, 적절한 머신러닝 모델을 선정하기 위해 모델 선택 단계에서 진행하면 좋을 것 같음
- pycaret documentation : https://pycaret.readthedocs.io/en/latest/api/classification.html
위 documentaion 링크에 가보면 Classification, Regression, Time Series, Clustering 등 다양한 카테고리 관련해서 사용방법이 설명되어 있음. 특히, 파라미터가 많기 때문에 꼭 확인하고 사용하는 것을 추천.
- 시계열 데이터에 pycaret을 적용한 사례
- https://towardsdatascience.com/time-series-forecasting-with-pycaret-regression-module-237b703a0c63
- setup 함수를 통해서 파라미터 설정을 해줘야하는데, 그 중에 fold_strategy 파라미터가 있음.
- fold_strategy
- pycaret은 10-fold Cross-Validation을 수행하는데, 이를 다른 fold_strategy로 설정할 수 있음
- 내가 연습했던 데이터는 시계열 데이터였기 때문에 Cross-Validation 등의 방법이 적절하지 않다고 생각했고, 검색해보니 'timeseries' 라는 설정값이 있어서 그대로 설정해주었음. *어떻게 진행되는 건지 추가 작성하기
- fold_strategy
Tip
- pycaret 은 colab에서 진행
- pycaret 설치하는데 이슈가 많~이 발생해서 로컬에서 설치가 잘 안됐음. 이럴 때는 google colab에서 설치 후 사용하면 됨!
- numpy 버전 에러가 나면 pycaret을 설치 후에 numpy 버전을 다운그레이드 해주면 됨.(!pip install --force-reinstall numpy==1.18.5)
- *주의 : colab 런타임 끊김
- colab은 일정 시간(1시간30분인가?) 이상 접속이 없으면 런타임이 끊김. 그러면 pycaret 설치부터 작업을 다시 해야하기 때문에 colab 런타임 끊기지 않게 조심
- colab 런타임 유지하는 방법
- 링크 : https://khw11044.github.io/blog/blog-etc/2021-02-02-colab-01/
- (이런 방법이 있다고 하는데, 나는 잘 안 됐음,,)
- pycaret이 머신러닝을 많이 돌리기 때문에 시간이 오래 걸리니까 런타임 안 끊기게 조심!