Guida per nuovi utenti di AutoML

Introduzione

Questa guida per nuovi utenti è un'introduzione ad AutoML. Per comprendere le chiavi le differenze tra AutoML e l'addestramento personalizzato: Scelta di un metodo di addestramento.

Ecco un possibile scenario:

  • Sei l'allenatore di una squadra di calcio.
  • Ti trovi nel reparto marketing di un rivenditore digitale.
  • Stai lavorando a un progetto architetturale che identifica i tipi di edifici.
  • La tua attività ha un modulo di contatto sul suo sito web.

Selezionare manualmente video, immagini, testi e tabelle è noioso e e richiede molto tempo. Non sarebbe più semplice insegnare a un computer a a identificare e segnalare i contenuti?

Immagine

Collabori con un board di conservazione dell'architettura che tenta di identificare quartieri con uno stile architettonico coerente nella tua città. Hai centinaia di migliaia di istantanee di case da vagliare. Tuttavia, è noiosa e soggetta a errori quando cercando di classificare manualmente tutte queste immagini. Uno stagista ha etichettato come alcune centinaia di persone mesi fa, ma nessuno ha esaminato i dati. Sarebbe molto utile se potessi soltanto insegnare il tuo computer per fare la revisione al posto tuo.
presentazione

Tabulare

Lavori nel reparto marketing di un rivenditore digitale. Tu e il tuo team siete creando un programma email personalizzato basato sui clienti tipo. Hai creato gli utenti tipo e le email di marketing sono pronte. Ora devi creare un sistema che accoppia i clienti in ciascun utente tipo in base alle preferenze di vendita al dettaglio e al comportamento di spesa, anche quando è nuovo clienti. Per massimizzare il coinvolgimento dei clienti, vuoi anche prevedere le loro abitudini di spesa in modo da possono ottimizzare quando inviare loro le email.
Introduzione alle tabelle

In qualità di rivenditore digitale, disponi di dati sui tuoi clienti e sugli acquisti che hanno effettuato. E i nuovi clienti? Gli approcci tradizionali possono calcolare questi valori per clienti con una lunga cronologia di acquisto, ma non hanno risultati soddisfacenti con clienti con una cronologia e i dati di Google Cloud. E se potessi creare un sistema per prevedere questi valori e aumentare la velocità di offri programmi di marketing personalizzati a tutti i tuoi clienti?

Fortunatamente, il machine learning e Vertex AI sono ben posizionati per risolvere questi problemi.

Testo

La tua attività ha un modulo di contatto sul suo sito web. Ogni giorno ricevi molti messaggi da il modulo, molti dei quali sono in qualche modo fruibili. Siccome tutti si uniscono, è facile rimanere indietro nel trattarli. Dipendenti diversi gestiscono tipi di messaggi diversi. Sarebbe bello se un sistema automatizzato potesse classificarli in modo che la persona giusta li veda i commenti giusti.
Introduzione

Ti serve un sistema che esamini i commenti e stabilisca se rappresentano reclami, elogiare i servizi passati, includere un tentativo di ottenere maggiori informazioni sulla tua attività, una richiesta pianificare un appuntamento o è un tentativo di stabilire una relazione.

Video

Hai a disposizione una vasta raccolta di video di giochi da utilizzare per l'analisi. Ma ci sono centinaia di ore di video da esaminare. Guardare ogni video e contrassegnare manualmente i segmenti per evidenziare ogni azione è noioso e che richiede molto tempo. E devi ripetere questo lavoro ogni stagione. Ora immagina un computer in grado di identificare e segnalare automaticamente queste azioni ogni volta che vengono video.

Di seguito sono riportati alcuni scenari oggettivi specifici.

  • Riconoscimento dell'azione: scopri azioni come segnare un gol, provocare un fallo o fare una rigore. Utile ai coach per studiare i punti di forza e di debolezza del team.
    gol, fallo, azioni su rigore
  • Classificazione: classifica ogni video ripreso in base a tempo intermedio, visualizzazione di gioco, pubblico o coach. Utile agli coach per sfogliare solo le riprese dei video che ti interessano.
  • Monitoraggio di oggetti: monitora il pallone o i giocatori. Utile ai coach per ottenere giocatori come la mappa termica sul campo e la percentuale di passaggi riusciti.

Questa guida illustra il funzionamento di Vertex AI per Set di dati AutoML e illustra i tipi di problemi riscontrati in Vertex AI è progettato per risolvere.

Una nota sull'equità

Google si impegna a fare progressi per seguire pratiche responsabili per l'IA. Per raggiungere questo obiettivo, i nostri prodotti di ML, tra cui AutoML, sono progettati su principi fondamentali come equità e il machine learning incentrato sulle persone. Per ulteriori informazioni sulle best practice per mitigare i bias durante la creazione il tuo sistema ML, consulta la guida sul machine learning inclusivo - AutoML

Perché Vertex AI è lo strumento giusto per questo problema?

Per la programmazione classica, il programmatore deve specificare istruzioni da seguire per un computer. Ma consideriamo il caso d'uso di identificare di azioni specifiche nei giochi di calcio. Ci sono così tante variazioni di colore, angolazione risoluzione e un'illuminazione che richiederebbe la programmazione di troppe regole una macchina per prendere la decisione giusta. È difficile immaginare dove vorresti addirittura iniziare. Oppure, nei casi in cui i commenti dei clienti, che utilizzano un'espressione vocabolario e struttura, sono troppo diversificati per essere intercettati da un semplice insieme le regole del caso. Se provassi a creare filtri manuali, ti accorgeresti subito che in grado di classificare la maggior parte dei commenti dei clienti. È necessaria una in grado di generalizzare una varietà di commenti. In uno scenario in cui una sequenza di regole specifiche è destinata a espandersi in modo esponenziale, di un sistema in grado di apprendere dagli esempi.

Fortunatamente, il machine learning è in grado di risolvere questi problemi.

Come funziona Vertex AI?

rappresentazione grafica di una semplice rete neurale Vertex AI prevede attività di apprendimento supervisionato per raggiungere un risultato scelto. Le specifiche dell'algoritmo e dei metodi di addestramento cambiano in base tipo di dati e caso d'uso. Esistono molte sottocategorie diverse di machine learning, che risolvono problemi diversi e funzionano all'interno di vincoli diversi.



Immagine

Il modello di machine learning viene addestrato, testato e convalidato con immagini di esempio che sono annotate con etichette per la classificazione o con etichette e riquadri di delimitazione per il rilevamento di oggetti. Utilizzando l'apprendimento supervisionato, puoi addestrare un modello a riconoscere modelli e che ti interessano nelle immagini.

Tabulare

Viene addestrato un modello di machine learning con dati di esempio. Vertex AI utilizza dati tabulari (strutturati) per addestrare un modello di machine learning al fine di fare previsioni sulla base di nuovi dati. Una colonna del set di dati, chiamata target, è a ciò che il modello imparerà a prevedere. Alcune delle altre colonne di dati sono gli input (chiamati caratteristiche) da cui il modello apprenderà i pattern. Puoi usano le stesse caratteristiche di input per creare più tipi di modelli semplicemente cambiando la colonna target e le opzioni di addestramento. Dall'esempio dell'email marketing, puoi creare modelli con le stesse caratteristiche di input, ma con caratteristiche previsioni target. Un modello potrebbe prevedere l'utente tipo di un cliente (una categorico), un altro modello potrebbe prevedere la spesa mensile (una target numerico) e un'altra potrebbe prevedere la domanda giornaliera dei tuoi prodotti per i prossimi tre mesi (serie di target numerici).
come funziona la tabella AutoML

Testo

Vertex AI ti consente di eseguire un apprendimento supervisionato. Ciò comporta l'addestramento a un computer per riconoscere pattern a partire da dati etichettati. Grazie all'apprendimento supervisionato, puoi addestrare AutoML per riconoscere i contenuti che ti interessano nel testo.

Video

Il modello di machine learning viene addestrato, testato e convalidato con i video che hai già etichettato. Con un modello addestrato, puoi quindi inserire nuovi video nel modello, che a sua volta genera video. segmenti con etichette. Un segmento video definisce l'offset temporale dell'ora di inizio e di fine all'interno di un video. La può essere l'intero video, un segmento di tempo definito dall'utente, l'inquadratura video rilevata automaticamente o semplicemente un timestamp che indica quando l'ora di inizio coincide con l'ora di fine. Un'etichetta è una "risposta" prevista a partire dal modello. Ad esempio, nei casi d'uso sul calcio citati in precedenza, per ogni nuovo modello video, a seconda del tipo di modello:

  • un modello addestrato di riconoscimento delle azioni produce compensazioni temporali del video con etichette descrizioni di azioni come "gol", "fallo personale" e così via.
  • un modello di classificazione addestrato produce segmenti di colpi rilevati automaticamente con etichette definite dall'utente come "visualizzazione gioco", "visualizzazione pubblico".
  • un modello addestrato di tracciamento degli oggetti produce le tracce del pallone da calcio o dei giocatori di delimitazione nei frame in cui appaiono gli oggetti.

Flusso di lavoro di Vertex AI

Vertex AI utilizza un flusso di lavoro di machine learning standard:

  1. Raccogliere i dati: determinare i dati necessari per l'addestramento e i test del modello in base al risultato che vuoi ottenere.
  2. Prepara i dati: assicurati che siano formattati correttamente ed etichettati.
  3. Addestra: imposta i parametri e crea il modello.
  4. Valutazione: esamina le metriche del modello.
  5. Deployment e previsione: rendi il tuo modello disponibile per l'uso.

