AutoML은 머신러닝 모델 개발 과정을 자동화하여 효율성을 극대화하는 도구입니다. 모델 선택, 하이퍼파라미터 튜닝, 데이터 전처리 등을 자동으로 처리하기에 머신러닝의 진입 장벽을 낮추어주며, 전문가들에게도 반복적인 작업을 줄여주기에 업무 효율성을 높여주는데요
1. AutoML이란
- AutoML은 머신러닝의 반복적이고 복잡한 작업을 자동화하여 모델 개발 시간을 줄이고, 성능을 최적화하는 기술을 말합니다.
- AutoML 도구를 사용하면 아래와 같은 작업들이 자동으로 이루어지게 됩니다.
a) 모델 선택 : 데이터에 적합한 알고리즘 탐색
b) 하이퍼파라미터 튜닝 : 성능 향상을 위한 최적의 매개변수 조합 탐색
c) 데이터 전처리 : 결측치 처리, feature selection, scaling 등
d) 성능 평가 : 모델의 성능을 측정하고 최적의 모델 선정
2. AutoML의 종류
현재 공개된 AutoML Tool들은 다양하게 존재합니다. 이번에는 오픈 소스로 구성되어 무료로 사용가능한 라이브러리들에 대해서 알아보겠습니다.
2-1. 오픈 소스 AutoML
a) TPOT (Tree-based Pipeline Optimazation Tool)
* TPOT은 유전 알고리즘을 기반으로 최적의 머신러닝 파이프라인을 탐색하는 도구를 말합니다.
* 주요 특징으로는, Scikit-learn의 모델과 전처리기능을 활용하며, 최적화된 파이프라인을 파이썬 코드로 내보낼 수 있습니다.
https://github.com/EpistasisLab/tpot
b) Auto-sklearn
* Auto-sklearn은 Scikit-learn 기반의 AutoML Tool로, Bayesian Optimization을 사용해 최적의 모델과 하이퍼파라미터 Serach를 진행합니다.
* 주요 특징으로는, 제한된 시간 내에서 최적의 모델과 전처리기를 탐색할 수 있다는 것과 Scikit learn을 활용하기에 친숙한 패키지를 활용하여 코드가 더 익숙하다는 점입니다.
https://automl.github.io/auto-sklearn/master/
c) H2O AutoML
* H2O AutoML은 대규모 데이터 분석에 적합하며, 다양한 머신러닝 알고리즘을 자동으로 탐색해줍니다.
* 주요특징으로는, GPU를 활용한 학습을 지원하며, 대규모 데이터들이 있는 금융, 보험 등 산업 데이터 분석에 강점을 가지고 있습니다.
https://docs.h2o.ai/h2o/latest-stable/h2o-docs/automl.html
d) PyCaret
* PyCaret은 간단한 코드로 데이터 전처리부터 모델평가까지 모든 머신러닝 작업을 자동화해줍니다.
* 주요 특징으로는, EDA와 통합 가능하다는 점이 있으며, 인터페이스가 직관적이기에 초보자도 쉽게 사용할 수 있다는 점이 있습니다.
'머신러닝 with Python' 카테고리의 다른 글
[머신러닝 with Python] TPOT을 활용한 Iris 데이터 분류(AutoML) (0) | 2024.12.11 |
---|---|
[머신러닝 with Python] 유전 알고리즘이란? TPOT에서 최적화 활용(AutoML) (0) | 2024.12.11 |
[머신러닝 with Python] LDA란?(Latent Dirichlet Allocation란?) / 토픽 모델링을 위한 기법 (1) | 2024.12.02 |
[머신러닝 with Python] Bag of Words란? (BoW) (0) | 2024.12.01 |
[머신러닝 with Python] TF-IDF를 활용한 Text Regression(텍스트 회귀) - "청와대 국민청원" 데이터 활용 (1) | 2024.11.30 |
댓글