Создание унитарно закодированных меток
Унитарное кодирование (one-hot encoding) преобразует целочисленную метку в вектор из N элементов, где N — количество классов. Этот вектор содержит нули и единицу на нужной позиции.
В этом упражнении вы вручную создадите унитарно закодированный вектор для y, а затем упростите этот процесс с помощью PyTorch. Набор данных содержит три класса (0, 1, 2).
numpy (np), torch.nn.functional (F) и torch уже импортированы.
Это упражнение является частью курса
Введение в глубокое обучение с PyTorch
Инструкции к упражнению
- Вручную выполните унитарное кодирование истинной метки
yс помощью предоставленного массива NumPy и сохраните результат в переменнуюone_hot_numpy. - Выполните унитарное кодирование
yс помощью PyTorch и сохраните результат в переменную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)