Створення міток у форматі one-hot
One-hot кодування перетворює один цілий індекс класу на вектор з N елементів, де N — це кількість класів. У цьому векторі всі елементи нулі, а в правильній позиції стоїть одиниця.
У цій вправі ви вручну створите one-hot вектор для y, а потім скористаєтеся PyTorch, щоб спростити процес. У вашому наборі даних три класи (0, 1, 2).
numpy (np), torch.nn.functional (F) і torch уже імпортовано.
Ця вправа є частиною курсу
Вступ до Deep Learning з PyTorch
Інструкції до вправи
- Закодуйте вручну мітку-істину
yу форматі one-hot за допомогою наданого масиву NumPy та збережіть якone_hot_numpy. - Використайте PyTorch, щоб виконати one-hot кодування
y, і збережіть результат якone_hot_pytorch.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
y = 1
num_classes = 3
# Create the one-hot encoded vector using NumPy
one_hot_numpy = np.array([____, ____, ____])
# Create the one-hot encoded vector using PyTorch
one_hot_pytorch = F.____(torch.tensor(y), num_classes=____)
print("One-hot vector using NumPy:", one_hot_numpy)
print("One-hot vector using PyTorch:", one_hot_pytorch)