ViT Fine-Tuned on EuroSAT

This model is a fine-tuned version of google/vit-base-patch16-224 for satellite land-cover classification on the EuroSAT dataset.

Model Details

  • Architecture: Vision Transformer (ViT)
  • Base model: google/vit-base-patch16-224
  • Task: Image Classification
  • Dataset: EuroSAT
  • Number of classes: 10
  • Fine-tuning epochs: 3

Classes

  • AnnualCrop
  • Forest
  • HerbaceousVegetation
  • Highway
  • Industrial
  • Pasture
  • PermanentCrop
  • Residential
  • River
  • SeaLake

Evaluation Results

The model was evaluated on the held-out EuroSAT test split of 2,700 images.

Metric Result
Test Accuracy 98.70%
Macro F1 98.67%

For comparison, a fine-tuned ResNet50 trained on the same data split achieved:

Metric Result
Test Accuracy 97.41%
Macro F1 97.36%

ViT achieved higher classification performance in this experiment, while ResNet50 trained substantially faster.

Fine-Tuning

The pretrained ViT classification head was adapted to the 10 EuroSAT classes and the model was fine-tuned end to end using Hugging Face Transformers.

Training configuration:

  • Optimizer: AdamW
  • Learning rate: 5e-5
  • Weight decay: 0.01
  • Epochs: 3
  • Best checkpoint selected using validation macro F1

Usage

from transformers import pipeline

classifier = pipeline(
    "image-classification",
    model="Haifald/vit-eurosat"
)

predictions = classifier("path_to_image.jpg")
print(predictions)

Limitations

  • Results are based on one EuroSAT experiment and one dataset split.
  • Performance on other satellite datasets was not evaluated.
  • Training time depends on the hardware environment.

Project

Full experiment and comparison with ResNet50: GitHub link will be added after the repository is published.

Downloads last month
22
Safetensors
Model size
85.8M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Haifald/vit-eurosat

Finetuned
(2089)
this model

Dataset used to train Haifald/vit-eurosat