Месяц 3 — Сборник упражнений
🟢 Easy
PyTorch Basics
- Создайте 5 tensor’ов разной shape и выведите атрибуты shape, dtype, device.
- Вычислите gradient’ы простых функций через
requires_grad=True. - Создайте subclass
nn.Module— input → 3 hidden → output.
Training
- MLP на MNIST с 95%+ accuracy.
- Сравните Optimizers: SGD, SGD+momentum, Adam, AdamW.
- Посмотрите эффект изменения learning rate на 1e-1, 1e-3, 1e-5.
CNN
- Train SimpleCNN на CIFAR-10 (5 epoch).
- Загрузите pretrained ResNet-18, classifier на ImageNet изображениях.
- Создайте конвейер augmentation через
torchvision.transforms.
RNN/LSTM
- Сравните
nn.RNN,nn.LSTM,nn.GRUна одной задаче. - Next-step forecasting для Sin function.
- Создайте Bidirectional LSTM, разница с обычной LSTM.
🟡 Medium
Production-ready training
- Full training pipeline: Mixed precision + early stopping + checkpoint + W&B logging.
- Hyperparameter tuning: для PyTorch модели через Optuna.
- Multi-GPU(с Colab Pro или Kaggle):
nn.DataParallel.
Transfer learning
- Flower classification: 102 вида цветов — pretrained EfficientNet, 92%+ accuracy.
- Custom domain: соберите свой набор изображений (с камеры телефона), 5 классов, по 50 изображений в каждом — применить transfer learning.
- Few-shot learning: по 5 изображений на класс, добиться 90%+ accuracy.
Time series
- Real stock data(yfinance): LSTM + sliding window forecasting.
- Multivariate: LSTM с несколькими признаками (price, volume, indicators).
- Сравнение Prophet vs LSTM.
Text
- IMDB sentiment: с LSTM 85%+ accuracy.
- News classification: 4-5 категорий (AG News).
- Char-level language model: на Shakespeare или узбекском тексте.
🔴 Hard
1. Production ML API
- Image classification (EfficientNet) FastAPI
- Multi-stage Dockerfile (build → runtime)
- Async batching (оптимизация времени и GPU)
- Healthcheck, metrics endpoint
- Load test (через Locust): оптимизация, выдерживающая 100 req/s
2. Distributed training
- Kaggle Notebooks Pro или Colab Pro
- Через
DistributedDataParallelна 2 GPU - Mixed precision + gradient accumulation
- Сравнение времени training с single GPU
3. Model interpretation service
- Image classification через ResNet
- Endpoint, возвращающий также Grad-CAM
- Streamlit или React UI
4. End-to-end CV pipeline
- Data: сбор изображений из web (Selenium или API)
- Labelling (Label Studio или вручную)
- Training (PyTorch + W&B)
- Deploying (FastAPI + Docker + Nginx)
- Monitoring (Prometheus + Grafana)
Мини-проекты
Мини-проект 1: Plant Disease Detector
- Dataset: PlantVillage (Kaggle)
- 95%+ accuracy через transfer learning
- Mobile-friendly (TFLite или PyTorch Mobile)
- Streamlit demo
Мини-проект 2: Real-time Pose Estimation
- MediaPipe или MMPose
- Webcam streaming
- WebSocket + FastAPI
Мини-проект 3: Music Genre Classifier
- GTZAN dataset
- Mel-spectrogram + CNN
- FastAPI: audio upload → genre
Мини-проект 4: Time Series Anomaly Detection
- Server metrics (CPU, RAM)
- LSTM autoencoder
- Real-time alert system
Quiz
Fundamentals
- Как работает Backpropagation (chain rule)?
- Что такое vanishing gradient и как он решается?
- Связь между batch size и learning rate?
- Why ReLU > Sigmoid (в современных NN)?
- Что делает Dropout при test?
PyTorch
- Разница между
model.eval()иtorch.no_grad()? - Что сохраняет
state_dict()? - Влияние
num_workersиpin_memoryвDataLoader? - Когда выгодна Mixed precision (AMP)?
- Плюсы/минусы export TorchScript и ONNX?
CNN
- Почему 3x3 kernel так широко распространён?
- Когда какой использовать Max или Average pooling?
- Зачем используется skip connection в ResNet?
- Что такое compound scaling в EfficientNet?
- Что такое receptive field и как он считается?
RNN
- Разница между RNN и Feedforward NN?
- Gate’ы LSTM и их функции?
- Когда полезна Bidirectional RNN?
- Why gradient clipping is critical for RNN?
- Причины перехода от RNN к Transformer?
✅ Чек-лист конца Месяца 3
- Написал простую NN на чистом NumPy
-
nn.Moduleи training loop в PyTorch - Знакомство с TensorFlow/Keras
- Image classification через CNN (CIFAR-10 или похожий)
- Transfer learning (с pretrained моделью)
- Sequence task (time series или text) через RNN/LSTM
- Experiment tracking через W&B или TensorBoard
- Serving DL модели в FastAPI (на CPU или GPU)
- Capstone проект на GitHub
- Пост в LinkedIn
Поздравляю! Переходим к Месяц 4 — Computer Vision + NLP.