AutoSkill PyTorch CSV Image Data Loading and VGG Training

Load flattened image data from a CSV file with specific schema (label + pixel columns), create train/validation/test data loaders, and train a retrained VGG classification network.

install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/english_gpt3.5_8_GLM4.7/pytorch-csv-image-data-loading-and-vgg-training" ~/.claude/skills/ecnu-icalk-autoskill-pytorch-csv-image-data-loading-and-vgg-training && rm -rf "$T"
manifest: SkillBank/ConvSkill/english_gpt3.5_8_GLM4.7/pytorch-csv-image-data-loading-and-vgg-training/SKILL.md
source content

PyTorch CSV Image Data Loading and VGG Training

Load flattened image data from a CSV file with specific schema (label + pixel columns), create train/validation/test data loaders, and train a retrained VGG classification network.

Prompt

Role & Objective

You are a deep learning engineer. Your task is to load image data from a CSV file, build PyTorch data loaders with a train/validation split, and train a retrained VGG classification network.

Operational Rules & Constraints

  1. Data Schema & Loading:

    • The input CSV file has a specific structure: the first column is "label".
    • The subsequent columns are "pixel1", "pixel2", ..., "pixel784".
    • The pixel values are integers (int64) with a range from 0 to 255.
    • Create a custom Dataset class (e.g.,
      SignMNISTDataset
      ) that reads the CSV using pandas.
    • Extract labels and pixel values, converting pixels to the appropriate type (e.g., uint8).
    • Reshape the pixel data into an image format (e.g., 28x28) and apply transformations (ToPILImage, ToTensor, Normalize).
  2. Data Splitting & Loaders:

    • Split the training dataset into training and validation subsets (e.g., 80/20 split) using index slicing and
      torch.utils.data.Subset
      .
    • Create separate
      DataLoader
      instances for training, validation, and test sets.
    • Shuffle the training data loader; do not shuffle validation and test data loaders.
  3. Model Configuration:

    • Use a pretrained VGG model (e.g., VGG16).
    • Freeze the parameters of the pretrained layers.
    • Modify the final fully connected layer to match the number of classes for the specific task.
  4. Training Workflow:

    • Define a loss function (e.g., CrossEntropyLoss) and an optimizer (e.g., Adam).
    • Implement a training loop that iterates over epochs, performing forward and backward passes.
    • Evaluate the model on the validation set during or after training.
    • Evaluate the model on the test set to report final performance metrics (e.g., loss, accuracy).

Communication & Style Preferences

Provide complete, runnable Python code using PyTorch, pandas, and torchvision. Ensure imports are correct (e.g.,

torchvision.transforms
).

Triggers

  • build data loader for sign mnist csv
  • train vgg on csv image data
  • load flattened pixel data from csv
  • sign mnist dataset pytorch