Code Monkey home page Code Monkey logo

bank-customer-churn-prediction's Introduction

Dicoding ML Ops Submission 2: Bank Customer Churn Prediction

Nama: Niko Febrianur

Username dicoding: nikofebrianur

Deskripsi
Dataset Bank Customer Churn
Masalah Bisnis perbankan dihadapkan dengan tantangan untuk mengelola tingkat churn pelanggan, di mana pelanggan meninggalkan bank. Oleh karena itu, masalah yang diangkat dalam proyek ini adalah untuk membangun model machine learning yang dapat memprediksi kemungkinan churn pelanggan berdasarkan atribut yang diberikan dalam dataset. Bank memiliki kepentingan bisnis untuk memahami faktor-faktor apa yang mempengaruhi keputusan pelanggan untuk meninggalkan layanan mereka. Dengan mengetahui hal ini, bank dapat mengembangkan program loyalitas dan kampanye retensi yang efektif untuk mempertahankan sebanyak mungkin pelanggan. Mengurangi tingkat churn juga dapat menghasilkan penghematan biaya, karena mendaftarkan pelanggan baru biasanya lebih mahal daripada mempertahankan pelanggan yang sudah ada.
Solusi machine learning Untuk mengatasi masalah tingkat churn pelanggan dalam perbankan, solusi machine learning yang diusulkan adalah mengembangkan model prediktif. Model ini akan membantu bank memprediksi apakah seorang pelanggan cenderung meninggalkan layanan mereka berdasarkan informasi seperti skor kredit, lokasi, usia, saldo, dan faktor lainnya.
Metode pengolahan Dalam penanganan data untuk kasus ini, terdapat sembilan fitur di mana delapan di antaranya akan digunakan sebagai fitur klasifikasi, dan satu fitur sebagai kelas target. Dari keseluruhan fitur, terdapat dua fitur kategorikal dan enam fitur numerik. Proses pengolahan data dimulai dengan pembagian data menjadi dua bagian, yaitu 80% untuk pelatihan (train) dan 20% untuk evaluasi (eval). Selanjutnya, dilakukan serangkaian transformasi data, termasuk mengganti nama fitur yang telah diubah, serta penerapan one-hot encoding untuk fitur kelas. Proses ini bertujuan untuk memastikan bahwa data siap digunakan oleh model machine learning, dengan variabel yang diolah secara sesuai dan memenuhi kebutuhan algoritma yang akan digunakan. Dengan langkah-langkah ini, data telah disiapkan untuk melatih dan mengevaluasi model klasifikasi guna memprediksi keaktifan anggota bank.
Arsitektur model Untuk arsitektur model sendiri, tiap layer menggunakan Dense 256, Dense 64, Dense 16 dengan activation relu, kemudian layer terakhir menggunakan Dense 1 dengan activation sigmoid karena akan mengklasifikasi class yang hanya memiliki dua value yaitu aktif dan tidak aktif. Untuk model compile menggunakan optimizers Adam dengan learning_rate 0.001, loss binary_crossentropy dengan metrics BinaryAccuracy
Metrik evaluasi Metrik evaluasi yang digunakan yaitu AUC, Precision, Recall, ExampleCount dan BinaryAccuracy
Performa model Model machine learning yang dikembangkan telah mengalami proses pelatihan dengan hasil yang dapat diukur melalui beberapa metrik evaluasi. Pada tahap pelatihan, model berhasil mencapai training loss sebesar 0.2940, yang mencerminkan sejauh mana model dapat meminimalkan kesalahan selama proses pelatihan. Selain itu, binary accuracy dari model pada tahap pelatihan mencapai 0.8703, menunjukkan tingkat akurasi dalam memprediksi kelas biner secara positif. Namun, hasil evaluasi pada data validasi (val_loss dan val_binary_accuracy) menunjukkan beberapa perbedaan. Loss pada data validasi sebesar 1.3838, yang mungkin menunjukkan adanya overfitting jika dibandingkan dengan training loss. Meskipun binary accuracy pada data validasi mencapai 0.5471, hasil ini bisa dianggap sebagai tantangan dalam memastikan model mampu menggeneralisasi dengan baik pada data yang belum pernah dilihat sebelumnya. Perlu diperhatikan bahwa evaluasi performa model tidak hanya bergantung pada akurasi semata, melainkan juga pada parameter lainnya seperti precision, recall, F1-score, dan AUC-ROC, yang dapat memberikan gambaran lebih komprehensif tentang kualitas prediksi model. Oleh karena itu, proses fine-tuning model dan penyesuaian hyperparameter mungkin diperlukan untuk meningkatkan kinerja model, khususnya dalam mengatasi overfitting pada data validasi.
Opsi deployment Sistem machine learning ini akan dideploy menggunakan platform Railway
Web app Tautan web app yang digunakan untuk mengakses model serving. Contoh: bcc-model
Monitoring Proses monitoring pada model machine learning dilakukan untuk memantau kinerja model secara berkelanjutan setelah dideploy. Ini melibatkan pemantauan metrik kunci seperti akurasi, loss, dan metrik evaluasi lainnya untuk memastikan bahwa model dapat mengatasi perubahan dalam data masukan dan tetap efektif dalam membuat prediksi. Monitoring juga mencakup pendeteksian potensi overfitting atau degradasi kinerja sehingga dapat diambil tindakan perbaikan yang cepat. Dengan memahami bagaimana model berperilaku dalam lingkungan produksi, tim pengembang dapat menjaga keandalan dan keefektifan model machine learning selama masa penggunaannya.

bank-customer-churn-prediction's People

Contributors

nikofebrianur avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.