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:
- Camicie
- Vestiti
- 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
Istruzioni dell'esercizio
- Inizializza la variabile
ohe_labelsper contenere l'array one-hot encoded. - Usa
np.where()per trovare la posizione della categoria dell'elemento a ogni iterazione incategories. - Assegna un
1nella 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[____] = ____