π§ Skin Condition Classifier (EfficientNetV2B0)
This model classifies facial skin images into 6 common dermatological conditions using a fine-tuned EfficientNetV2B0 architecture.
π Supported Skin Conditions
- Acne
- Carcinoma
- Eczema
- Keratosis
- Milia
- Rosacea
π§ͺ Model Performance
- Final Test Accuracy:
95.60%
- Evaluated on a balanced, augmented custom dataset of real-world dermatological images.
- Confusion Matrix indicates strong separation for all classes, with minor overlap in visually similar conditions.
ποΈ Model Architecture
- β Backbone: EfficientNetV2B0 (pretrained on ImageNet)
- π Global Average Pooling + Dense(512, ReLU) + Dropout(0.4) + Dense(6, Softmax)
- π Loss Function:
sparse_categorical_crossentropy
- βοΈ Class Weights: Applied to handle minor variations
- π§ Fine-tuned with learning rate scheduling and layer unfreezing
π§ Usage
π Load the model (Keras format)
from tensorflow.keras.models import load_model
model = load_model("path/to/saved_skin_model")
πΌοΈ Input Format
- Image size: 224x224
- Input dtype:
float32
- Preprocessing: Use
preprocess_input
fromtensorflow.keras.applications.efficientnet_v2
from tensorflow.keras.applications.efficientnet_v2 import preprocess_input
import numpy as np
img = preprocess_input(img) # Ensure shape is (1, 224, 224, 3)
pred = model.predict(img)
π Output Format
- Softmax probabilities for 6 classes.
argmax(pred)
gives class index from 0β5.
π§Ύ License
π¨βπ» Author
Tanishq Shinde B.E. Computer Engineering, PICT π GitHub | LinkedIn | Hugging Face
π¬ For educational and non-diagnostic purposes only. Always consult a medical professional.
---
- Downloads last month
- 9