Ma prima di iniziare a raccogliere i dati, devi pensare che stai cercando di risolvere. Questo indicherà i tuoi requisiti relativi ai dati.

Preparazione dati

Valuta il tuo caso d'uso

Inizia dal problema: qual è il risultato che vuoi ottenere?

Immagine

Quando raccogli il set di dati, inizia sempre dal tuo caso d'uso. Puoi iniziare con il le seguenti domande:

  • Qual è il risultato che stai cercando di ottenere?
  • Quali tipi di categorie o oggetti dovresti riconoscere per ottenere questo risultato?
  • Le persone possono riconoscere queste categorie? Sebbene Vertex AI sia in grado di gestire una maggiore entità delle categorie rispetto a quella che gli esseri umani possono ricordare e assegnare in qualsiasi momento, se se un essere umano non è in grado di riconoscere una categoria specifica, anche Vertex AI avrà difficoltà.
  • Quali tipi di esempi riflettono meglio il tipo e l'intervallo di dati che il sistema vedrà e cercherà di classificare?

Tabulare

Che tipo di dati corrisponde alla colonna di destinazione? Quanti dati hai accesso? In base alle tue risposte, Vertex AI crea il modello necessario per risolvere il tuo caso d'uso:

  • Un modello di classificazione binaria prevede un risultato binario (uno due classi). Da usare per domande sì o no, ad esempio per prevedere se un cliente acquisterebbe o meno un abbonamento. Tutto il resto è uguale, un problema di classificazione binaria richiede meno dati di un altro modello di testo.
  • Un modello di classificazione multi-classe prevede una classe da tre o più classi discrete. Usa questa opzione per assegnare una categoria. Per il retail Ad esempio, potresti creare un modello di classificazione multiclasse per segmentare in diversi utenti tipo.
  • Un modello di previsione prevede una sequenza di valori. Ad esempio: in qualità di rivenditore, potresti voler prevedere la domanda giornaliera dei tuoi prodotti per i prossimi tre mesi in modo da poter stoccare il prodotto in modo appropriato gli inventari in anticipo.
  • Un modello di regressione prevede un valore continuo. Per il retail Ad esempio, potresti creare un modello di regressione per prevedere quanto spenderà il mese prossimo.

Testo

Quando raccogli il set di dati, inizia sempre dal tuo caso d'uso. Puoi iniziare con il le seguenti domande:

  • Quale risultato stai cercando di ottenere?
  • Quali tipi di categorie devi riconoscere per ottenere questo risultato?
  • Le persone possono riconoscere queste categorie? Sebbene Vertex AI possa gestire più categorie rispetto a quelle che gli esseri umani possono ricordare e assegnare in qualsiasi momento, se un essere umano non è in grado di riconoscere una categoria specifica, anche Vertex AI avrà delle difficoltà.
  • Quali tipi di esempi riflettono meglio il tipo e l'intervallo di dati che il sistema classificare?

Video

A seconda del risultato che stai cercando di ottenere, seleziona l'obiettivo del modello appropriato:

  • Per rilevare i momenti di azione in un video, ad esempio per identificare come segnare un gol o causare un fallo. Per fare un calcio di rigore, usa l'obiettivo del riconoscimento dell'azione.
  • Per classificare le riprese televisive nelle seguenti categorie: spot pubblicitari, notizie, programmi TV e così via, utilizza l'obiettivo di classificazione.
  • Per individuare e monitorare gli oggetti in un video, utilizza l'obiettivo di monitoraggio degli oggetti.

Consulta Preparazione dei dati video per ulteriori informazioni. informazioni sulle best practice per la preparazione dei set di dati per il riconoscimento, la classificazione e di monitoraggio degli oggetti.

Raccogli i tuoi dati

Dopo aver stabilito il caso d'uso, devi raccogliere i dati che consente di creare il modello desiderato.

Immagine

raccogliere dati sufficienti Dopo aver stabilito di quali dati hai bisogno, devi trovare un modo per ottenerli. Puoi per iniziare prendendo in considerazione tutti i dati raccolti dalla tua organizzazione. Potresti scoprire stanno già raccogliendo i dati pertinenti necessari per addestrare un modello. Se non disponi di questi dati, puoi ottenerlo manualmente o affidarlo a un fornitore di terze parti.

Includi un numero sufficiente di esempi etichettati in ogni categoria

includi una quantità sufficiente di dati Il minimo indispensabile richiesto da Vertex AI Training è di 100 esempi di immagini per categoria/etichetta per la classificazione. La probabilità di riconoscere un'etichetta aumenta con il numero di video di alta qualità esempi per ciascuno: in generale, più dati etichettati puoi aggiungere al processo di addestramento, migliore sarà il tuo modello. Scegli come target almeno 1000 esempi per etichetta.

Distribuisci gli esempi equamente tra le categorie

È importante acquisire una quantità quasi simile di esempi di addestramento per ogni categoria. Uniforme se c'è un'abbondanza di dati per un'etichetta, è meglio avere una distribuzione uguale per ciascuna etichetta. Per capire perché, immagina che l'80% delle immagini che usi per creare il tuo modello siano immagini di case unifamiliari in stile moderno. Con una distribuzione così sbilanciata delle etichette, scoprirà che è sicuro sempre dire che una foto fa parte di un casa unifamiliare, invece di uscire con un arto per cercare di prevedere un'etichetta molto meno comune. È come scrivere un test a scelta multipla in cui quasi tutte le risposte corrette sono "C" - a breve il tuo esperto candidato capirà che sa rispondere alla lettera "C" ogni volta senza nemmeno guardare la domanda.
distribuire in modo uniforme

Siamo consapevoli che potrebbe non essere sempre possibile reperire un numero di esempi quasi uguale per ogni etichetta. Potrebbe essere più difficile reperire esempi di alta qualità e imparziali per alcune categorie. In tal caso, puoi seguire questa regola generale, l'etichetta con il numero più basso di gli esempi devono avere almeno il 10% degli esempi poiché l'etichetta con il maggior numero di esempi. Quindi,se l'etichetta più grande ha 10.000 esempi, l'etichetta più piccola dovrebbe averne almeno 1000 esempi.

Acquisisci la variante nello spazio dei problemi

Per motivi simili, assicurati che i tuoi dati catturino la varietà e la diversità dei tuoi nello spazio dei problemi. Più ampia è la selezione a cui il processo di addestramento del modello vede, più generalizza in base a nuovi esempi. Ad esempio, se stai cercando di classificare foto di elettronica di consumo in categorie, maggiore è la varietà di elettronica di consumo a cui il modello è esposto durante l'addestramento, maggiori sono le probabilità che sia in grado di distinguere tra un nuovo modello di tablet, da uno smartphone o da un laptop, anche se non hai mai visto prima questo modello.
Acquisisci variante

Abbina i dati all'output previsto per il modello

associa i dati all'output previsto
Trova immagini che sono visivamente simili a ciò su cui intendi fare previsioni. Se di classificare le immagini delle case scattate tutte durante il nevoso clima invernale, probabilmente ottenere ottime prestazioni da un modello addestrato solo su immagini di case scattate con il sole, anche se li hai contrassegnati con i corsi che ti interessano, perché l'illuminazione e il paesaggio potrebbero diversi abbastanza da influire sulle prestazioni. Idealmente, gli esempi di addestramento sono dati reali estratte dallo stesso set di dati che intendi utilizzare per la classificazione del modello.

Tabulare

set di test Dopo aver definito il caso d'uso, dovrai raccogliere i dati per addestrare il modello. L'origine e la preparazione dei dati sono passaggi fondamentali per la creazione di un modello di machine learning. I dati che hai a disposizione indicano il tipo di problemi che puoi risolvere. Quantità di dati che avete a disposizione? I tuoi dati sono pertinenti alle domande a cui stai cercando di rispondere? Mentre raccolta dei dati, tieni presente le seguenti considerazioni chiave.

Seleziona le funzionalità pertinenti

Una caratteristica è un attributo di input utilizzato per l'addestramento del modello. Le caratteristiche sono il modo in cui il modello identifica per effettuare previsioni, che devono essere pertinenti al problema. Ad esempio, per creare che preveda se una transazione con carta di credito è fraudolenta o meno, dovrai creare un set di dati contenente i dettagli della transazione, come l'acquirente, il venditore, l'importo, la data e l'ora, e gli articoli acquistati. Altre funzionalità utili potrebbero essere le informazioni storiche sull'acquirente e venditore e la frequenza con cui l'articolo acquistato è stato coinvolto in attività fraudolente. Quali altre funzionalità potrebbero pertinente?

Considera il caso d'uso dell'email marketing per la vendita al dettaglio fin dall'introduzione. Ecco alcune funzionalità colonne che potresti richiedere:

  • Elenco degli articoli acquistati (inclusi brand, categorie, prezzi, sconti)
  • Numero di articoli acquistati (ultimo giorno, settimana, mese, anno)
  • Somma di denaro speso (ultimo giorno, settimana, mese, anno)
  • Per ogni articolo, il numero totale di vendite al giorno
  • Per ciascun articolo, il totale disponibile ogni giorno
  • Se stai pubblicando una promozione per un determinato giorno
  • Profilo demografico noto dell'acquirente

