Guida per nuovi utenti di AutoML Translation

AutoML Translation ti consente di creare modelli personalizzati (senza scrittura di codice) personalizzati per i tuoi contenuti specifici del dominio rispetto al modello predefinito di traduzione automatica Google (NMT).

Immagina di gestire un servizio di reporting finanziario che ha l'opportunità di espandersi in nuovi paesi. Questi mercati richiedono che i documenti finanziari sensibili al tempo siano tradotti in tempo reale. Invece di assumere personale finanziario bilingue o stipulare un contratto con un traduttore esperto, entrambi a un prezzo elevato per via delle loro competenze relative al dominio e della necessità di tempi di esecuzione rapidi, un modello personalizzato può aiutarti ad automatizzare i job di traduzione in modo scalabile.

Traduzione

Provalo

Se non hai mai utilizzato Google Cloud, crea un account per valutare le prestazioni di Cloud Translation in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.

Prova Cloud Translation gratuitamente

Perché il machine learning (ML) è lo strumento giusto per questo problema?

La programmazione classica richiede che il programmatore specifichi le istruzioni passo passo per il computer da seguire. Tuttavia, questo approccio basato su regole diventa rapidamente impossibili da tradurre. Il linguaggio naturale è complesso e anche la traduzione è complessa. La traduzione automatica viene eseguita quasi completamente con un approccio statistico, con un corpora corporeo parallelo che sostituisce gli esperti linguistici perfezionando manualmente insiemi di regole specializzati.

Hai bisogno di un sistema che possa generalizzare una vasta gamma di scenari di traduzione, ma che sia incentrato sul caso d'uso e sul dominio linguistico specifico dell'attività nelle combinazioni linguistiche che ti interessano. In uno scenario in cui è prevista l'espansione esponenziale di una sequenza di regole specifiche, è necessario un sistema in grado di apprendere dagli esempi. Fortunatamente, i sistemi di machine learning sono in una posizione ideale per risolvere questo problema.

Il modello NMT predefinito o un modello personalizzato è lo strumento giusto per me?

Il modello di traduzione automatica neurale (NMT) copre un gran numero di coppie di lingue e si adatta bene al testo per uso generico. Un modello personalizzato è perfetto per l'ultimo miglio tra attività di traduzione generiche e specifici vocabolari di nicchia. AutoML Translation inizia dal modello NMT generico e poi lo ottimizza per adattare i dati di addestramento in modo da ottenere la traduzione giusta per i contenuti specifici del dominio che ti interessano.

Cosa comporta il machine learning?

Il machine learning prevede l'utilizzo dei dati per addestrare gli algoritmi in modo da raggiungere un risultato desiderato. Le specifiche dell'algoritmo e dei metodi di addestramento cambiano in base allo spazio per il problema. Esistono molte sottocategorie di machine learning, tutte con problemi diversi e funzionanti all'interno di vincoli diversi. AutoML Translation ti consente di eseguire un apprendimento supervisionato, che prevede l'addestramento di un computer per il riconoscimento di pattern da coppie di segmenti tradotte. Utilizzando l'apprendimento supervisionato, possiamo addestrare un modello personalizzato per tradurre i contenuti specifici del tuo dominio che ti interessano.

Preparazione dati

Per addestrare un modello personalizzato, devi fornire coppie di segmenti nelle lingue di origine e di destinazione, ovvero coppie di segmenti che significano la stessa cosa nella lingua da cui vuoi tradurre e nella lingua in cui vuoi tradurla. Più stretta è la definizione di coppie di segmenti, migliore sarà il modello.

Valuta il tuo caso d'uso

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

  • Qual è il risultato che vuoi ottenere?
  • Quali tipi di segmenti devi tradurre per ottenere questo risultato? È un'attività che può essere eseguita immediatamente dal modello NMT?
  • Gli esseri umani possono tradurre questi segmenti in modo da soddisfarvi? Se l'attività di traduzione è intrinsecamente ambigua, al punto che una persona che parla correntemente entrambe le lingue fatica a svolgere un lavoro soddisfacente, le prestazioni del modello NMT e del modello personalizzato potrebbero essere simili.
  • Quali tipi di esempi rispecchiano meglio il tipo e l'intervallo di dati che il tuo sistema dovrà tradurre?

