Способ, как подойти к созданию ИИ Python сделать это понятным и не скучным c Pytest.
Способ, как подойти к созданию ИИ Python сделать это понятным и не скучным c Pytest.
Пример очеловечивания кода. import torch import torch.nn as nn from typing import List, Union, Optional # Определяем устройство device: torch.device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') print(f"Используемое устройство: {device}") # Определяем свой класс, наследующий nn.Module class MyModel(nn.Module): def __init__(self) -﹥ None: # ВАЖНО: сначала вызываем конструктор родителя super().__init__() # 1. Вызов конструктора родителя # 2. Обучаемый параметр (вес) # Используем nn.Parameter, чтобы тензор регистрировался как параметр self.weights: nn.Parameter = nn.Parameter(torch.tensor([2.0, 3.0])) def forward(self, x: torch.Tensor) -﹥ torch.Tensor: print("Вызван forward!") return x * self.weights # 3. Простая операция # Создаём модель и переносим на используемое устройство. # Перемещаем на GPU (если есть) (на указанное устройство, # после перемещения все вычисления будут происходить на выбранном устройстве) model: MyModel = MyModel().to(device) # Смотрим, что зарегистрировалось print(list(model.parameters())) # Выведет: [Parameter containing: tensor([2., 3.], requires_grad=True)] # Создаём входные данные на том же устройстве x: torch.Tensor = torch.tensor([1.0, 4.0]).to(device) # Создаётся обычный тензор # Здесь происходит вызов модели, который внутри: # 1. Вызывает метод __call__ (унаследованный от nn.Module). # 2. __call__ выполняет служебные действия (хуки, переключение режимов) и затем вызывает ваш метод forward. out: torch.Tensor = model(x) print(out) # tensor([2., 12.]) Выберите свой темп обучения: Для новичков фундамент и уверенность Для практиков глубина и скорость Для профи максимальная интенсивность и поддержка https://spb-tut.ru/pricing/ Как создать искусственный интеллект на Python