Créer des étiquettes en one‑hot
Le codage one‑hot transforme une seule étiquette entière en un vecteur de N éléments, où N est le nombre de classes. Ce vecteur contient des zéros et un seul un à la position correspondante.
Dans cet exercice, vous allez d'abord créer manuellement un vecteur one‑hot pour y, puis utiliser PyTorch pour simplifier le processus. Votre jeu de données comporte trois classes (0, 1, 2).
numpy (np), torch.nn.functional (F) et torch sont déjà importés pour vous.
Cette activité fait partie du cours
Introduction au Deep Learning avec PyTorch
Instructions de l’exercice
- Codez manuellement en one‑hot l'étiquette réelle
yà l'aide du tableau NumPy fourni et enregistrez le résultat dansone_hot_numpy. - Utilisez PyTorch pour coder
yen one‑hot et enregistrez le résultat dansone_hot_pytorch.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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)