pythonadvanced
Transfer Learning with TorchVision
Fine-tune a pretrained ResNet for custom image classification with PyTorch and TorchVision.
pythonPress ⌘/Ctrl + Shift + C to copy
import torch
import torch.nn as nn
import torch.optim as optim
from torchvision import models, transforms, datasets
from torch.utils.data import DataLoader
transform = transforms.Compose([transforms.Resize(224), transforms.CenterCrop(224), transforms.ToTensor(), transforms.Normalize([0.485,0.456,0.406],[0.229,0.224,0.225])])
dataset = datasets.FakeData(size=200, image_size=(3,224,224), num_classes=5, transform=transform)
loader = DataLoader(dataset, batch_size=16, shuffle=True)
model = models.resnet18(weights=models.ResNet18_Weights.DEFAULT)
for p in model.parameters():
p.requires_grad = False
model.fc = nn.Linear(model.fc.in_features, 5)
optimizer = optim.Adam(model.fc.parameters(), lr=1e-3)
criterion = nn.CrossEntropyLoss()
model.train()
for images, labels in loader:
optimizer.zero_grad()
outputs = model(images)
loss = criterion(outputs, labels)
loss.backward()
optimizer.step()
print('Fine-tuning complete')Use Cases
- image classification
- custom CNN
- transfer learning
Tags
Related Snippets
Similar patterns you can reuse in the same workflow.
pythonintermediate
ONNX Runtime Fast ML Inference
Export a PyTorch model to ONNX and run fast CPU inference with ONNX Runtime.
Best for: model deployment
#onnx#inference
pythonintermediate
Pytorch Training
Data science technique: pytorch-training
Best for: machine learning
#data#machine-learning
typescriptintermediate
OpenAI Chat Completion with Streaming
Stream GPT responses token-by-token using the OpenAI SDK with async iteration.
Best for: chatbot UI
#openai#streaming
typescriptbeginner
Generate Text Embeddings with OpenAI
Create vector embeddings for semantic search and similarity matching using text-embedding-3-small.
Best for: semantic search
#openai#embeddings