/lung-cancer-prediction-pipeline

This is the final project of the ML-Ops Dicoding class. This project serves to predict whether a person has lung cancer or not.

Primary LanguagePureBasic

Submission Proyek Akhir: Prediksi Penyakit Kanker Paru-Paru

Nama: Anas Fikri Hanif

Username dicoding: anashaneef

Deskripsi
Dataset Lung Cancer
Masalah Kanker paru-paru adalah kanker yang terbentuk di paru-paru. Kanker ini merupakan salah satu kanker yang umum terjadi di Indonesia. Secara global, kanker paru-paru merupakan penyebab pertama kematian akibat kanker pada pria dan penyebab kedua kematian akibat kanker pada wanita.
Solusi Machine Learning Dengan banyaknya kematian yang terjadi akibat penyakit kanker paru-paru, maka sangat dibutuhkan sebuah sistem machine learning yang dapat memprediksi penyakit ini sehingga dapat membantu tenaga medis dalam menangani pasiennya.
Metode pengolahan Dalam dataset yang digunakan terdapat dua jenis fitur, yaitu fitur yang berjenis kategorikal dan numerik. Untuk fitur kategorikal akan ditransformasi menjadi numerikal menggunakan one-hot-encoding. Untuk fitur numerik akan dinormalisasi sehingga semua value berada pada range yang sama.
Arsitektur model Model NN dibangun dengan memanfaatkan beberapa layers yaitu Dense, Dropout dan Hidden. Model ini kemudian akan menghasilkan satu layer sebagai outputnya.
Metrik evaluasi Beberapa metrik yang digunakan untuk mengevaluasi seberapa baik model yang telah dibuat adalah BinaryAccuracy, TruePositive, FalsePositive, TrueNegative, dan FalseNegative.
Performa model Performa model yang telah dibuat tergolong cukup baik karena telah mampu memprediksi apakah seseorang berkemungkinan terkena kanker paru-paru atau tidak dengan skor binary_accuracy sekitar 95 %
Opsi Deployment Proyek machine learning ini dideploy dalam sebuah layanan platfrom as a service bernama Railway yang menyediakan layanan deploy gratis selama 500 jam.
Web App Railway
Monitoring Monitoring dari layanan ini dilakukan dengan menggunakan Prometheus yang merupakan salah satu layanan open source. Jadi ketika terjadi perubahan, semisal perubahan jumlah request maka perubahan tersebut dapat dimonitoring dengan baik.