Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

🫁 Pneumonia Classification using EfficientNetB0

Tim Contributor :

Krisnawan : 22083010068

Talitha Adilla Fujisai P.P : 22083010079

Cahya Eka Melati : 22083010090

Wahyu Putra Pratama : 22083010092

Hanin Anindya Putri : 22083010086

🚀 Ringkasan Proyek

Proyek ini membangun model klasifikasi pneumonia berbasis citra Chest X-ray menggunakan arsitektur EfficientNetB0 dengan pendekatan transfer learning. Model bertujuan untuk mengklasifikasikan citra ke dalam dua kelas: Pneumonia dan Normal.


📌 Informasi Umum

  • Task : Binary Image Classification
  • Domain : Medical Imaging
  • Model : EfficientNetB0 (Pretrained ImageNet)
  • Framework : TensorFlow & Keras
  • Environment : Google Colab
  • Output : Model klasifikasi pneumonia

📂 Struktur Dataset

Dataset disusun mengikuti standar Keras ImageDataGenerator:

pneumonia/
│
├── train/
│   ├── NORMAL/
│   └── PNEUMONIA/
|
│└── val/
|    ├── NORMAL/
|    └── PNEUMONIA/
|
└── test/
    ├── NORMAL/
    └── PNEUMONIA/

Train: 4684 | Val: 586 | Test: 586


🔍 Data Preparation

Langkah preprocessing meliputi:

  • Ekstraksi dataset dari file .zip
  • Pembersihan folder tidak valid
  • Validasi struktur direktori
  • Pengecekan jumlah data per kelas

Hal ini penting untuk mencegah data leakage, terutama pada domain medis.


🧠 Arsitektur Model

Model menggunakan EfficientNetB0 sebagai backbone dengan konfigurasi berikut:

  1. EfficientNetB0 (include_top=False)
  2. Global Average Pooling
  3. Dense Layer
  4. Output layer dengan sigmoid activation

Model dirancang untuk binary classification.


⚙️ Konfigurasi Training

  • Input Size : 224 × 224
  • Loss Function : Binary Crossentropy
  • Optimizer : Adam
  • Metrics : Accuracy
  • Output Activation : Sigmoid

📊 Evaluasi

Evaluasi model dilakukan menggunakan data test terpisah untuk mengukur performa generalisasi. Model menghasilkan probabilitas prediksi:

  • 0 → Normal
  • 1 → Pneumonia

💾 Penyimpanan Model

Model dapat disimpan menggunakan:

model.save("pneumonia_efficientnetb0.h5")

🛠️ Library

  • TensorFlow / Keras
  • EfficientNet
  • NumPy
  • Matplotlib

✨ Result


Screenshot_30 Screenshot_29

Berdasarkan confusion matrix dan classification report, model menunjukkan performa yang seimbang pada kedua kelas dengan tingkat kesalahan prediksi sekitar 3,6%. Meskipun demikian,

keterbatasan dataset publik masih menjadi tantangan, sehingga pengembangan selanjutnya disarankan menggunakan data klinis yang lebih beragam, augmentasi lanjutan,

serta eksplorasi arsitektur atau mekanisme attention untuk meningkatkan robustnes dan generalisasi model.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages