Image Recognition Model (ResNet50)
Dit model herkent beelden uit satellietfoto's en categoriseert ze in 10 verschillende categorieën met een ResNet50-architectuur.
Op deze pagina toon ik mijn getrainde convolutional neural networks.
Dit model herkent beelden uit satellietfoto's en categoriseert ze in 10 verschillende categorieën met een ResNet50-architectuur.
Inhoud: De EuroSAT dataset bestaat uit RGB-satellietbeelden gericht op "Land use" en "Land cover" classificatie.
Klassen: Er zijn 10 unieke klassen: AnnualCrop, Forest, HerbaceousVegetation, Highway, Industrial, Pasture, PermanentCrop, Residential, River, en SeaLake.
Balans en Grootte: De dataset bevat in totaal 27.000 beelden, perfect verdeeld over de klassen (2.700 beelden per klasse). Deze balans is ideaal omdat we geen technieken voor class imbalance hoeven toe te passen.
Resolutie en Resizing: De originele beelden zijn 64x64 pixels. Omdat de meeste standaard pretrained modellen (zoals ResNet) getraind zijn op ImageNet en een input van 224x224 pixels verwachten, zullen we de beelden upscalen tijdens de preprocessing.
Invariantie en Augmentatie: Satellietbeelden hebben een hoge mate van rotatie-invariantie; een bos blijft een bos, ongeacht de oriëntatie. Dit in tegenstelling tot objectdetectie (zoals auto's) waar oriëntatie cruciaal is. Op basis hiervan passen we "agressievere" data augmentatie toe om het model robuuster te maken:
Normalisatie: Om effectief gebruik te maken van transfer learning, moeten de pixelwaardes genormaliseerd worden op basis van de mean en standard deviation van de originele ImageNet dataset.
Data Split: De dataset heeft al CSV-bestanden voor train, test en validation sets, wat we zullen aanhouden voor een consistente evaluatie.
Keuze: We kiezen voor de ResNet50 architectuur als pretrained model.
Justificatie: Voor de selectie hebben we veel verschillende architecturen onderzocht, van gevestigde namen tot minder conventionele opties. Ik heb gekeken naar de VGG-familie (VGG16, VGG19), GoogLeNet (Inception), verschillende ResNet-varianten (18, 34, 50, 101), DenseNet, MobileNet en EfficientNet. Ook nieuwere architecturen zoals ConvNeXt en Vision Transformers (ViT) zijn overwogen. Voor elk model heb ik de prestaties, het aantal parameters, de trainingssnelheid en de geschiktheid voor transfer learning geëvalueerd.
Uiteindelijk biedt ResNet50 voor dit project de beste balans:
Primaire Metric: Accuracy. Gezien de perfect gebalanceerde dataset is accuracy de meest representatieve maatstaf voor succes.
Loss Function: CrossEntropyLoss, de standaard loss functie voor multi-class classificatie.
Analyse: We gebruiken een Confusion Matrix om dieper inzicht te krijgen in specifieke classificatiefouten (bijvoorbeeld het verwarren van rivieren met snelwegen).