НачатьНачать бесплатно

Построение свёрточных сетей

Вы работаете в команде, разрабатывающей систему прогнозирования погоды. В рамках этой системы в различных точках будут установлены камеры для съёмки неба. Ваша задача — создать модель для классификации типов облаков на этих снимках: это поможет отслеживать приближающиеся погодные фронты.

Вы решаете построить свёрточный классификатор изображений. Модель будет состоять из двух частей:

  • Экстрактор признаков, который учится извлекать вектор признаков из входного изображения,
  • Классификатор, который предсказывает класс изображения на основе извлечённых признаков.

torch и torch.nn as nn уже импортированы, так что приступим!

Это упражнение является частью курса

Глубокое обучение на PyTorch: средний уровень

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

class Net(nn.Module):
    def __init__(self, num_classes):
        super().__init__()
        # Define feature extractor
        self.feature_extractor = nn.Sequential(
            nn.Conv2d(3, 32, kernel_size=3, padding=1),
            nn.ELU(),
            nn.MaxPool2d(kernel_size=2),
            ____,
            ____,
            ____,
            ____,
        )
Редактировать и запускать код