Uno dei principi fondamentali alla base dei prodotti ML di Google è il machine learning incentrato sull'uomo, un approccio che mette in primo piano pratiche di AI responsabile, tra cui l'equità. L'obiettivo dell'equità nel machine learning è comprendere e prevenire il trattamento ingiusto o pregiudiziale delle persone in relazione a gruppo etnico, reddito, orientamento sessuale, religione, genere e altre caratteristiche storicamente associate a discriminazione ed emarginazione, quando e dove si manifestano in sistemi algoritmici o processi decisionali assistiti da algoritmi. Per saperne di più, consulta la nostra guida e consulta le fair-aware note ✽ nelle linee guida riportate di seguito. Man mano che procedi con le linee guida per la creazione del set di dati, ti invitiamo a considerare l'equità nel machine learning, dove pertinente per il tuo caso d'uso.

Ottieni i dati da un'origine

Dopo aver stabilito i dati di cui hai bisogno, devi trovare un modo per raccoglierli. Puoi iniziare prendendo in considerazione tutti i dati raccolti dalla tua organizzazione. Potresti scoprire che stai già raccogliendo i dati necessari per addestrare un modello di traduzione. Se non disponi dei dati necessari, puoi recuperarli manualmente o eseguirne l'esternalizzazione con un provider di terze parti.

Associa i dati al dominio problematico

Addestra un modello di traduzione personalizzato perché ti serve un modello che rientri in un particolare dominio linguistico. Assicurati che le coppie di segmenti siano il miglior possibile per coprire il vocabolario, l'utilizzo e le peculiarità grammaticali del tuo settore o della tua area di interesse. Trova i documenti che contengono gli utilizzi tipici che potresti trovare nelle attività di traduzione che vuoi completare e assicurati che le frasi parallele corrispondano il più possibile nel loro significato. Naturalmente, a volte i linguaggi non sono perfettamente mappati nel vocabolario o nella sintassi, ma cerca di acquisire la piena diversità della semantica che ti aspetti di trovare in uso, se possibile. Ti stai basando su un modello che ha già un bel lavoro con la traduzione per uso generico; i tuoi esempi sono l'ultimo passaggio speciale che rende i modelli personalizzati adatti al tuo caso d'uso, quindi assicurati che siano pertinenti e rappresentativi dell'utilizzo previsto.

Cattura la diversità del tuo spazio linguistico

Si è tentati di dare per scontato che il modo in cui gli utenti scrivono di un dominio specifico sia sufficientemente elevato da rendere sufficiente un numero limitato di campioni di testo tradotti da un numero ridotto di traduttori per addestrare un modello che funzioni bene per tutti gli altri che scrivono di quel dominio. Tuttavia, siamo tutti individui e ognuno di noi associa la sua personalità alle parole che scrivi. Un set di dati di addestramento con coppie di segmenti di un'ampia selezione di autori e traduttori ha maggiori probabilità di fornirti un modello utile per tradurre i scritti di un'organizzazione diversificata. Inoltre, tieni conto della varietà di lunghezze e strutture dei segmenti; un set di dati in cui tutti i segmenti hanno le stesse dimensioni o condividono una struttura grammaticale simile non fornirà a Cloud Translation informazioni sufficienti per creare un buon modello in grado di comprendere tutte le possibilità.

Tenere gli esseri umani al corrente

Se possibile, assicurati che una persona che comprenda correttamente entrambe le lingue abbia verificato che le coppie di segmenti corrispondano correttamente e che contengano traduzioni accurate e comprensibili. Un errore semplice come quello di disallineamento delle righe del foglio di lavoro dei dati di addestramento può produrre traduzioni che sembrano inutili. È fondamentale fornire dati di alta qualità ad AutoML Translation per ottenere un modello utilizzabile dalla tua attività.

Elimina i dati disordinati

