kukalend's picture
Upload 2 files
8124c93 verified
|
Raw
History Blame Contribute Delete
3.49 kB

A newer version of the Gradio SDK is available: 6.20.0

Upgrade
metadata
language: en
license: mit
library_name: pytorch
tags:
  - image-classification
  - computer-vision
  - transfer-learning
  - pokemon
  - resnet18
metrics:
  - accuracy
model-index:
  - name: pokemon-resnet18-transfer-learning
    results:
      - task:
          type: image-classification
          name: Image Classification
        dataset:
          name: Custom Pokemon Dataset (course week 8 style)
          type: imagefolder
        metrics:
          - type: accuracy
            value: 0.8
            name: test_accuracy

Pokemon ResNet18 Transfer Learning Classifier

Model Description

This model is a transfer-learning image classifier based on ResNet18, fine-tuned on a custom Pokemon image dataset with 6 classes:

  • charizard
  • charmander
  • charmeleon
  • ditto
  • eevee
  • ekans

The model was trained for the mandatory exercise "Computer Vision Classification & Model Comparison" and is intended to be compared against:

  • an open-source zero-shot model (CLIP)
  • a closed-source vision model (OpenAI)

Model Details

  • Architecture: ResNet18 (torchvision.models.resnet18)
  • Framework: PyTorch
  • Input size: 224 x 224 RGB
  • Output classes: 6
  • Checkpoint format: .pth (state_dict + metadata)

Training Data

Dataset structure:

  • data/pokemon/train/
  • data/pokemon/test/

Classes:

  • charizard, charmander, charmeleon, ditto, eevee, ekans

Preprocessing

Training transforms:

  • RandomResizedCrop(224)
  • RandomHorizontalFlip()
  • ColorJitter(brightness=0.2, contrast=0.2, saturation=0.2)
  • Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])

Evaluation transforms:

  • Resize(256)
  • CenterCrop(224)
  • Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])

Training Procedure

  • Loss: CrossEntropyLoss
  • Optimizer: Adam
  • Learning rate: 1e-4
  • Weight decay: 1e-4
  • Batch size: 16
  • Epochs: 4
  • Device: CPU

Evaluation Results

Final performance from project reports:

  • Best validation accuracy: 0.83784
  • Test accuracy: 0.80

Class-level behavior (high-level):

  • Strong performance on ditto, charmander, ekans
  • Main confusion observed between charizard, charmeleon, and eevee on some samples

Intended Use

This model is intended for:

  • educational experiments in transfer learning
  • small-scale Pokemon image classification demos
  • model-comparison workflows against CLIP/OpenAI vision systems

It is not intended for production or safety-critical applications.

Limitations

  • Small custom dataset
  • Limited class coverage (only 6 classes)
  • Sensitivity to style/domain shift (sprites vs photos, color variants, edited images)

Ethical Considerations

This is a toy educational classifier trained on non-sensitive image categories. No personal or biometric data is used.

How to Use

Load checkpoint contents:

  • state_dict: model weights
  • labels: class names
  • image_size: expected size
  • architecture: model family

For complete inference logic and app integration, see the project source implementation.

Reproducibility Artifacts

  • Model checkpoint: custom_resnet18.pth
  • Project metrics files:
    • custom_model_metrics.json
    • model_comparison.json

Links

  • Hugging Face Space: https://huggingface.co/spaces/kukalend/computer-Vision-classification
  • Hugging Face model repo: https://huggingface.co/kukalend/pokemon-transfer-resnet18