Tạo nhãn one-hot
One-hot encoding chuyển một nhãn nguyên đơn thành một vector có N phần tử, trong đó N là số lượng lớp. Vector này chứa các số không và một số một ở vị trí tương ứng.
Trong bài tập này, bạn sẽ tự tạo một vector one-hot cho y, sau đó dùng PyTorch để đơn giản hóa quy trình. Tập dữ liệu của bạn có ba lớp (0, 1, 2).
numpy (np), torch.nn.functional (F), và torch đã được nhập sẵn cho bạn.
Bài tập này là một phần của khóa học
Nhập môn Deep Learning với PyTorch
Hướng dẫn bài tập
- Tự mã hóa one-hot nhãn đúng
ybằng mảng NumPy đã cho và lưu thànhone_hot_numpy. - Dùng PyTorch để mã hóa one-hot
yvà lưu thànhone_hot_pytorch.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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)