SimpleNet — EuroSAT Land-Use Classifier
Lightweight CNN (~850K params) trained from scratch on the EuroSAT dataset for 10-class satellite image classification.
Usage
import torch
from huggingface_hub import hf_hub_download
# Download
weights = hf_hub_download(repo_id="yava-code/eurosat-simplenet", filename="best_model.pth")
# Load (you need model.py from this repo)
from model import SimpleNet, CLASS_NAMES
model = SimpleNet()
model.load_state_dict(torch.load(weights, map_location="cpu"))
model.eval()
Architecture
4 convolutional blocks (Conv→BN→ReLU→Pool) + FC classifier. Channels: 3→32→64→128→256. Spatial: 64→32→16→8→4.
Training
- Dataset: EuroSAT (27,000 images, 10 classes)
- Optimizer: Adam (lr=1e-3, StepLR γ=0.1 every 5 epochs)
- Augmentations: Flip, Rotation ±15°, ColorJitter
- Epochs: 20