始める無料で始める

画像を表現するためのワンホットエンコーディングの使用

Neural networks は、データセット内のクラスのラベルがワンホットエンコーディングで整理されていることを前提とします。つまり、配列の各行には、固有のラベルに対応する列だけが 1 で、他のすべての列は 0 です。

fashion データセットには次の 3 つのカテゴリがあります。

  1. Shirts
  2. Dresses
  3. Shoes

この演習では、これらのラベルの小さなサンプルに対してワンホットエンコーディングを作成します。

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

Keras で学ぶ画像モデリング

コースを見る

演習の手順

  • ワンホットエンコード済み配列を保持する変数 ohe_labels を初期化します。
  • 各反復で、categories 内のアイテムのカテゴリの位置を見つけるために np.where() を使用します。
  • 毎回、該当する行と列の組み合わせに 1 を代入します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# The number of image categories
n_categories = 3

# The unique values of categories in the data
categories = np.array(["shirt", "dress", "shoe"])

# Initialize ohe_labels as all zeros
ohe_labels = ____((len(labels), n_categories))

# Loop over the labels
for ii in range(len(labels)):
    # Find the location of this label in the categories variable
    jj = np.where(___)
    # Set the corresponding zero to one
    ohe_labels[____] = ____
コードを編集して実行