Includi dati sufficienti

includi una quantità sufficiente di dati In generale, maggiore è il numero di esempi di addestramento, migliori saranno i risultati. La quantità di esempi i dati richiesti si adattano anche alla complessità del problema che stai cercando di risolvere. Non bisogno di più dati per ottenere un modello di classificazione binaria accurato rispetto a un modello multiclasse perché è meno complicato prevedere una classe da due anziché da molte.

Non esiste una formula perfetta, ma esistono dei minimi consigliati di dati di esempio:

  • Problema di classificazione: 50 righe x le caratteristiche numeriche.
  • Problema di previsione:
    • 5000 righe x il numero di elementi
    • 10 valori univoci nella colonna dell'identificatore della serie temporale x il numero di caratteristiche
  • Problema di regressione: 200 volte il numero di caratteristiche

Acquisisci variante

Il set di dati dovrebbe acquisire la diversità dello spazio dei problemi. Più sono diversi gli esempi che il modello vede durante l'addestramento, più prontamente potrà generalizzare in base a esempi nuovi o meno comuni. Immagina che il tuo modello di vendita al dettaglio sia stato addestrato solo utilizzando i dati di acquisto del periodo invernale. Vuoi è in grado di prevedere correttamente le preferenze di abbigliamento o i comportamenti di acquisto per l'estate?

Testo

raccogliere dati sufficienti Dopo aver stabilito di quali dati avrai bisogno, dovrai trovare un modo per ottenerli. Puoi per iniziare prendendo in considerazione tutti i dati raccolti dalla tua organizzazione. Potresti scoprire stanno già raccogliendo i dati necessari per addestrare un modello. Se non disponi dei dati necessari puoi ottenerlo manualmente o affidarlo a un fornitore di terze parti.

Includi un numero sufficiente di esempi etichettati in ogni categoria

includi una quantità sufficiente di dati La probabilità di riconoscere un'etichetta aumenta con il numero di video di alta qualità esempi per ciascuno: in generale, più dati etichettati puoi aggiungere al processo di addestramento, migliore sarà il tuo modello. Anche il numero di campioni necessari varia in base al grado di e coerenza nei dati che vuoi prevedere e con il livello di accuratezza target. Puoi utilizzare di esempi per set di dati coerenti o per un'accuratezza dell'80% anziché del 97%. Addestra un modello e poi valuta i risultati. Aggiungi altri esempi e addestrarlo di nuovo fino a raggiungere gli obiettivi di accuratezza, il che potrebbe richiedere centinaia o esempi per etichetta. Per ulteriori informazioni sui requisiti e sui consigli relativi ai dati, vedi In preparazione dati per l'addestramento del testo per i modelli AutoML.

Distribuisci gli esempi equamente tra le categorie

È importante acquisire un numero pressoché simile di esempi di addestramento per ogni categoria. Uniforme se c'è un'abbondanza di dati per un'etichetta, è meglio avere una distribuzione uguale per ciascuna etichetta. Per capire perché, immagina che l'80% dei commenti dei clienti utilizzi per creare il tuo modello sono richieste di stima. Con una distribuzione non bilanciata delle etichette, è molto probabile che il modello per sapere che puoi sempre indicare in sicurezza che il commento di un cliente è una richiesta di preventivo, anziché cercando di prevedere un'etichetta molto meno comune. È come scrivere un test a scelta multipla in cui tutte le risposte corrette sono "C" - presto il tuo esperto candidato capirà che può rispondere alla domanda "C" ogni volta senza neanche guardare la domanda.
distribuire in modo uniforme

Potrebbe non essere sempre possibile generare un numero approssimativamente uguale di esempi per ogni dell'etichetta. Potrebbe essere più difficile reperire esempi di alta qualità e imparziali per alcune categorie. In quelle circostanze, l'etichetta con il numero più basso di esempi deve avere almeno il 10% esempi come etichetta con il maggior numero di esempi. Quindi,se l'etichetta più grande ha 10.000 esempi, l'etichetta più piccola dovrebbe avere almeno 1000 esempi.

Acquisisci la variante nello spazio dei problemi

Per motivi simili, cerca di fare in modo che i dati acquisiscano la varietà e la diversità del problema spazio. Quando fornisci un set più ampio di esempi, il modello è più in grado di generalizzare nuovi dati. Supponiamo che tu stia cercando di classificare in argomenti articoli sull'elettronica di consumo. Più i nomi dei brand e le specifiche tecniche che fornisci, più facile sarà per il modello l'argomento di un articolo, anche se l'articolo riguarda un brand che non è nel set di addestramento. Potresti anche prendere in considerazione l'aggiunta di "nessuno_dei_sopra" etichetta per documenti che non corrispondono a nessuna delle etichette definite, per migliorare ulteriormente le prestazioni del modello.
Acquisisci variante

Abbina i dati all'output previsto per il modello

associa i dati all'output previsto
Trova esempi di testo simili a ciò su cui intendi fare previsioni. Se classificare i post sui social media sul soffiatura del vetro, probabilmente le prestazioni di un modello addestrato su siti web informativi sulla soffiatura del vetro, poiché il vocabolario e potrebbe essere diverso. Idealmente, gli esempi di addestramento sono dati reali ricavati dal lo stesso set di dati che intendi utilizzare per classificare.

Video

raccogliere dati sufficienti Dopo aver individuato il caso d'uso, dovrai raccogliere i dati video che ti permetteranno per creare il modello desiderato. I dati raccolti per l'addestramento indicano il tipo di problemi che possono risolvere. Quanti video puoi usare? I video contengono abbastanza esempi per ciò che vuoi? il tuo modello da prevedere? Quando raccogli i dati dei tuoi video, tieni presente le seguenti considerazioni.

Includi un numero sufficiente di video

includi una quantità sufficiente di dati In genere, maggiore è il numero di video di addestramento nel set di dati, migliore sarà il risultato. Il numero di video consigliati si adatta anche alla complessità del problema che stai cercando di risolvere. Per Ad esempio, per la classificazione avrai bisogno di meno dati video per un problema di classificazione binaria (prevedere una classe da due) rispetto a un problema con più etichette (previsione di una o più classi) da molti).

La complessità di ciò che stai cercando di fare determina anche la quantità di dati video che ti servono. Prendi in considerazione il caso d'uso sul calcio per la classificazione, ovvero la creazione di un modello per distinguere piuttosto che addestrare un modello in grado di classificare i vari stili di nuoto. Ad esempio: per distinguere rana, farfalla, dorso e così via, avrai bisogno di più formazione per identificare i diversi stili di nuoto e aiutare il modello a capire come identificare che digitano in modo preciso. Consulta Preparazione dei dati video per ottenere indicazioni su come comprendere le esigenze minime in termini di dati video per il riconoscimento, la classificazione e monitoraggio degli oggetti.

La quantità di dati video richiesta potrebbe essere superiore a quella che hai attualmente. Valuta la possibilità di acquisirne di più tramite un fornitore di terze parti. Ad esempio, puoi acquistare o acquistare altri colibrì video se non ne hai abbastanza per il modello di identificatore delle azioni di gioco.

Distribuisci equamente i video tra le classi

Prova a fornire un numero simile di esempi di addestramento per ogni corso. Ecco perché: immagina che L'80% del set di dati relativo agli allenamenti è costituito da video sul calcio con tiri da goal, ma solo il 20% dei video raffigurano falli personali o calci di rigore. Con una distribuzione di classi così diseguale, il tuo modello ha maggiori probabilità di prevedere che una determinata azione è un obiettivo. È un po' come scrivere una scelta multipla Testa dove l'80% delle risposte corrette è "C": il modello esperto intuisce rapidamente che la lettera "C" è una buona ipotesi la maggior parte delle volte.
distribuire equamente i video

Potrebbe non essere possibile reperire un numero uguale di video per ogni corso. Alta qualità, imparziale esempi può essere difficile per alcune classi. Prova a seguire un rapporto 1:10, se il valore più grande ha 10.000 video, la più piccola dovrebbe averne almeno 1000.

Acquisisci variante

I dati video devono rispecchiare l'eterogeneità dello spazio in cui è presente il problema. Più sono diversi gli esempi che il modello vede durante l'addestramento, più prontamente potrà generalizzare in base a esempi nuovi o meno comuni. Pensa al modello di classificazione delle azioni di calcio: assicurati di includere video con una di inquadrature, di giorno e di notte e di movimenti del giocatore. Esposizione del modello a un la diversità dei dati migliora la capacità del modello di distinguere un'azione dall'altra.

Associa i dati all'output previsto

associa i dati all'output previsto

Trova video di addestramento che sono visivamente simili ai video che prevedi di inserire nel modello per la previsione. Ad esempio, se tutti i tuoi video di formazione vengono girati in inverno o di sera, i modelli di illuminazione e di colore in questi ambienti influiranno sul modello. Se quindi utilizzare questo modello per testare i video realizzati in estate o alla luce del giorno, potresti non ricevere per le previsioni.

Considera questi fattori aggiuntivi: risoluzione video, fotogrammi video al secondo, angolazione videocamera Premessa.


Prepara i dati

Immagine

