df_for_prediction
per effettuare una richiesta di inferenza. La richiesta di inferenza richiama il modello per prevedere quale specie di
pinguino è rappresentata dalle caratteristiche del pinguino in ogni riga di
df_for_prediction
.
Prepara i dati di test di inferenza
Prima di poter utilizzare i dati di test per creare inferenze, rimuovi la colonna species
. Poiché la specie di pinguino è ciò che stai prevedendo, non può essere
inclusa nei dati di test utilizzati per creare un'inferenza. Dopo aver rimosso la colonna
species
, converti i dati in un elenco Python perché è ciò che il metodo
predict
accetta come input. Esegui il seguente codice per convertire i dati
in un elenco Python:
# Remove the species column
df_for_prediction.pop(LABEL_COLUMN)
# Convert data to a Python list
test_data_list = df_for_prediction.values.tolist()
(Facoltativo) Visualizzare i dati di test
Per aiutarti a comprendere i dati di test, puoi eseguire la seguente riga di codice per visualizzarli:
test_data_list
In ogni riga, i rispettivi valori in ciascuna delle sei colonne si riferiscono alle seguenti caratteristiche di un pinguino:
Colonna | Caratteristica del pinguino |
---|---|
0 | island : l'isola in cui si trova una specie di pinguini. La mappatura dei valori dell'isola è 0 per Dream , 1 per Biscoe e 2 per Torgersen . |
1 | culmen_length_mm : la lunghezza della cresta lungo la parte superiore del becco di un pinguino. |
2 | culmen_depth_mm : l'altezza del becco di un pinguino. |
3 | flipper_length_mm - La lunghezza dell'ala a forma di pinna di un pinguino. |
4 | body_mass_g : la massa del corpo di una penna. |
5 | sex : il sesso del pinguino. 0 è FEMALE e 1 è MALE . |
Inviare la richiesta di inferenza
Per creare una richiesta di inferenza, trasmetti l'elenco Python dei dati di test che hai creato al metodo predict
di endpoint
.
Il metodo predict
valuta le caratteristiche di ogni riga e le utilizza per
prevedere il tipo di pinguino che rappresentano. Esegui il seguente codice per creare
le tue inferenze. Le inferenze restituite contengono un elenco di righe, dove ogni
riga ha tre colonne (Pinguino di Adelia (Pygoscelis adeliae) (colonna 1),
Pinguino del genere Pygoscelis (Pygoscelis antarctica) (colonna 2) o Pinguino papua
(Pygoscelis papua) (colonna 3)).
# Get your inferences.
predictions = endpoint.predict(instances=test_data_list)
# View the inferences
predictions.predictions
Ogni colonna di una riga contiene un valore e maggiore è il valore, maggiore è la
confidenza che la specie di pinguino rappresentata da quella colonna sia un'inferenza
corretta. Ad esempio, nella seguente riga di output dell'inferenza di esempio,
il modello utilizza le caratteristiche della riga di dati di esempio sui pinguini per prevedere
che il pinguino appartiene molto probabilmente alla specie Pinguino di Adelia (Pygoscelis adeliae). Questo perché il valore più alto, 0.732703805
, si trova nella prima
colonna.
[0.732703805, 0.233752429, 0.0335437432]
Nel codice seguente, il metodo NumPy argmax
restituisce la colonna per ogni riga
che contiene il valore più alto. Il valore più alto corrisponde all'inferenza
più probabilmente corretta. La seconda riga mostra l'array di inferenze.
# Get the inference for each set of input data.
species_predictions = np.argmax(predictions.predictions, axis=1)
# View the best inference for the penguin characteristics in each row.
species_predictions
Ogni risultato nell'array species_predictions
prevede a quale specie di pinguino
corrispondono i valori nella riga corrispondente dei dati di test. Ad esempio,
il primo valore è 0
, che corrisponde alla specie Pinguino di Adelia (Pygoscelis adeliae). Ciò significa che il modello prevede che la specie di un pinguino con le caratteristiche nella prima riga dei dati di test sia pinguino di Adelia
(Pygoscelis adeliae).
Esegui la pulizia delle risorse
Ora che hai finito, puoi continuare a utilizzare il notebook per esplorare e scoprire di più sulle risorse che hai creato e su come funzionano.
Eliminare le risorse
Quando è tutto pronto, ti consigliamo di eliminare le risorse Google Cloud che hai creato durante questo tutorial per evitare addebiti non necessari. Esistono due modi per eliminare le risorse:
Elimina il progetto, il che comporta anche l'eliminazione di tutte le risorse associate. Per saperne di più, consulta la sezione Chiusura (eliminazione) dei progetti.
Esegui il codice che elimina il job di addestramento (un oggetto
CustomTrainingJob
), il modello (un oggettoModel
), l'endpoint (un oggettoEndpoint
) e il bucket Cloud Storage. Questa opzione conserva il progetto e qualsiasi altra risorsa che potresti aver creato e che non elimini esplicitamente con il codice.Devi annullare il deployment del modello prima di poterlo eliminare passando
force=True
al metodoendpoint.delete
.Per conservare il progetto ed eliminare solo le risorse create durante questo tutorial, esegui il seguente codice nel notebook:
import os
# Delete the training job
job.delete()
# Delete the endpoint and undeploy the model from it
endpoint.delete(force=True)
# Delete the model
model.delete()
# Delete the storage bucket and its contents
bucket.delete(force=True)
Elimina l'istanza Vertex AI Workbench
Puoi conservare l'istanza Vertex AI Workbench per utilizzarla in futuro. Se lo tieni, assicurati di conoscere il suo costo. Per ulteriori informazioni, consulta i prezzi di Vertex AI Workbench.
Se vuoi eliminare l'istanza di Vertex AI Workbench, segui questi passaggi:
Nella console Google Cloud , vai alla pagina Istanze di Vertex AI Workbench.
Seleziona l'istanza di Vertex AI Workbench.
Nel menu in alto, fai clic su
Elimina.Nella finestra di dialogo di conferma Elimina istanza, fai clic su Conferma. Il completamento dell'eliminazione richiede alcuni minuti.