ANNAS TRI WIDAGDO/PORTFOLIO · 2026
VOL. 01 // TECHNICAL ARCHIVE
■annastriwidagdo.me
SOFTWARE ENGINEER·FULL-STACK WEB DEVELOPER·MACHINE LEARNING ENGINEER
ENTRY 001MEMBUKA ARSIP TEKNIS00% · 01 / 01
Lewati ke konten
■annastriwidagdo.me
  • 01Beranda
  • 02Tentang
  • 03Proyek●
  • 04Blog
  • 05Kontak
LANGEN/ID
■annastriwidagdo.me
  • Software Engineer
  • Full-Stack Web Developer
  • Machine Learning Engineer

JAKARTA, INDONESIA · UTC+7

EMAILannastriw6@gmail.com↗ (dibuka di tab baru)LINKEDIN/in/annastriw↗ (dibuka di tab baru)GITHUB@annastriw↗ (dibuka di tab baru)CONTACTBuka Kontak→

© 2026 Annas Tri Widagdo. Drafted in grids, shipped in code.

←Kembali ke Proyek[INDEX // 06] / ID / PROJECTS / ml-for-heart-attack-risk-prediction
06
●[06 // Machine Learning]

Machine Learning Model for Heart Attack Risk Prediction

  • Python
  • Scikit-learn
  • Pandas
  • SMOTE
  • Joblib
  • Flask
  • Docker
Peran
Machine Learning Developer
Status terverifikasi
Purwarupa dengan layanan inferensi yang telah di-deploy
Input terstruktur untuk purwarupa prediksi risiko
🔍 Perbesar Bukti
[COVER]Input terstruktur untuk purwarupa prediksi risiko
[01]

Ringkasan

Purwarupa prediksi risiko ini membandingkan empat algoritma klasifikasi biner pada 158.355 observasi dengan 21 prediktor.

Model Random Forest terpilih dikemas sebagai layanan inferensi Flask yang menghasilkan kelas, probabilitas, faktor pendukung, dan feature importance global.

Batas klaim

Ini adalah purwarupa prediksi risiko dan eksperimen pendukung keputusan, bukan diagnosis klinis.

[02]

Kontribusi Saya

  • 01Menyiapkan dataset dengan encoding lima field kategorikal dan menerapkan MinMaxScaler.
  • 02Membuat pembagian stratified 80:20 dan menerapkan SMOTE hanya pada partisi training.
  • 03Membandingkan Random Forest, linear SVM, KNN, dan Logistic Regression dengan RandomizedSearchCV berfokus pada F1.
  • 04Menyimpan artefak terpilih dengan Joblib dan melakukan deployment layanan Flask melalui Docker di Ubuntu.
[03]

Catatan Teknis Utama

  • 01Data awal berisi 158.355 baris, 22 kolom, dan tidak memiliki missing value.
  • 02Pembagian stratified menghasilkan 126.684 baris training dan 31.671 baris test sebelum penyeimbangan SMOTE khusus training.
  • 03Random Forest mencapai accuracy 71,93%, precision 64,12%, recall 68,15%, F1 0,6607, dan ROC-AUC 0,8015.
  • 04Logistic Regression menghasilkan F1 tertinggi dalam perbandingan sebesar 0,6618, sedangkan KNN menghasilkan recall tertinggi sebesar 70,40%; Random Forest dipilih karena memimpin accuracy dan ROC-AUC.
[04]

Bukti Visual

Klik untuk melihat resolusi penuh
Bukti input purwarupa prediksi risiko
FIG.01Data input klinis pasien terstruktur yang dikirim ke alur inferensi.
Bukti output purwarupa prediksi risiko
FIG.02Respons inferensi yang menampilkan klasifikasi risiko dan skor probabilitas.
[05]

Tech Stack

  • Python
  • Scikit-learn
  • Pandas
  • SMOTE
  • Joblib
  • Flask
  • Docker
[06]

Status & Tautan

Purwarupa dengan layanan inferensi yang telah di-deploy

Kode sumber atau sistem bersifat internal/tertutup.
← Proyek sebelumnyaSIMASTOK SHR Jaya Motor
Kembali ke Proyek
Proyek berikutnya →Speech-to-Text System