È facile commettere errori durante la pre-elaborazione dei dati e alcuni di questi errori possono davvero confondere un modello personalizzato. In particolare, cerca i seguenti problemi relativi ai dati che puoi risolvere:

  • Rimuovi i segmenti di origine duplicati, soprattutto se hanno traduzioni target diverse. AutoML Translation utilizza solo il primo esempio visto e elimina tutte le altre coppie al momento dell'importazione. Se rimuovi i duplicati, assicurati che AutoML Translation utilizzi la tua traduzione preferita.
  • Allinea i segmenti di origine ai segmenti di destinazione corretti.
  • Abbina i segmenti alla lingua specificata; ad esempio, includi solo segmenti cinesi in un set di dati cinese.
  • Per i segmenti di destinazione che includono lingue miste, controlla che le parole non tradotte non siano state tradotte intenzionalmente, ad esempio nomi di prodotti o organizzazioni. I segmenti target che includono per errore parole non tradotte aggiungono rumore ai dati di addestramento, il che può comportare un modello di qualità inferiore.
  • Correggi i segmenti con errori tipografici o grammaticali in modo che il modello non li rilevi.
  • Rimuovi i contenuti non traducibili come i tag segnaposto e i tag HTML. I contenuti non traducibili possono generare errori di punteggiatura.
  • Non includere traduzioni che sostituiscono le entità generali con nomi specifici. Ad esempio, potresti avere un esempio che cambia "presidente" con un nome di un presidente specifico, come "JFK" o "John F Kennedy". Il modello potrebbe imparare a cambiare tutte le istanze di "presidente" in "JFK". Rimuovi queste traduzioni o cambia i nomi specifici con nomi comuni.
  • Rimuovi i segmenti duplicati nei set di addestramento e test. Scopri di più sui set di treni e test
  • Suddividi più segmenti in coppie di segmenti diverse. L'addestramento in un set di dati in cui molti elementi contengono più di 50 token (parole) generano modelli di qualità inferiore. Se possibile, dividi gli elementi in singole frasi.
  • Utilizza lettere maiuscole e minuscole coerenti. L'involucro influisce sul modo in cui un modello apprende, ad esempio, per distinguere un titolo da un testo del corpo.
  • Rimuovi i tag TMX quando importi dati da un file TSV. In alcuni casi, potresti esportare la memoria di traduzione esistente in un file TSV, che potrebbe includere tag TMX. Tuttavia, AutoML Translation esegue la pulizia dei tag delle unità di traduzione solo quando importi da un file TMX (non dai file TSV).

In che modo AutoML Translation preelabora i tuoi dati

AutoML Translation interrompe l'analisi del file di input dei dati quando:

  • La formattazione non è valida
  • È presente una coppia di segmenti irragionevolmente lunga (10 MB)
  • Il file utilizza una codifica diversa da UTF-8

AutoML Translation ignora gli errori per i problemi che non riesce a rilevare, ad esempio:

  • Un elemento <tu> in un file TMX non ha la lingua di origine o di destinazione.
  • Una delle coppie di segmenti di input è vuota.

Per la suddivisione automatica dei dati, AutoML Translation esegue l'elaborazione aggiuntiva:

  • Una volta caricato, il set di dati rimuove le coppie di segmenti con segmenti di origine identici.
  • Divide i dati in modo casuale in tre set con un rapporto di 8:1:1 (train:validation:test) prima dell'addestramento.

Valuta come AutoML Translation utilizza il tuo set di dati per creare un modello personalizzato

Il tuo set di dati contiene set di addestramento, convalida e test. Se non specifichi le suddivisioni (consulta la sezione Preparazione dei dati di addestramento e il set di dati contiene meno di 100.000 coppie di segmenti, AutoML Translation utilizza automaticamente l'80% dei documenti di contenuti per l'addestramento, il 10% per la convalida e il 10% per i test). Se i tuoi dati sono superiori, dovrai eseguire la suddivisione dati.

Set di addestramento

La maggior parte dei dati deve trovarsi nel set di addestramento. Questi sono i dati che il modello "vede" durante l'addestramento: vengono utilizzati per conoscere i parametri del modello, ovvero le ponderazioni delle connessioni tra i nodi della rete neurale.

Set di convalida

Il set di convalida, a volte chiamato anche "set di sviluppo", viene utilizzato anche durante il processo di addestramento. Durante l'apprendimento del modello, il framework utilizza il set di addestramento per addestrare una suite di modelli candidati, quindi utilizza le prestazioni del modello nel set di convalida per scegliere il modello migliore generato. Utilizza le prestazioni del modello nel set di convalida per regolare gli iperparametri del modello, che sono variabili che specificano la struttura del modello. Se avessi utilizzato il set di addestramento per regolare gli iperparametri, il modello sarebbe eccessivamente concentrato sui dati di addestramento. L'utilizzo di un set di dati innovativo per perfezionare la struttura del modello consente di generalizzare meglio il modello.

Set di test

Il set di test non è affatto coinvolto nel processo di addestramento. Una volta completata l'addestramento del modello, utilizziamo il set di test come una sfida completamente nuova per il modello. Le prestazioni del modello sul set di test hanno lo scopo di darti un'idea abbastanza chiara delle prestazioni del modello sui dati del mondo reale.

