始める無料で始める

one-hot エンコードされたラベルを作成する

One-hot エンコーディングは、単一の整数ラベルを要素数 N(N はクラス数)のベクトルに変換します。このベクトルは 0 を並べ、正しい位置にだけ 1 が入ります。

この演習では、まず y の one-hot ベクトルを手動で作成し、その後 PyTorch を使って処理を簡単にします。データセットのクラスは 3 つ(0、1、2)です。

numpynp)、torch.nn.functionalF)、および torch はすでにインポートされています。

この演習はコースの一部です

PyTorchで学ぶIntroduction to Deep Learning

コースを見る

演習の手順

  • 提供された NumPy 配列を使って、正解ラベル y を手動で one-hot エンコードし、one_hot_numpy として保存します。
  • PyTorch を使って y を one-hot エンコードし、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)
コードを編集して実行