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

Знакомство с LightningModule

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

Библиотеки torch и lightning.pytorch (импортированная как pl) уже загружены для вас.

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

Масштабируемые модели ИИ с PyTorch Lightning

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

Инструкции к упражнению

  • Определите класс LightModel, который наследуется от pl.LightningModule.
  • Определите линейный слой для преобразования входных данных, предполагая 16 входных признаков и 10 выходных классов.

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

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

# Define the model class
class LightModel(____):
  	# Define a linear layer to transform your input
    def __init__(self):
        super().__init__()
        self.layer = ____
    def forward(self, x):
        return self.layer(x)
    def training_step(self, batch, batch_idx):
        x, y = batch
        logits = self(x)
        loss = torch.nn.functional.cross_entropy(logits, y)
        return loss
Редактировать и запускать код