List AutoML di Data Science

Putri Alvina Lutfiani
3 min readApr 29, 2023

Untuk membangun model machine learning, kita terkadang harus mencoba beberapa kombinasi terbaiknya dari algoritma dan hyperparameter yang digunakan. Sekarang ada AutoML yang bisa digunakan untuk mencari kombinasi tersebut dengan hanya menjalankan suatu fungsi. Tapi, hasil dari model tersebut juga harus didukung oleh kualitas data siap latih dengan pre-processing yang dilakukan secara manual. Pre-processing harus dilakukan hingga data dapat dikatakan tidy, bersih, dan merepresentasikan data awal.

Photo by Emile Perron on Unsplash

AutoML lebih dari hyperparameter tuning. Sedangkan, hyperparameter tuning sudah termasuk sebagai salah satu step dalam AutoML. AutoML kepanjangan dari Automated Machine Learning, adalah suatu metode yang digunakan untuk mengotomatisasi tahap-tahap dalam proses pembelajaran mesin (machine learning).

Berikut daftar AutoML yang dapat digunakan untuk mencari kombinasi dan dapat dijalankan dengan memanggil librarynya di Python code ataupun berupa command:

FLAML

Contoh penggunaan FLAML

Untuk jenis task, bisa disesuaikan ke jenis task yang dibutuhkan. Algoritma yang digunakan dapat dibatasi, misalkan hanya menggunakan XGBoost dan LightGBM, maka pada line ke 11 code dapat diubah seperti:

automl.fit(X_train, y_train, task="classification", estimator_list=["xgboost", "lgbm"])

Dokumentasi lebih lengkap : doc

Dokumentasi code dan penggunaan : code

TPOT

Result TPOT adalah berupa pipeline machine learning yang paling optimal.

Dokumentasi lebih lengkap: doc

Dokumentasi code dan penggunaan : code

Auto-sklearn

Auto-sklearn dapat digunakan untuk mencari algoritma sekaligus hyperparameter tuning. Auto-sklearn menghasilkan leaderboard algoritma beserta masing-masing performa algoritmanya. Auto-sklearn juga dapat langsung digunakan tanpa training ulang sesuai hasil kombinasi algoritma dan hyperparameter paling optimalnya. Tetapi, user dapat melihat kombinasi paling terbaik yg dihasilkan.

Dokumentasi lengkap dan penggunaan : doc

PyCaret

PyCaret termasuk AutoML untuk mengotomatisasi workflow dari machine learning. PyCaret bisa digunakan untuk data tabular seperti klasifikasi, regresi, hingga forecasting. Hasil dari PyCaret berupa report dan analisis performa. Hasil model menggunakan PyCaret juga tidak perlu dilakukan training ulang.

Dokumentasi : doc

Dokumentasi penggunaan / tutorial : code

AutoGluon (for deep learning too)

kelebihan dari AutoGluon adalah result yang berupa leaderboard yang menampilkan score akurasi hingga kecepatan prediksi dari masing-masing algoritma yang diuji.

Tetapi, AutoGluon tidak memberikan banyak informasi tentang bagaimana model dibuat, sehingga interpretasi model dapat menjadi sulit. Dan juga membutuhkan sumber daya yang besar.

source: https://auto.gluon.ai/stable/tutorials/tabular/tabular-quick-start.html

Dokumentasi lebih lengkap dan penggunaan : doc

MLJAR (for deep learning too)

Result dari MLJAR dapat berupa summary dan report detail hingga berupa visualisasi sehingga pengguna mendapat interpretasi kinerja proses.

MLJAR merupakan platform berbasis cloud, sehingga akan dikenakan biaya jika digunakan terus-menerus secara advanced.

source: https://github.com/mljar/mljar-supervised

Dokumentasi lebih lengkap: doc

Dokumentasi code dan penggunaan : code

Ludwig (for deep learning too)

Ludwig dapat digunakan untuk mencari model terbaik data tabular biasa menggunakan traditional machine learning dan juga deep learning. AutoML menggunakan Ludwig, tidak perlu melakukan training ulang jika sudah menemukan kombinasi algoritma dan pemrosesan paling optimal, melainkan langsung menggunakan variable model yg digunakan untuk training.

Dokumentasi lengkap dan penggunaan : doc

Neuraxle (for deep learning too)

Neuraxle didesain untuk AutoML yang dapat menghasilkan machine learning yang adaptable untuk production. Developer Neuraxle mempunyai tujuan untuk menghasilkan pipeline yang clean.

Dokumentasi : doc

Dokumentasi penggunaan : code

AutoKeras (focus deep learning)

AutoKeras adalah AutoML berbasis Keras. AutoKeras dapat digunakan untuk kasus deep learning. Tetapi, bisa digunakan juga untuk structured data. Selain itu, AutoKeras membutuhkan sumber daya yang besar untuk komputasinya.

Dokumentasi : doc

Dokumentasi toturial : code

AutoML yang disebutkan bukan hanya hyperparameter optimization. Jika hanya mencari hyperparameter optimization, ada banyak opsi lainnya selain dari yang disebutkan di atas.

--

--