raccogliere dati sufficienti Dopo aver stabilito quella che fa al caso tuo (la suddivisione manuale o predefinita), puoi aggiungere i dati Vertex AI mediante uno dei seguenti metodi:

  • Puoi importare i dati dal computer o da Cloud Storage in un formato disponibile (Righe in formato CSV o JSON) con il etichette (e riquadri di delimitazione, se necessario) in linea. Per ulteriori informazioni sul formato del file di importazione, consulta Preparare i dati di addestramento. Se vuoi suddividere manualmente il set di dati, puoi specificare le suddivisioni nelle righe CSV o JSON importa il file.
  • Se i tuoi dati non sono stati annotati, puoi caricare immagini senza etichetta e utilizzare nella console Google Cloud per applicare le annotazioni. Puoi gestire le annotazioni in più set di annotazioni per lo stesso insieme di immagini. Ad esempio, per un singolo insieme di immagini puoi avere set di annotazioni con riquadro di delimitazione e informazioni sulle etichette per il rilevamento degli oggetti e esiste anche un altro set di annotazioni con annotazioni sulle etichette per la classificazione.

Tabulare

prepara i dati Dopo aver identificato i dati disponibili, devi assicurarti che siano pronti per l'addestramento. Se i tuoi dati sono parziali o contengono valori mancanti o errati, ciò influisce sulla qualità dei del modello. Prima di iniziare ad addestrare il modello, considera quanto segue. Scopri di più.

Evita la fuga di dati e il disallineamento addestramento/distribuzione

La fuga di dati si verifica quando si utilizzano caratteristiche di input durante l'addestramento informazioni sui il target che stai tentando di prevedere e non disponibile quando il modello viene effettivamente pubblicato. Questo può essere rilevato quando una caratteristica molto correlata alla colonna target viene incluso come una delle caratteristiche di input. Ad esempio, se stai creando un modello per prevedere se un cliente sottoscriverà un abbonamento il mese successivo e uno degli input è un pagamento futuro dell'abbonamento da parte di quel cliente. Ciò può portare a un modello efficace delle prestazioni durante i test, ma non quando ne viene eseguito il deployment in produzione, dalla sottoscrizione futura i dati di pagamento non sono disponibili al momento della pubblicazione.

Il disallineamento addestramento/distribuzione si verifica quando le caratteristiche di input utilizzate durante l'addestramento sono diverse quelle fornite al modello al momento della pubblicazione, determinando una scarsa qualità del modello in produzione. Per Ad esempio, la creazione di un modello per prevedere le temperature orarie, ma l'addestramento con dati contiene le temperature settimanali. Un altro esempio: fornire sempre i voti di uno studente nella dati di addestramento per prevedere l'abbandono degli studenti, ma non fornire queste informazioni al momento della pubblicazione.

La comprensione dei dati di addestramento è importante per prevenire la fuga di dati e disallineamento addestramento/produzione:

  • Prima di utilizzare qualsiasi dato, assicurati di sapere cosa significano i dati e se dovrebbe usarla come caratteristica
  • Controlla la correlazione nella scheda Addestra. Le correlazioni elevate devono essere segnalate per la revisione.
  • Disallineamento addestramento/distribuzione: assicurati di fornire al modello solo caratteristiche di input che sono disponibili nello stesso identico modulo al momento della pubblicazione.

Elimina i dati mancanti, incompleti e incoerenti

È normale che nei dati di esempio manchino valori e non siano precisi. Prenditi il tempo necessario per la revisione, se possibile, migliora la qualità dei dati prima di utilizzarli per l'addestramento. Maggiore è il numero di valori mancanti, meno utili saranno i tuoi dati per l'addestramento di un modello di machine learning.

  • Verifica la presenza di valori mancanti nei dati e correggili se possibile oppure lascia vuoto il valore se se la colonna è impostata per essere nullo. Vertex AI è in grado di gestire i valori mancanti, ma di ottenere risultati ottimali se sono disponibili tutti i valori.
  • Per effettuare previsioni, verifica che l'intervallo tra le righe di addestramento sia coerente. Vertex AI può attribuire valori mancanti, ma di ottenere risultati ottimali se sono disponibili tutte le righe.
  • Pulisci i tuoi dati correggendo o eliminando errori o rumore nei dati. Rendi coerenti i tuoi dati: Controlla l'ortografia, le abbreviazioni e la formattazione.

Analizzare i dati dopo l'importazione

Vertex AI fornisce una panoramica del set di dati dopo l'importazione. Controlla il tuo set di dati importato per assicurarti che ogni colonna abbia il tipo di variabile corretto. Vertex AI il tipo di variabile viene rilevato automaticamente in base ai valori delle colonne, ma è meglio esaminare su ognuno di essi. Dovresti anche controllare il valore null di ogni colonna, che determina se una colonna possono avere valori mancanti o NULL.

Testo

raccogliere dati sufficienti Dopo aver deciso la suddivisione più adatta a te (manuale o predefinita), aggiungere dati in Vertex AI utilizzando uno dei seguenti metodo:

  • Puoi importare i dati dal computer o da Cloud Storage nella Righe CSV o JSON con le etichette incorporate, come specificato in Preparare i dati di addestramento. Se vuoi suddividere manualmente il set di dati, puoi specificare le suddivisioni CSV o JSON Lines.
  • Se i tuoi dati non sono stati etichettati, puoi caricare esempi di testo non etichettati e utilizzare Vertex AI per applicare le etichette.

Video

raccogliere dati sufficienti Dopo aver raccolto i video da includere nel set di dati, devi assicurarti che i video contengono etichette associate a segmenti o riquadri di delimitazione. Per il riconoscimento delle azioni, il segmento video è un timestamp e ai fini della classificazione il segmento può essere una ripresa video, un segmento o l'intero video. Per il monitoraggio di oggetti, le etichette sono associate a riquadri di delimitazione.

Perché i miei video hanno bisogno di riquadri di delimitazione ed etichette?

Per il monitoraggio di oggetti, in che modo un modello Vertex AI impara a identificare i pattern? Ecco a cosa servono i riquadri di delimitazione e le etichette durante l'addestramento. Prendiamo l'esempio del calcio: ogni video di esempio dovrà contenere riquadri di delimitazione intorno agli oggetti che ti interessa rilevare. Queste caselle hanno anche bisogno di etichette come "persona", e "palla", assegnato a che li rappresentano. In caso contrario, il modello non saprà cosa cercare. Riquadri e l'assegnazione di etichette ai video di esempio può richiedere tempo.

Se i tuoi dati non sono ancora stati etichettati, puoi anche caricare i video senza etichetta e utilizzare Console Google Cloud per applicare riquadri di delimitazione ed etichette. Per ulteriori informazioni, consulta Etichettatura dei dati utilizzando la console Google Cloud.

Addestramento del modello

Immagine

Valuta in che modo Vertex AI utilizza il tuo set di dati per creare un modello personalizzato

Il set di dati contiene set di addestramento, convalida e test. Se non specifichi le suddivisioni (vedi Preparare i dati), Vertex AI utilizza automaticamente l'80% delle immagini per l'addestramento. 10% per la convalida e il 10% per i test.
set di test di convalida dell'addestramento

Set di addestramento

set di addestramento La maggior parte dei dati dovrebbe essere presente nel set di addestramento. Questi sono i dati che il modello "vede" durante l'addestramento: viene utilizzato per apprendere i parametri del modello, ossia i pesi e connessioni tra i nodi della rete neurale.

Set di convalida

set di convalida Il set di convalida, a volte chiamato anche "dev" viene utilizzato anche durante il processo di addestramento. Dopo che il framework di apprendimento del modello ha incorporato i dati di addestramento durante ogni iterazione di addestramento del modello, utilizza le prestazioni del modello sul set di convalida per gli iperparametri, che sono variabili che specificano la struttura del modello. Se hai provato a utilizzare per ottimizzare gli iperparametri, è molto probabile che il modello finirebbe per concentrarsi eccessivamente dati di addestramento e avere difficoltà a generalizzare in base a esempi che non corrispondono esattamente. L'utilizzo di un set di dati nuovo per ottimizzare la struttura del modello consente di generalizzare il modello meglio.

Set di test

set di test Il set di test non è coinvolto in nessun modo nel processo di addestramento. Una volta che il modello ha completato per l'addestramento completo, usiamo il set di test come sfida completamente nuova per il modello. La delle prestazioni del modello sul set di test ha lo scopo di darvi un'idea abbastanza precisa di come del modello si baserà su dati reali.

Suddivisione manuale

suddivisione manuale Puoi anche suddividere il set di dati autonomamente. La suddivisione manuale dei dati è una buona scelta quando vuoi esercitare un maggiore controllo sul processo o se esistono esempi specifici di voler includere una determinata parte del ciclo di vita dell'addestramento del modello.

 

 

Tabulare

Dopo aver importato il set di dati, devi addestrare un modello. Vertex AI un modello di machine learning affidabile con i valori predefiniti per l'addestramento, alcuni parametri in base al caso d'uso specifico.

Cerca di selezionare il maggior numero possibile di colonne di caratteristiche per l'addestramento, ma esaminale per assicurarti che è appropriato per l'addestramento. Per la selezione delle caratteristiche, tieni presente quanto segue:

  • Non selezionare colonne di caratteristiche che genereranno rumore, come l'identificatore assegnato in modo casuale con un valore univoco per ogni riga.
  • Assicurati di comprendere ogni colonna delle caratteristiche e i relativi valori.
  • Se stai creando più modelli da un set di dati, rimuovi le colonne di destinazione che non fanno parte del problema di previsione attuale.
  • Ricorda i principi di equità: stai addestrando il modello con una caratteristica che potrebbe portare a di pregiudizi o ingiusti nei confronti dei gruppi emarginati?

