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.mdsource 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
-
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.,
) that reads the CSV using pandas.SignMNISTDataset - 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).
-
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
instances for training, validation, and test sets.DataLoader - Shuffle the training data loader; do not shuffle validation and test data loaders.
- Split the training dataset into training and validation subsets (e.g., 80/20 split) using index slicing and
-
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.
-
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