Suddivisione manuale

AutoML Translation può suddividere i tuoi dati in set di addestramento, convalida e test per tuo conto, oppure puoi farlo autonomamente se vuoi esercitare un maggiore controllo sul processo, se preferisci una suddivisione percentuale diversa o se ci sono esempi specifici che hai la certezza di voler includere in una determinata parte del tuo ciclo di vita di addestramento del modello.

 

Prepara i dati per l'importazione

Dopo aver deciso se la suddivisione manuale o automatica dei dati è adatta a te, puoi procedere in due modi:

  • Puoi importare i dati come file con valori delimitati da tabulazioni (TSV) contenenti segmenti di origine e di destinazione, una coppia di segmenti per riga.
  • Puoi importare i dati come file TMX, un formato standard per fornire coppie di segmenti agli strumenti per il modello di traduzione automatica (scopri di più sul formato TMX supportato). Se il file TMX contiene tag XML non validi, AutoML li ignora. Se il file TMX non è conforme al formato XML e TMX corretto, ad esempio se non è presente un tag finale o un elemento <tmx>, AutoML non lo elabora. Anche Cloud Translation termina l'elaborazione e restituisce un errore se salta più di 1024 elementi <tu> non validi.

Valuta

Una volta completato l'addestramento del modello, riceverai un riepilogo delle prestazioni. Fai clic sulla scheda Addestra per visualizzare un'analisi dettagliata.

Cosa devo tenere presente prima di valutare il mio modello?

Il debug di un modello è più importante del debug dei dati. Se il tuo modello inizia a comportarsi in modo imprevisto durante la valutazione delle prestazioni prima e dopo il push alla produzione, devi tornare e controllare i dati per vedere dove è possibile migliorarlo.

Punteggio BLEU

Il punteggio BLEU è un modo standard per misurare la qualità di un sistema di traduzione automatica. AutoML Translation utilizza un punteggio BLEU calcolato sui dati di test che hai fornito come metrica di valutazione principale. Scopri di più sui punteggi BLEU.

Il modello NMT di Google, che è alla base dell'API Cloud Translation, è progettato per l'utilizzo generale. Potrebbe non essere la soluzione migliore per te se stai cercando una traduzione specializzata nei tuoi campi. Il modello personalizzato addestrato di solito funziona meglio del modello NMT nei campi a cui è correlato il set di addestramento.

Dopo aver addestrato il modello personalizzato con il tuo set di dati, il punteggio BLEU del modello personalizzato e del modello NMT di Google viene visualizzato nella scheda Addestra. Nella scheda Addestra, è disponibile anche un aumento del rendimento del punteggio BLEU derivante dal modello personalizzato. Più alto è il punteggio BLEU, migliori saranno le traduzioni fornite dal modello per i segmenti simili ai tuoi dati di addestramento. Se il punteggio BLEU è compreso nell'intervallo 30-40, il modello è considerato in grado di fornire traduzioni valide.

Test del modello

Anche se il punteggio BLEU sembra corretto, ti consigliamo di controllare il modello personalmente per assicurarti che le sue prestazioni corrispondano alle tue aspettative. Se i dati di addestramento e test sono stati ricavati dallo stesso insieme di campioni errati, i punteggi potrebbero essere eccellenti anche se la traduzione è senza senso. Aggiungi alcuni esempi come input nella scheda Previsione e confronta i risultati del modello personalizzato con il modello di base di NMT di Google. Potresti notare che il tuo modello viene fornito con le stesse previsioni del modello di base, in particolare su segmenti brevi o se hai un addestramento più piccolo. Ciò non è imprevisto: il modello di base è già abbastanza adatto a un'ampia gamma di casi d'uso. Prova con segmenti più lunghi o più complessi. Tuttavia, se tutti i segmenti tornano identici alle previsioni del modello di base, potrebbe esserci un problema con i dati.

Se c'è un errore che ti preoccupa particolarmente riguardo alla creazione del modello (ad esempio, una funzionalità poco chiara della tua coppia linguistica che spesso richiede un traduzione da parte di persone fisiche o un errore di traduzione che potrebbe essere particolarmente costoso in termini di denaro o reputazione), assicurati che il tuo set di test o la tua procedura coprano la situazione adeguata per la tua sicurezza nelle attività quotidiane.

Passaggi successivi