Skip to content

[Image Classification] Low Accuracy on EuroSAT Dataset #4504

@luisquintanilla

Description

@luisquintanilla

System information

  • OS version/distro: Windows 10
  • .NET Version (eg., dotnet --info): .NET Core 2.1
  • ML.NET Version: 1.4.0
  • Model Builder Version: 16.0.1911.1103

Issue

The EuroSAT paper, a geo-referenced aerial/satellite image dataset of 27,000 images categorized into 10 different classes is said to achieve 98.57% classification accuracy using CNNs. More specifically, using ResNet50, it achieves 96.37% accuracy using a 90/10 train/test split. Using ML.NET Image Classification API as well as Model Builder achieves 99%+ accuracy while training. However, when evaluating the model, both with and without cross validation, accuracy drops between 61-69% using only the CPU and 59% using the GPU. See performance comparisons in table below.

Method Number of Images Cross-Validation Training Accuracy Evaluation Accuracy
API (CPU) 20000 (18000 Train, 2000 Test) No 0.9946118 0.698
Model Builder (CPU) 27000 Yes 0.9954983 0.6168
Model Builder (GPU) 27000 Yes N/A 0.5949

Source code / logs

The source code is at the following repo: https://github.com/luisquintanilla/EuroSATTrainSample

Dataset download link

Output logs:

ImageClassificationTrainResultsModelBuilder.txt
ImageClassificationTrainResultsAPI.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions