IniziaInizia gratis

Usare la one-hot encoding per rappresentare le immagini

Le reti neurali si aspettano che le etichette delle classi in un insieme di dati siano organizzate con una one-hot encoding: ogni riga dell'array contiene zeri in tutte le colonne, tranne nella colonna corrispondente all'etichetta specifica, che è impostata a 1.

Il fashion dataset contiene tre categorie:

  1. Camicie
  2. Vestiti
  3. Scarpe

In questo esercizio creerai una one-hot encoding di un piccolo campione di queste etichette.

Questo esercizio fa parte del corso

Image Modeling with Keras

Visualizza il corso

Istruzioni dell'esercizio

  • Inizializza la variabile ohe_labels per contenere l'array one-hot encoded.
  • Usa np.where() per trovare la posizione della categoria dell'elemento a ogni iterazione in categories.
  • Assegna un 1 nella corretta combinazione riga/colonna a ogni iterazione.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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[____] = ____
Modifica ed esegui il codice