In che modo Vertex AI utilizza il set di dati

Il set di dati verrà suddiviso in set di addestramento, convalida e test. La la suddivisione predefinita di Vertex AI dipende dal tipo di modello che stai addestrando. Puoi anche specificare le suddivisioni (divisioni manuali) se necessaria. Per saperne di più, consulta Informazioni sulle suddivisioni di dati per AutoML modelli di machine learning. set di test di convalida dell'addestramento

Set di addestramento

set di addestramento La maggior parte dei dati dovrebbe essere presente nel set di addestramento. Questi sono i dati che il modello "vede" durante l'addestramento: viene utilizzato per apprendere i parametri del modello, ossia i pesi e connessioni tra i nodi della rete neurale.

Set di convalida

set di convalida Il set di convalida, a volte chiamato anche "dev" viene utilizzato anche durante il processo di addestramento. Dopo che il framework di apprendimento del modello ha incorporato i dati di addestramento durante ogni iterazione di addestramento del modello, utilizza le prestazioni del modello sul set di convalida per gli iperparametri, che sono variabili che specificano la struttura del modello. Se hai provato a utilizzare per ottimizzare gli iperparametri, è molto probabile che il modello finirebbe per concentrarsi eccessivamente dati di addestramento e avere difficoltà a generalizzare in base a esempi che non corrispondono esattamente. L'utilizzo di un set di dati nuovo per ottimizzare la struttura del modello consente di generalizzare il modello meglio.

Set di test

set di test Il set di test non è coinvolto in nessun modo nel processo di addestramento. Quando il modello ha completato l'addestramento, Vertex AI utilizza il set di test come sfida completamente nuova per il modello. Le prestazioni del modello sul set di test hanno lo scopo di darvi un'idea abbastanza precisa di come il modello si baserà su dati reali.

 

Testo

Valuta in che modo Vertex AI utilizza il tuo set di dati per creare un modello personalizzato

Il set di dati contiene set di addestramento, convalida e test. In caso contrario specificare le suddivisioni come spiegato in Preparare i segmenti , Vertex AI utilizza automaticamente l'80% dei tuoi contenuti, documenti per l'addestramento, il 10% per la convalida e il 10% per i test.
set di test di convalida dell'addestramento

Set di addestramento

set di addestramento La maggior parte dei dati dovrebbe essere presente nel set di addestramento. Questi sono i dati che il modello "vede" durante l'addestramento: viene utilizzato per apprendere i parametri del modello, ossia i pesi e connessioni tra i nodi della rete neurale.

Set di convalida

set di convalida Il set di convalida, a volte chiamato anche "dev" viene utilizzato anche durante il processo di addestramento. Dopo che il framework di apprendimento del modello ha incorporato i dati di addestramento durante ogni iterazione di addestramento del modello, utilizza le prestazioni del modello sul set di convalida per gli iperparametri, che sono variabili che specificano la struttura del modello. Se hai provato a utilizzare per ottimizzare gli iperparametri, è molto probabile che il modello finirebbe per concentrarsi eccessivamente dati di addestramento e avere difficoltà a generalizzare in base a esempi che non corrispondono esattamente. L'utilizzo di un set di dati nuovo per ottimizzare la struttura del modello consente di generalizzare il modello meglio.

Set di test

set di test Il set di test non è coinvolto in nessun modo nel processo di addestramento. Quando il modello ha completato per l'addestramento completo, usiamo il set di test come sfida completamente nuova per il modello. La delle prestazioni del modello sul set di test ha lo scopo di darvi un'idea abbastanza precisa di come del modello si baserà su dati reali.

 

Suddivisione manuale

suddivisione manuale Puoi anche suddividere il set di dati autonomamente. La suddivisione manuale dei dati è una buona scelta quando vuoi esercitare un maggiore controllo sul processo o se esistono esempi specifici di voler includere una determinata parte del ciclo di vita dell'addestramento del modello.

 

 

Video

Dopo aver preparato i dati del video di addestramento, puoi creare un modello di machine learning. Tieni presente che puoi creare set di annotazioni per obiettivi di modello diversi nello stesso set di dati. Consulta Creazione di un set di annotazioni.

