Vendor-neutral PyTorch exam from the Linux Foundation and PyTorch Foundation. Fundamentals 38%, performance 26%, model development 20%, data 16%. $299 with the learning pathway.
Who it's for: ML engineers and researchers who want a framework credential no cloud vendor owns.
Comfortable Python and NumPy, and basic ML concepts (loss, gradient descent, train/validation split)
A free Google Colab account for GPU time. A laptop with Apple Silicon also works for the MPS backend
Weeks 1–2 · 16 h
Tensors, autograd and devices (largest domain)
Create and reshape tensors (view vs reshape, permute, broadcasting, indexing) and predict output shapes and dtypes without running code
Explain autograd (requires_grad, .backward(), grad accumulation, torch.no_grad, .detach) and why zero_grad is needed
Move models and tensors between CPU, CUDA and MPS, and fix device-mismatch errors
Write a correct training and evaluation loop (model.train/model.eval, optimizer.step, loss.backward) and save/load a state_dict
Hands-on: In Colab, write a two-layer network for FashionMNIST from raw tensors and autograd only (no nn.Module or optim), then rewrite it with nn.Module, nn.CrossEntropyLoss and torch.optim.SGD, and confirm both reach similar accuracy.
Build models from nn.Linear, nn.Conv2d, pooling, BatchNorm, Dropout, embeddings, and nn.Sequential/ModuleList
Choose the right loss and output layer for regression, binary, multi-class and multi-label tasks
Use optimizers and LR schedulers (SGD with momentum, AdamW, StepLR, OneCycleLR) and gradient clipping
Fine-tune a pretrained torchvision model by freezing layers and replacing the classifier head
Hands-on: Fine-tune a pretrained ResNet-18 on a small image dataset (for example a 5-class subset of Food-101). Freeze the backbone, train a new head with AdamW and a cosine schedule, then unfreeze the last block and compare validation accuracy.
Use mixed precision (torch.autocast with bfloat16/float16 and GradScaler) and explain when each dtype is safe
Speed up models with torch.compile and inference_mode, and measure the gain correctly (warm-up, torch.cuda.synchronize)
Profile a training step with torch.profiler and find dataloader vs GPU bottlenecks
Explain DistributedDataParallel (process groups, DistributedSampler, torchrun) and how it differs from DataParallel and FSDP
Hands-on: On a Colab GPU, time 100 training steps of your ResNet in fp32, then with autocast/bfloat16, then with torch.compile added. Use torch.profiler to show where the time goes in each run.
You can write a complete train/eval loop with DataLoader, AMP and checkpointing from memory
You can predict tensor shapes, dtypes and devices through a sequence of operations without running code
You can explain what DDP, torch.compile and autocast each do and when they would not help
Exam tips
The exam is 120 minutes, online-proctored multiple choice, and the $250 fee includes one retake. Eligibility lasts 12 months after purchase.
The PyTorch docs moved from pytorch.org/docs to docs.pytorch.org. Use the current docs, because older tutorials use deprecated APIs such as torch.cuda.amp.autocast.
Start with the provider's official exam guide and free training, then use practice exams to find your weak domains. We never link to exam dumps, which break exam agreements and can get you decertified.