PENERAPAN SOFTWARE DESIGN PATTERN BERBASIS TEMPLATE DAN OBSERVER DALAM PELATIHAN MODEL XGBOOST NATIVE
Abstract
Pelatihan model machine learning, khususnya dengan algoritma XGBoost, sering kali dilakukan menggunakan skrip yang monolitik dan imperatif, sehingga menyulitkan proses pengujian, pemeliharaan, serta penambahan fitur seperti early stopping, checkpointing, dan logging. Permasalahan ini menunjukkan belum diterapkannya prinsip rekayasa perangkat lunak modern dalam pengembangan pipeline pelatihan model. Penelitian ini mengusulkan pendekatan Trainer Loop Chain, yaitu kombinasi pola desain Template Method dan Observer untuk membangun arsitektur pelatihan model XGBoost yang modular, fleksibel, dan dapat diperluas. Pendekatan ini memisahkan logika pelatihan utama dari fitur tambahan melalui handler plug-in yang independen. Implementasi dilakukan menggunakan Python 3.13 dan library XGBoost, serta diuji pada dataset Breast Cancer Wisconsin Diagnostic dengan konfigurasi binary:logistic dan metrik logloss. Hasil pengujian menunjukkan bahwa nilai logloss pada data validasi berhasil diturunkan dari 0.46701 pada iterasi ke-0 menjadi 0.13808 pada iterasi ke-9, dan pelatihan dihentikan secara otomatis pada iterasi ke-13 oleh EarlyStopHandler dengan parameter patience = 2. Model disimpan secara berkala setiap lima iterasi menggunakan CheckpointHandler, dan proses pelatihan dipantau secara real-time oleh LoggerHandler tanpa perlu memodifikasi fungsi pelatihan utama. Pendekatan ini terbukti meningkatkan efisiensi eksperimen, keterbacaan kode, serta mendukung pengembangan pipeline machine learning yang berkelanjutan dan modular
Downloads
Copyright (c) 2025 JATI (Jurnal Mahasiswa Teknik Informatika)

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.