Uno dei vantaggi di Vertex AI è che i parametri predefiniti ti guiderà verso un modello di machine learning affidabile. ma potresti dover regolare i parametri a seconda della qualità dei dati e del risultato che ti aspetti. Ad esempio:

  • Il tipo di previsione è il livello di granularità con il quale vengono elaborati i tuoi video.
  • La frequenza fotogrammi è importante se le etichette che stai tentando di classificare sono sensibili. cambiamenti di movimento, come nel riconoscimento delle azioni. Ad esempio, prendi corsa anziché camminare. Un clip di una camminata con fotogrammi al secondo (f/s) basso potrebbe essere simile a una corsa. Per quanto riguarda il monitoraggio degli oggetti, è sensibile anche alla frequenza fotogrammi. Fondamentalmente, l'oggetto monitorato deve avere un numero sufficiente che si sovrappongono tra frame adiacenti.
  • La risoluzione per il monitoraggio di oggetti è più importante che per un'azione. o per la classificazione dei video. Quando gli oggetti sono piccoli, assicurati di caricarli più in alto video con risoluzione. La pipeline attuale utilizza 256 x 256 per l'addestramento regolare o 512 x 512 se ci sono troppi oggetti piccoli (la cui area è inferiore all'1% dell'area dell'immagine) nei dati utente. È consigliabile utilizzare video di almeno 256p. L'utilizzo di video a risoluzione più alta non aiuta a migliorare le prestazioni del modello perché internamente i fotogrammi video sottocampionati per aumentare la velocità di addestramento e inferenza.


Valuta, testa ed esegui il deployment del modello

Valuta il modello

Immagine

Dopo l'addestramento del modello, riceverai un riepilogo delle prestazioni del modello. Clic valuta o visualizza valutazione completa per visualizzare un'analisi dettagliata.

raccogliere dati sufficienti Il debug di un modello riguarda più il debug dei dati che il modello stesso. Se in qualsiasi momento inizia ad agire in modo inaspettato mentre ne valuti le prestazioni in precedenza Dopo il push in produzione, devi tornare e controllare i tuoi dati per vedere dove potrebbero trovarsi è migliorato.

Che tipo di analisi posso eseguire in Vertex AI?

Nella sezione "Valutazione" di Vertex AI puoi valutare le prestazioni del modello personalizzato utilizzando: l'output del modello su esempi di test e metriche di machine learning comuni. In questa sezione, tratteremo il significato di ciascuno di questi concetti.

  • L'output del modello
  • La soglia del punteggio
  • Veri positivi, veri negativi, falsi positivi e falsi negativi
  • Precisione e richiamo
  • Curve di precisione-richiamo
  • Precisione media

Come devo interpretare l'output del modello?

Vertex AI estrae esempi dai tuoi dati di test per presentare sfide completamente nuove per il tuo model. Per ogni esempio, il modello restituisce una serie di numeri che indicano l'intensità associa ogni etichetta all'esempio. Se il numero è alto, significa che il modello ha un'alta affidabilità che l'etichetta debba essere applicata al documento.
output del modello

Che cos'è la soglia di punteggio?

Possiamo convertire queste probabilità in binari "on"/"off" i valori impostando una soglia di punteggio. La soglia del punteggio si riferisce al livello di confidenza a cui il modello deve assegnare una categoria un elemento di prova. Il cursore della soglia di punteggio nella console Google Cloud è uno strumento visivo per testare l'effetto di soglie diverse per tutte le categorie e le singole categorie nel set di dati. Se la soglia del punteggio è bassa, il modello classificherà più immagini, ma corre il rischio classificazione errata di alcune immagini nel processo. Se la soglia del punteggio è alta, il modello classifica un numero inferiore di immagini, ma ciò comporta un rischio minore di classificazione errata delle immagini. Puoi modificare le impostazioni per soglie nella console Google Cloud da sperimentare. Tuttavia, quando utilizzi il modello nell'ambiente di produzione, devi applicare le soglie che ritieni ottimali.

punteggio soglia

Che cosa sono i veri positivi, veri negativi, falsi positivi, falsi negativi?

Dopo aver applicato la soglia del punteggio, le previsioni fatte dal modello rientreranno in una delle le seguenti quattro categorie:
Le soglie che hai trovato ottimali.

veri positivi negativi

Possiamo usare queste categorie per calcolare la precisione e il richiamo, metriche che ci aiutano a valutare l'efficacia del nostro modello.

Che cosa sono la precisione e il richiamo?

La precisione e il richiamo ci aiutano a capire l'efficacia con cui il nostro modello sta acquisendo informazioni e quanto tralascia. In base a tutti gli esempi di test a cui è stata assegnata un'etichetta, la precisione ci dice come molte di queste dovevano essere categorizzate con quella etichetta. Il ricordo ce lo dice, dopo tutte le prove esempi a cui avrebbe dovuto essere assegnata l'etichetta, quanti di loro avrebbero effettivamente ricevuto l'etichetta.

richiamo di precisione

Devo ottimizzare per la precisione o il richiamo?

A seconda del caso d'uso, potresti voler ottimizzare la precisione o il richiamo. Prendi in considerazione i due casi d'uso riportati di seguito per decidere quale approccio funziona meglio per te.

Caso d'uso: privacy nelle immagini

Supponiamo che tu voglia creare un sistema che rilevi automaticamente informazioni sensibili e sfocature la escogita.
falso positivo innocuo
In questo caso, i falsi positivi sono: cose che non devono essere sfocate ma che vengono sfocate, il che può essere fastidioso, ma non dannoso.

falso negativo dannoso
I falsi negativi in questo caso sono gli oggetti che devono essere sfocati e che non possono essere sfocati, come le carte di credito, il che può portare a un furto d'identità.

In questo caso, dovresti eseguire l'ottimizzazione per il richiamo. Questa metrica misura tutte le le previsioni, quanto viene tralasciato. È probabile che un modello a richiamo elevato etichetti in modo marginale esempi pertinenti. Ciò è utile nei casi in cui la categoria abbia pochi dati di addestramento.

Supponiamo di voler creare un sistema che trovi la migliore foto di stock per una determinata parola chiave.
falso positivo

Un falso positivo in questo caso restituirebbe un'immagine non pertinente. Dato che il tuo prodotto è orgoglioso restituire solo le immagini con la migliore corrispondenza, si tratterebbe di un grave fallimento.

falso negativo
Un falso negativo in questo caso non sarebbe in grado di restituire un'immagine pertinente per una ricerca basata su parole chiave. Poiché molti termini di ricerca contengono migliaia di foto che hanno una potenziale corrispondenza, non c'è problema.

In questo caso, dovresti ottimizzare la precisione. Questa metrica misura tutte le previsioni fatte e la loro correttezza. È probabile che un modello ad alta precisione etichetti solo il esempi pertinenti, che è utile nei casi in cui la classe è comune nei dati di addestramento.

Come si utilizza la matrice di confusione?

matrice di confusione

Come si interpretano le curve di precisione-richiamo?

curve di precisione e richiamo
Lo strumento per la soglia di punteggio ti consente di scoprire in che modo influisce sulla soglia di punteggio che hai scelto precisione e richiamo. Trascinando il cursore sulla barra della soglia del punteggio, vedrai il punto ti posiziona sulla curva di compromesso precisione-richiamo, nonché in che modo la soglia influisce sulla precisione e sul richiamo singolarmente (per i modelli multiclasse, su questi grafici, e richiamo indicano che l'unica etichetta utilizzata per calcolare le metriche di precisione e richiamo è quella con il punteggio più alto nell'insieme di etichette restituite). Questo può aiutarti a trovare un buon equilibrio tra falsi positivi e falsi negativi.

Dopo aver scelto una soglia che sembra essere accettabile per il modello nel suo complesso, fare clic sulle singole etichette e vedere dove rientra la soglia in base al richiamo di precisione per etichetta della curva. In alcuni casi, potrebbe significare che ricevi molte previsioni errate per alcune etichette, il che può aiutarti a decidere di scegliere una soglia per classe personalizzata in base alle etichette. Ad esempio, supponiamo che tu osservi il set di dati delle tue case e noti che una soglia a 0,5 ha una precisione e un richiamo ragionevoli per ogni tipo di immagine tranne "Tudor", forse perché è un categoria generale. Per quella categoria, vedrai un sacco di falsi positivi. In questo caso, decide di usare una soglia di 0,8 solo per "Tudor" quando chiami il classificatore per le previsioni.

Che cos'è la precisione media?

Una metrica utile per l'accuratezza del modello è l'area sotto la curva di precisione-richiamo. Misura il modo in cui le prestazioni del modello in tutte le soglie di punteggio. In Vertex AI, questa metrica è chiamata Precisione media. Più questo punteggio è vicino a 1,0, migliori saranno le prestazioni del modello sulla set di test; un modello che indovina in modo casuale per ogni etichetta otterrebbe una precisione media di circa 0,5.

Tabulare

valuta modello Dopo l'addestramento del modello, riceverai un riepilogo delle sue prestazioni. Le metriche di valutazione del modello in base alle prestazioni del modello rispetto a una porzione del tuo set di dati (il set di dati di test). Esistono alcune metriche e concetti chiave da considerare per determinare se il tuo modello è pronto utilizzata con dati reali.

Metriche di classificazione

Soglia punteggio

Considera un modello di machine learning che prevede se un cliente acquisterà una giacca nei prossimi anno. Quanto deve essere sicuro il modello prima di prevedere che un determinato cliente acquisterà un una giacca? Nei modelli di classificazione, a ogni previsione viene assegnato un punteggio di affidabilità, ovvero un valore numerico valutazione del livello di certezza del modello che la classe prevista sia corretta. La soglia del punteggio è il numero che determina quando un determinato punteggio viene convertito in una decisione sì o no; cioè il valore in base al quale il modello risponde "Sì, il punteggio di confidenza è sufficientemente alto per concludere il cliente acquisterà un cappotto il prossimo anno.
valutare le soglie

Se la soglia del punteggio è bassa, il modello corre il rischio di una classificazione errata. Per questo motivo, la soglia del punteggio deve basarsi su un determinato caso d'uso.

Risultati della previsione

Dopo aver applicato la soglia del punteggio, le previsioni fatte dal modello rientrano in una di quattro categorie categorie. Per comprendere queste categorie, immagina ancora un modello di classificazione binaria della giacca. In questo esempio, la classe positiva (quello che il modello sta cercando di prevedere) è che cliente acquisterà una giacca l'anno successivo.

  • Vero positivo: il modello prevede correttamente la classe positiva. Il modello correttamente ha previsto che un cliente ha acquistato una giacca.
  • Falso positivo: il modello prevede erroneamente la classe positiva. Il modello ha previsto che un cliente ha acquistato una giacca, ma non l'ha fatto.
  • Vero negativo: il modello prevede correttamente la classe negativa. Il modello correttamente ha previsto che un cliente non ha acquistato una giacca.
  • Falso negativo: il modello prevede erroneamente una classe negativa. Il modello ha previsto che un cliente non ha acquistato una giacca, ma l'ha fatto.

risultati della previsione

Precisione e richiamo

Le metriche di precisione e richiamo ti aiutano a comprendere l'efficacia con cui il modello acquisisce informazioni e cosa tralascia. Scopri di più su precisione e richiamo.

  • Per precisione si intende la frazione delle previsioni positive che sono risultate corrette. Di tutti i previsioni di un cliente durante l'acquisto, quale frazione sono gli acquisti effettivi?
  • Per richiamo si intende la frazione delle righe con questa etichetta che sono state previste correttamente dal modello. Tra tutte le previsioni che un cliente potrebbe aver identificato, qual è la frazione prevista correttamente?

A seconda del caso d'uso, potrebbe essere necessario ottimizzare la precisione o il richiamo.

Altre metriche di classificazione
  • AUC PR: l'area sotto la curva di precisione-richiamo (PR). Questo valore va da zero a uno, dove un valore più elevato indica un modello di qualità migliore.
  • AUC ROC: l'area sotto la curva della caratteristica operativa del ricevitore (ROC). L'intervallo varia da da zero a uno, dove un valore più elevato indica un modello di qualità migliore.
  • Accuratezza: la frazione delle previsioni di classificazione prodotte dal modello risposta esatta.
  • Perdita logaritmica: entropia incrociata tra le previsioni del modello e i valori target. Questo intervallo da zero a infinito, dove un valore più basso indica un modello di qualità migliore.
  • Punteggio F1: la media armonica di precisione e richiamo. F1 è una metrica utile per gli utenti per un equilibrio tra precisione e richiamo qualora esista una distribuzione non uniforme delle classi.

Metriche di previsione e regressione

Dopo aver creato il modello, Vertex AI fornisce metriche standard da esaminare. Non esiste una risposta perfetta su come valutare il modello; Considera le metriche di valutazione nel contesto del tuo problema tipo e a ciò che si vuole ottenere con il modello. Il seguente elenco è panoramica di alcune metriche che Vertex AI può fornire.

Errore assoluto medio (MAE)

L'errore assoluto medio (MAE) indica la differenza media assoluta tra il valore target e quello previsto e i relativi valori. Misura la portata media degli errori, la differenza tra un valore target e quello previsto, in un insieme di previsioni. E poiché utilizza valori assoluti, il MAE non considera la direzione della relazione né indicano prestazioni inferiori o superiori. Quando valuti il MAE, una quantità minore indica un modello di qualità superiore (0 rappresenta un predittore perfetto).

Errore quadratico medio (RMSE)

L'RMSE è la radice quadrata della differenza quadrata media tra il target e i valori previsti. L'RMSE è più sensibile agli outlier rispetto al MAE, quindi se ti preoccupano gli errori di grande entità, l'RMSE può essere una metrica più utile per valutare. In modo simile al MAE, un valore minore indica un modello di qualità migliore (0 rappresenta un predittore perfetto).

Errore logaritmico quadratico medio (RMSLE)

L'RMSLE è l'RMSE in scala logaritmica. L'errore logaritmico quadratico medio (RMSLE) è più sensibile agli errori relativi rispetto a quelli assoluti e si interessano di più alle prestazioni inferiori che a quelle superiori.

Quantile osservato (solo previsione)

Per un determinato quantile target, il quantile osservato mostra la frazione effettiva di valori osservati al di sotto dei valori di previsione dei quantili specificati. La il quantile osservato mostra quanto il modello è lontano o vicino al quantile target. Una differenza minore tra i due valori indica un modello di qualità migliore.

Perdita scalata del flipper (solo previsione)

Misura la qualità di un modello per un determinato quantile target. Un numero inferiore indica un modello di qualità superiore. Puoi confrontare la perdita scalata del flipper metrica a quantili diversi per determinare la precisione relativa del tuo modello tra i diversi quantili.

Testo

Dopo l'addestramento del modello, riceverai un riepilogo delle prestazioni del modello. Per visualizzare un analisi dettagliata, fai clic su valuta o visualizza valutazione completa.

Cosa devo tenere a mente prima di valutare il mio modello?

raccogliere dati sufficienti Il debug di un modello riguarda più il debug dei dati che il modello stesso. Se il modello inizia agendo in modo inaspettato mentre ne valuti il rendimento prima e dopo l'invio in produzione, devi tornare sui tuoi dati e controllarli per vedere dove possono essere migliorati.

 

Che tipo di analisi posso eseguire in Vertex AI?

Nella sezione di valutazione di Vertex AI puoi valutare le prestazioni del tuo modello personalizzato utilizzando l'output del modello su esempi di test e metriche di machine learning comuni. Questa sezione spiega il significato di ciascuno dei seguenti concetti:

  • L'output del modello
  • La soglia del punteggio
  • Veri positivi, veri negativi, falsi positivi e falsi negativi
  • Precisione e richiamo
  • Curve di precisione-richiamo.
  • Precisione media

Come devo interpretare l'output del modello?

Vertex AI estrae esempi dai tuoi dati di test per presentare nuove sfide per il tuo model. Per ogni esempio, il modello restituisce una serie di numeri che indicano l'intensità associa ogni etichetta all'esempio. Se il numero è alto, significa che il modello ha un'alta affidabilità che l'etichetta debba essere applicata al documento.
output del modello

Che cos'è la soglia di punteggio?

La soglia del punteggio consente a Vertex AI di convertire le probabilità in "on"/"off" binario e i relativi valori. La soglia del punteggio si riferisce al livello di confidenza che il modello deve avere per assegnare categoria a un elemento di prova. Il cursore della soglia di punteggio nella console è uno strumento visivo per testare l'impatto di soglie diverse nel set di dati. Nell'esempio precedente, se impostiamo il punteggio soglia a 0,8 per tutte le categorie, "Ottimo servizio" e "Suggerimento" verrà assegnato, ma non "Richiesta di informazioni" Se la soglia del punteggio è bassa, il modello classificherà più elementi di testo, ma rischia di classificare erroneamente più elementi di testo nel processo. Se la soglia del punteggio è alta, il modello classificherà meno elementi di testo, ma avrà un rischio minore di classificazione errata del testo elementi. Puoi modificare le soglie per categoria nella console Google Cloud per eseguire l'esperimento. Tuttavia, quando utilizzi del modello in produzione, devi applicare le soglie che ritieni ottimali.
soglia del punteggio

Che cosa sono i veri positivi, veri negativi, falsi positivi, falsi negativi?

Dopo aver applicato la soglia del punteggio, le previsioni fatte dal modello rientreranno in una delle in base a quattro categorie.
risultati della previsione

Puoi usare queste categorie per calcolare la precisione e il richiamo, metriche che aiutano a valutare il l'efficacia del modello.

Che cosa sono la precisione e il richiamo?

La precisione e il richiamo ci aiutano a capire l'efficacia con cui il nostro modello sta acquisendo informazioni e quanto tralascia. In base a tutti gli esempi di test a cui è stata assegnata un'etichetta, la precisione ci dice come molte di queste dovevano essere categorizzate con quella etichetta. Il ricordo ce lo dice, dopo tutte le prove esempi a cui avrebbe dovuto essere assegnata l'etichetta, quanti di loro avrebbero effettivamente ricevuto l'etichetta.
richiamo di precisione

Devo ottimizzare per la precisione o il richiamo?

A seconda del caso d'uso, potresti voler ottimizzare la precisione o il richiamo. Prendi in considerazione i due casi d'uso riportati di seguito per decidere quale approccio funziona meglio per te.

Caso d'uso: documenti urgenti

Supponiamo che tu voglia creare un sistema che possa dare la priorità ai documenti più urgenti che non lo sono.
ottimizza come urgente

Un falso positivo in questo caso potrebbe essere un documento non urgente, ma che viene contrassegnato come tale. L'utente può ignorarli come non urgenti e continuare.
ottimizza come non urgente

Un falso negativo in questo caso potrebbe essere un documento urgente, ma il sistema non riesce a segnalare come tale. Questo potrebbe causare problemi.

In questo caso, ti conviene ottimizzare per il richiamo. Questa metrica misura tutte le le previsioni, quanto viene tralasciato. È probabile che un modello a richiamo elevato etichetti in modo marginale esempi pertinenti. Ciò è utile nei casi in cui la categoria abbia pochi dati di addestramento.

Caso d'uso: filtro antispam

Supponiamo che tu voglia creare un sistema che filtra automaticamente i messaggi email spam da messaggi che non lo sono.
spam

Un falso negativo in questo caso potrebbe essere un'email di spam che non viene intercettata e che tu vedere nella posta in arrivo. Di solito, è solo un po' fastidioso.
non spam

Un falso positivo in questo caso prevede un'email erroneamente segnalata come spam e rimossa. direttamente dalla posta in arrivo. Se l'email era importante, l'utente potrebbe risentirne.

In questo caso, dovresti ottimizzare per la precisione. Questa metrica misura tutte le previsioni fatte e la loro correttezza. È probabile che un modello ad alta precisione etichetti solo il esempi pertinenti, che è utile nei casi in cui la tua categoria è comune nei dati di addestramento.

Come si utilizza la matrice di confusione?

Possiamo confrontare le prestazioni del modello su ogni etichetta utilizzando una matrice di confusione. In un modello ideale, tutti i valori sulla diagonale saranno alti, mentre tutti gli altri saranno bassi. Questo mostra che le categorie desiderate siano identificate correttamente. Se altri valori sono alti, ci dà un indizio su come il modello classifica erroneamente gli elementi di test.
matrice di confusione

Come si interpretano le curve di precisione-richiamo?

curve di precisione e richiamo
Lo strumento per la soglia del punteggio ti consente di scoprire in che modo la soglia di punteggio che hai scelto influisce sulla tua precisione e richiamo. Trascinando il cursore sulla barra della soglia del punteggio, vedrai il punto ti posiziona sulla curva di compromesso precisione-richiamo, nonché in che modo la soglia influisce sulla precisione e sul richiamo singolarmente (per i modelli multiclasse, in questi grafici, "Precisione e richiamo" indicano che l'unica etichetta utilizzata per calcolare le metriche di precisione e richiamo è l'etichetta con il punteggio più alto nell'insieme di etichette restituite). Questo può aiutarti a trovare un buon equilibrio tra falsi positivi e falsi negativi.

Dopo aver scelto una soglia che sembra essere accettabile per il tuo modello nel suo complesso, puoi fare clic sulle singole etichette e vedere dove rientra la soglia in base al richiamo di precisione per etichetta della curva. In alcuni casi, potrebbe significare che ricevi molte previsioni errate per alcune etichette, il che può aiutarti a decidere di scegliere una soglia per classe personalizzata in base alle etichette. Ad esempio, supponi di esaminare il set di dati dei commenti dei clienti e di notare che una soglia 0.5 ha una precisione e un richiamo ragionevoli per ogni tipo di commento tranne "Suggerimento", magari perché è una categoria molto generica. Per quella categoria, vedrai un sacco di falsi positivi. In questo caso, potresti decidere di utilizzare una soglia di 0,8 solo per il "Suggerimento" quando chiami classificatore per le previsioni.

Che cos'è la precisione media?

Una metrica utile per l'accuratezza del modello è l'area sotto la curva di precisione-richiamo. Misura il modo in cui le prestazioni del modello in tutte le soglie di punteggio. In Vertex AI, questa metrica è media precisione. Più questo punteggio è vicino a 1,0, migliore sarà il rendimento del modello il set di test; un modello che indovina in modo casuale per ogni etichetta otterrebbe una precisione media di circa 0,5.

Video

raccogliere dati sufficienti Dopo l'addestramento del modello, riceverai un riepilogo delle sue prestazioni. Le metriche di valutazione del modello in base alle prestazioni del modello rispetto a una porzione del tuo set di dati (il set di dati di test). Là sono un paio di metriche e concetti chiave da considerare per determinare se il tuo modello è pronto da usare con nuovi dati.

Soglia punteggio

In che modo un modello di machine learning a sapere quando una porta nel calcio è davvero un goal? Ogni previsione è Assegnato un punteggio di affidabilità: una valutazione numerica del livello di certezza del modello che un determinato video il segmento contiene una classe. La soglia del punteggio è il numero che determina quando un determinato punteggio venga convertita in decisione sì o no; cioè il valore in base al quale il modello risponde il numero di confidenza è sufficientemente elevato per concludere che questo segmento video contiene un obiettivo". punteggio soglia

Se la soglia del punteggio è bassa, il modello potrebbe esporre in modo errato i segmenti video. Per per questo motivo, la soglia del punteggio deve basarsi su un determinato caso d'uso. Immagina un caso d'uso in ambito medico come la diagnosi dei tumori, in cui le conseguenze di un'etichettatura errata sono maggiori di quelle di una pratica sportiva video. Nella diagnosi dei tumori, è appropriata una soglia di punteggio più alta.

Risultati della previsione

Dopo aver applicato la soglia del punteggio, le previsioni fatte dal modello rientrano in una di quattro categorie categorie. Per comprendere queste categorie, immagina di aver creato un modello in grado di rilevare la presenza o meno di un goal da calcio in un determinato segmento. In questo esempio, un obiettivo è la classe positiva (quello che il modello sta cercando di prevedere).

  • Vero positivo: il modello prevede correttamente la classe positiva. Il modello correttamente ha previsto un obiettivo nel segmento video.
  • Falso positivo: il modello prevede erroneamente la classe positiva. Il modello ha previsto un obiettivo era nel segmento, ma non era presente.
  • Vero negativo: il modello prevede correttamente la classe negativa. Il modello correttamente non era presente un obiettivo nel segmento.
  • Falso negativo:il modello prevede erroneamente una classe negativa. Il modello ha previsto non c'era un obiettivo nel segmento, ma esisteva uno.
risultati della previsione

Precisione e richiamo

Le metriche di precisione e richiamo ti aiutano a comprendere l'efficacia con cui il modello acquisisce informazioni e cosa tralascia. Scopri di più su precisione e richiamo

  • Per precisione si intende la frazione delle previsioni positive che sono risultate corrette. Di tutti i previsioni con l'etichetta "obiettivo", quale frazione conteneva effettivamente un obiettivo?
  • Per richiamo si intende la frazione di tutte le previsioni positive che sono state effettivamente identificate. Di tutti i gol di calcio che avrebbero potuto essere identificati, quale frazione erano?

A seconda del caso d'uso, potrebbe essere necessario ottimizzare la precisione o il richiamo. Prendi in considerazione i seguenti casi d'uso.

Caso d'uso: informazioni private nei video

Immagina di creare un software che rileva automaticamente le informazioni sensibili in un video e la sfoca. Le ramificazioni di risultati falsi possono includere:

  • Un falso positivo identifica qualcosa che non deve essere censurato, ma censurato in ogni caso. Questo potrebbe essere fastidioso, ma non dannoso.
    falso positivo innocuo
  • Un falso negativo non riesce a identificare le informazioni che devono essere censurate, come un credito numero della carta di credito. In questo modo vengono rilasciate informazioni private ed è lo scenario peggiore.
    falso negativo dannoso

In questo caso d'uso, è fondamentale ottimizzare per il richiamo per garantire che il modello trovi tutti pertinenti. Un modello ottimizzato per il richiamo ha maggiori probabilità di etichettare un modello marginalmente pertinente dagli esempi, ma è anche più probabile che etichettano quelli errati (offrindo più sfocature del necessario).

Supponiamo che tu voglia creare un software che consenta agli utenti di cercare in una raccolta di video in base a una parola chiave. Considera i risultati errati:

  • Un falso positivo restituisce un video non pertinente. Dato che il tuo sistema tenta di fornire pertinenti, il software non funziona come è stato progettato.
    falso positivo
  • Un falso negativo non restituisce un video pertinente. Poiché molte parole chiave hanno centinaia video, questo problema non è male come la restituzione di un video non pertinente.
    falso negativo

In questo esempio, dovrai eseguire l'ottimizzazione per garantire la precisione del modello risultati pertinenti e corretti. Un modello ad alta precisione probabilmente etichetta solo il più pertinente ma può escluderne alcuni. Scopri di più sulle metriche di valutazione del modello.


Testa il tuo modello

Immagine

Vertex AI utilizza il 10% dei dati automaticamente (o, se scegli suddividere i dati in modo autonomo indipendentemente dalla percentuale che hai scelto di utilizzare) per testare il modello e la colonna "Valuta" la pagina mostra come il modello ha fatto sui dati di test. Ma se vuoi verificare l'affidabilità del modello, puoi farlo in vari modi. Il più semplice è caricare alcune immagini nella cartella test" pagina, e osservare le etichette scelte dal modello per gli esempi. Speriamo che questo corrisponda le aspettative. Prova qualche esempio di ogni tipo di immagine che prevedi di ricevere.

Se invece vuoi utilizzare il modello nei tuoi test automatici, la colonna "Deployment e test" anche sulla pagina indica come chiamare il modello in modo programmatico.

Tabulare

La valutazione delle metriche del modello è principalmente il modo in cui puoi determinare se il modello è pronto ma puoi anche testarlo con nuovi dati. Carica nuovi dati per vedere se il modello che le previsioni corrispondano alle tue aspettative. In base alle metriche di valutazione o ai test con nuovi dati, potresti dover continuare a migliorare le prestazioni del modello.

Testo

Vertex AI utilizza il 10% dei dati automaticamente (o, se hai scelto la suddivisione dati (indipendentemente dalla percentuale che hai scelto di utilizzare) per testare il modello, e la pagina Valuta indica sul rendimento del modello con i dati di test. Ma se vuoi controllare il modello, puoi farlo in vari modi. Dopo aver eseguito il deployment del modello, puoi inserire esempi di testo nella nel campo Esegui il deployment e testa e osserva le etichette che il modello sceglie per i tuoi esempi. Speriamo che questo corrisponda alle tue aspettative. Prova qualche esempio di ogni tipo di commento che prevedi di ricevere.

Se vuoi utilizzare il modello nei test automatici, la pagina Deployment e test fornisce un esempio Richiesta API che mostra come effettuare chiamate al modello in modo programmatico.

Se vuoi utilizzare il modello nei test automatici, la pagina Deployment e test fornisce un esempio Richiesta API che mostra come effettuare chiamate al modello in modo programmatico.

Nella pagina Previsioni batch puoi creare una previsione batch, che raggruppa molte richieste di previsione in uno. Una previsione batch è asincrona, il che significa che il modello attende di elaborare tutte le richieste di previsione prima di restituire i risultati.

Video

Vertex AI Video utilizza il 20% dei dati automaticamente o, se hai scelto suddividere i dati autonomamente, indipendentemente dalla percentuale che hai scelto di utilizzare, per testare il modello. La scheda Valuta la console indica i risultati del modello con i dati di test. Ma se vuoi controllare il tuo modello, puoi farlo in vari modi. Un modo è fornire un file CSV con di dati video per i test nella sezione "Testa e "Usa" e osservare le etichette che il modello prevede nei video. Spero che soddisfi le tue aspettative.

Puoi regolare la soglia per la visualizzazione delle previsioni e controllare previsioni su 3 scale temporali: intervalli di 1 secondo, inquadrature con la videocamera dopo gli scatti automatici del rilevamento dei confini e di interi segmenti video.

Esegui il deployment del modello

Immagine

Se ritieni che le prestazioni del modello vadano bene, puoi iniziare a utilizzarlo. Potresti utilizzarlo in produzione o potrebbe essere una richiesta di previsione una tantum. In base al caso d'uso, puoi usare il modello in vari modi.

Previsione batch

La previsione batch è utile per fare molte richieste di previsione contemporaneamente. Previsione batch è asincrono, il che significa che il modello attende di elaborare tutte le previsioni richieste prima di restituire un JSON Lines con e i valori della previsione.

Previsione online

Usa un'API REST per distribuire il modello in modo da renderlo disponibile per le richieste di previsione. La previsione online è sincrona (in tempo reale), il che significa che restituirà rapidamente ma accetta una sola richiesta di previsione per ogni chiamata API. La previsione online è utile se il modello fa parte di un'applicazione e alcune parti del tuo sistema dipendono rapidamente i tempi di risposta.

Tabulare

Se ritieni che le prestazioni del modello vadano bene, puoi iniziare a utilizzarlo. Forse un utilizzo in produzione o potrebbe essere una richiesta di previsione una tantum. In base all'utilizzo caso, puoi usare il modello in diversi modi.

Previsione batch

La previsione batch è utile per fare molte richieste di previsione contemporaneamente. La previsione batch è asincrono, ovvero il modello attenderà di elaborare tutte le richieste di previsione. prima di restituire un file CSV o una tabella BigQuery con valori di previsione.

Previsione online

Usa un'API REST per distribuire il modello in modo da renderlo disponibile per le richieste di previsione. Online la previsione è sincrona (in tempo reale), il che significa che restituirà rapidamente i risultati, accetta una sola richiesta di previsione per ogni chiamata API. La previsione online è utile se il tuo modello parte di un'applicazione e parti del sistema dipendono da risposte rapide restituite dalle previsioni.

Video

Se ritieni che le prestazioni del modello vadano bene, puoi iniziare a utilizzarlo. Vertex AI utilizza la previsione batch, che consente di caricare un file CSV con i percorsi dei video ospitati di archiviazione ideale in Cloud Storage. Il modello elaborerà ogni video e le previsioni di output in un altro file CSV. La previsione batch è asincrona, il che significa che il modello elabora tutte le richieste di previsione prima di inviare i risultati.

Esegui la pulizia

Per evitare addebiti indesiderati, annulla il deployment del modello quando non è in uso.

Quando hai finito di utilizzare il modello, elimina le risorse che hai creato per evitare addebiti indesiderati sul tuo account.