Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Perfeziona i modelli linguistici del trasformatore per la diversità linguistica con Hugging Face su Amazon SageMaker

Oggi sono in uso circa 7,000 lingue. Nonostante i tentativi della fine del XIX secolo di inventare lingue artificiali come il Volapük o l’Esperanto, non vi è alcun segno di unificazione. Le persone scelgono ancora di creare nuove lingue (pensa al tuo personaggio cinematografico preferito che parla Klingon, Dothraki o Elfico).

Oggi, gli esempi di elaborazione del linguaggio naturale (PNL) sono dominati dalla lingua inglese, la lingua madre solo del 5% della popolazione umana e parlata solo dal 17%.

Il divario digitale è definita come il divario tra coloro che possono accedere alle tecnologie digitali e coloro che non possono. Anche la mancanza di accesso alla conoscenza o all'istruzione a causa delle barriere linguistiche contribuisce al divario digitale, non solo tra le persone che non parlano inglese, ma anche per le persone di lingua inglese che non hanno accesso a contenuti non inglesi, che riduce la diversità di pensiero e di conoscenza. C'è così tanto da imparare reciprocamente.

In questo post, riassumiamo le sfide delle lingue con risorse limitate e sperimentiamo diversi approcci risolutivi che coprono oltre 100 lingue utilizzando i trasformatori Hugging Face su Amazon SageMaker.

Perfezioniamo vari modelli linguistici basati su trasformatore preaddestrati per un'attività di domande e risposte. Nel nostro esempio utilizziamo il turco, ma potresti applicare questo approccio ad un'altra lingua supportata. Il nostro focus è sulle varianti BERT [1]., perché una grande caratteristica di BERT è la sua architettura unificata in diversi compiti.

Dimostriamo diversi vantaggi derivanti dall'utilizzo dei trasformatori Hugging Face Amazon Sage Maker, come la formazione e la sperimentazione su larga scala e una maggiore produttività ed efficienza in termini di costi.

Panoramica della PNL

Dal 2017 ci sono stati diversi importanti sviluppi nella PNL. L’emergere di architetture di deep learning come i trasformatori [2], le tecniche di apprendimento non supervisionato per addestrare tali modelli su set di dati estremamente grandi e il trasferimento dell’apprendimento hanno migliorato significativamente lo stato dell’arte. arte nella comprensione del linguaggio naturale. L’arrivo di hub modello pre-addestrati ha ulteriormente democratizzato l’accesso alla conoscenza collettiva della comunità della PNL, eliminando la necessità di iniziare da zero.

Un modello linguistico è un modello PNL che impara a prevedere la parola successiva (o qualsiasi parola mascherata) in una sequenza. La vera bellezza dei modelli linguistici come punto di partenza è triplice: in primo luogo, la ricerca ha dimostrato che i modelli linguistici addestrati su dati di un ampio corpus testuale apprendono significati delle parole più complessi rispetto ai metodi precedenti. Ad esempio, per poter prevedere la parola successiva in una frase, il modello linguistico deve essere in grado di comprendere il contesto, la semantica e anche la grammatica. In secondo luogo, per addestrare un modello linguistico, i dati etichettati, che sono scarsi e costosi, non sono richiesti durante la pre-formazione. Questo è importante perché un’enorme quantità di dati di testo senza etichetta è pubblicamente disponibile sul web in molte lingue. In terzo luogo, è stato dimostrato che una volta che il modello linguistico è sufficientemente intelligente da prevedere la parola successiva per una determinata frase, è relativamente facile eseguire altri compiti di PNL come l'analisi del sentiment o la risposta alle domande con pochissimi dati etichettati, perché la messa a punto riutilizza rappresentazioni da un modello linguistico pre-addestrato [3].

Anche i servizi di PNL completamente gestiti hanno accelerato l’adozione della PNL. Amazon Comprehend è un servizio completamente gestito che consente l'analisi del testo per estrarre approfondimenti dal contenuto dei documenti e supporta una varietà di lingue. Amazon Comprehend supporta la classificazione personalizzata e il riconoscimento personalizzato delle entità e ti consente di creare modelli NLP personalizzati specifici per le tue esigenze, senza la necessità di alcuna competenza in ML.

Sfide e soluzioni per le lingue con poche risorse

La sfida principale per un gran numero di lingue è che hanno relativamente meno dati disponibili per la formazione. Questi sono chiamati lingue con poche risorse. Il documento m-BERT [4] e il documento XLM-R [7] si riferiscono all'urdu e allo swahili come lingue a scarse risorse.

La figura seguente specifica i codici ISO di oltre 80 lingue e la differenza di dimensioni (in scala logaritmica) tra i due principali pre-training [7]. In Wikipedia (arancione), ci sono solo 18 lingue con oltre 1 milione di articoli e 52 lingue con oltre 1,000 articoli, ma 164 lingue con solo 1–10,000 articoli [9]. Il corpus CommonCrawl (blu) aumenta la quantità di dati per le lingue con risorse limitate di due ordini di grandezza. Tuttavia, sono ancora relativamente piccole rispetto alle lingue ad alto contenuto di risorse come l’inglese, il russo o il tedesco.

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

In termini di numero di articoli di Wikipedia, il turco è un'altra lingua nello stesso gruppo di oltre 100,000 articoli (28°), insieme all'urdu (54°). Rispetto all’urdu, il turco sarebbe considerato una lingua di risorse intermedie. Il turco ha alcune caratteristiche interessanti, che potrebbero rendere i modelli linguistici più potenti creando alcune sfide nella linguistica e nella tokenizzazione. È una lingua agglutinante. Ha un ordine delle parole molto libero, una morfologia complessa o tempi senza equivalenti inglesi. Le frasi formate da più parole in lingue come l'inglese possono essere espresse con la forma di una sola parola, come mostrato nell'esempio seguente.

Turco Inglese
kedi Gatto
kediLER Gattos
kedigilLER Famiglia di i gatti
Kedigillergiorno Appartenente al famiglia di gatti
kedileştirebileceklerimizdenmişçesineyken Quando sembra che quello sia uno di quelli che possiamo realizzare gatto

Due principali approcci risolutivi sono modelli specifici della lingua o modelli multilingue (con o senza supervisione multilingue):

  • Modelli linguistici monolinguistici – Il primo approccio consiste nell’applicare una variante BERT a una specifica lingua di destinazione. Maggiori sono i dati di addestramento, migliori saranno le prestazioni del modello.
  • Modelli linguistici mascherati multilinguistici – L’altro approccio consiste nel pre-addestrare modelli di trasformatori di grandi dimensioni su molte lingue. La modellazione linguistica multilingue mira a risolvere il problema della mancanza di dati per le lingue con scarse risorse mediante una formazione preliminare su un gran numero di lingue in modo che le attività di PNL apprese da una lingua possano essere trasferite ad altre lingue. I modelli multilinguistici del linguaggio mascherato (MLM) hanno spinto lo stato dell’arte nei compiti di comprensione interlinguistica. Due esempi sono:
    • BERT multilingue – Il modello BERT multilingue è stato addestrato in 104 lingue diverse utilizzando il corpus di Wikipedia. Tuttavia, è stato dimostrato che si generalizza bene solo attraverso strutture linguistiche e caratteristiche tipologiche simili (ad esempio, lingue con ordine delle parole simile). La sua multilinguità è ridotta soprattutto per le lingue con diversi ordini di parole (ad esempio soggetto/oggetto/verbo) [4].
    • XLM-R – I modelli linguistici interlinguistici (XLM) vengono formati con un obiettivo interlinguistico utilizzando set di dati paralleli (lo stesso testo in due lingue diverse) o senza un obiettivo interlinguistico utilizzando set di dati monolinguistici [6]. La ricerca mostra che le lingue con risorse limitate traggono vantaggio dall’adozione di più lingue. XLM-RoBERTa è un modello basato su trasformatore ispirato a RoBERTa [5], e il suo punto di partenza è la proposta che BERT e XLM multilingue siano sotto-sintonizzati. È addestrato su 100 lingue utilizzando sia il corpus Wikipedia che CommonCrawl, quindi la quantità di dati di addestramento per le lingue con risorse limitate è di circa due ordini di grandezza maggiore rispetto a m-BERT [7].

Un’altra sfida dei modelli linguistici multilingue per le lingue con poche risorse è la dimensione del vocabolario e la tokenizzazione. Poiché tutte le lingue utilizzano lo stesso vocabolario condiviso nei modelli linguistici multilingue, esiste un compromesso tra l'aumento della dimensione del vocabolario (che aumenta i requisiti di calcolo) e la sua diminuzione (le parole non presenti nel vocabolario verrebbero contrassegnate come sconosciute o l'utilizzo di caratteri invece delle parole come token ignorerebbero qualsiasi struttura). L'algoritmo di tokenizzazione word-piece combina i vantaggi di entrambi gli approcci. Ad esempio, gestisce in modo efficace le parole fuori dal vocabolario suddividendo la parola in sottoparole finché non è presente nel vocabolario o finché non viene raggiunto il singolo carattere. La tokenizzazione basata sui caratteri non è molto utile tranne che per alcune lingue, come il cinese. Esistono tecniche per affrontare le sfide dei linguaggi con risorse limitate, come il campionamento con determinate distribuzioni [6].

La tabella seguente illustra come si comportano tre diversi tokenizzatori per la parola "kedileri" (che significa "i suoi gatti"). Per alcune lingue e attività di PNL, ciò farebbe la differenza. Ad esempio, per l'attività di risposta alle domande, il modello restituisce l'intervallo dell'indice del token iniziale e dell'indice del token finale; restituire "kediler" ("gatti") o "kedileri" ("i suoi gatti") perderebbe parte del contesto e porterebbe a risultati di valutazione diversi per determinate metriche.

Modello preaddestrato Dimensione del vocabolario Tokenizzazione per “Kedileri”*
dbmdz/bert-base-turco-uncased 32,000 Tokens [CLS] gatti ##io [SET]
Inserisci gli ID 2 23714 1023 3
bert-base-multilingue-uncased 105,879 Tokens [CLS] ked ##iler ##io [SET]
Inserisci gli ID 101 30210 33719 10116 102
deepset/xlm-roberta-base-squad2 250,002 Tokens Ke di s
Inserisci gli ID 0 1345 428 1341 .
*In inglese: (I suoi) gatti

Pertanto, sebbene le lingue con risorse limitate traggano vantaggio da modelli linguistici multilinguistici, l’esecuzione della tokenizzazione attraverso un vocabolario condiviso potrebbe ignorare alcune caratteristiche linguistiche di alcune lingue.

Nella sezione successiva, confrontiamo tre approcci perfezionandoli per un'attività di risposta alle domande utilizzando un set di dati di QA per il turco: BERTurk [8], BERT multilingue [4] e XLM-R [7].

Panoramica della soluzione

Il nostro flusso di lavoro è il seguente:

  1. Preparare il set di dati in un file Amazon Sage Maker Studio ambiente notebook e caricarlo su Servizio di archiviazione semplice Amazon (Amazon S3).
  2. Avvia processi di formazione paralleli sui contenitori di deep learning di formazione SageMaker fornendo lo script di ottimizzazione.
  3. Raccogli i metadati da ciascun esperimento.
  4. Confronta i risultati e identifica il modello più appropriato.

Il diagramma seguente illustra l'architettura della soluzione.

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Per ulteriori informazioni sui notebook Studio, fare riferimento a Immergiti nell'architettura dei notebook Amazon SageMaker Studio. Per ulteriori informazioni su come Hugging Face è integrato con SageMaker, fare riferimento a AWS e Hugging Face collaborano per semplificare e accelerare l'adozione dei modelli di elaborazione del linguaggio naturale.

Prepara il set di dati

La libreria Hugging Face Datasets fornisce potenti metodi di elaborazione dei dati per preparare rapidamente un set di dati per l'addestramento in un modello di deep learning. Il codice seguente carica il set di dati QA turco ed esplora cosa c'è dentro:

data_files = {}
data_files["train"] = 'data/train.json'
data_files["validation"] = 'data/val.json' ds = load_dataset("json", data_files=data_files) print("Number of features in dataset: n Train = {}, n Validation = {}".format(len(ds['train']), len(ds['validation'])))

Ci sono circa 9,000 campioni.

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Il set di dati di input viene leggermente trasformato nel formato previsto dai modelli preaddestrati e contiene le seguenti colonne:

df = pd.DataFrame(ds['train'])
df.sample(1)

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.
La traduzione in inglese dell'output è la seguente:

  • contesto – Resit Emre Kongar (nato il 13 ottobre 1941, Istanbul), sociologo turco, professore.
  • domanda – Qual è il titolo accademico di Emre Kongar?
  • rispondere - Professoressa

Sceneggiatura di perfezionamento

La libreria Hugging Face Transformers fornisce un codice di esempio per ottimizzare un modello per un'attività di risposta alle domande, chiamata run_qa.py. Il seguente codice inizializza il trainer:

 # Initialize our Trainer trainer = QuestionAnsweringTrainer( model=model, args=training_args, train_dataset=train_dataset, eval_dataset=eval_dataset, eval_examples=eval_examples, tokenizer=tokenizer, data_collator=data_collator, post_process_function=post_processing_function, compute_metrics=compute_metrics, )

Esaminiamo gli elementi costitutivi ad alto livello.

Gettoniera

Lo script carica un tokenizzatore utilizzando il file AutoTokenizer classe. Il AutoTokenizer class si occupa di restituire il tokenizzatore corretto che corrisponde al modello:

tokenizer = AutoTokenizer.from_pretrained( model_args.model_name_or_path, cache_dir=model_args.cache_dir, use_fast=True, revision=model_args.model_revision, use_auth_token=None, )

Di seguito è riportato un esempio di come funziona il tokenizzatore:

from transformers import AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("deepset/xlm-roberta-base-squad2") input_ids = tokenizer.encode('İstanbulun en popüler hayvanı hangisidir? Kedileri', return_tensors="pt")
tokens = tokenizer('İstanbulun en popüler hayvanı hangisidir? Kedileri').tokens()

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Modello

Lo script carica un modello. AutoModel classi (ad esempio, AutoModelForQuestionAnswering) creano direttamente una classe con pesi, configurazione e vocabolario dell'architettura pertinente, dati il ​​nome e il percorso del modello pre-addestrato. Grazie all'astrazione di Hugging Face, puoi facilmente passare a un modello diverso utilizzando lo stesso codice, semplicemente fornendo il nome del modello. Vedere il seguente codice di esempio:

 model = AutoModelForQuestionAnswering.from_pretrained( model_args.model_name_or_path, config=config, cache_dir=model_args.cache_dir, revision=model_args.model_revision, )

Preelaborazione e formazione

Il prepare_train_features() ed prepare_validation_features() i metodi preelaborano rispettivamente il set di dati di training e i set di dati di convalida. Il codice esegue un'iterazione sul set di dati di input e crea una sequenza dal contesto e dalla domanda corrente, con gli ID del tipo di token specifici del modello corretti (rappresentazioni numeriche dei token) e le maschere di attenzione. La sequenza viene quindi passata attraverso il modello. Ciò genera una serie di punteggi, sia per la posizione iniziale che per quella finale, come mostrato nella tabella seguente.

Campi di input del set di dati Campi del set di dati di training preelaborati per QuestionAnsweringTrainer
id input_id
titolo attenzione_maschera
contesto posizioni_iniziali
domanda posizioni_finali
Risposte { inizio_risposta, testo_risposta } .

Valutazione

Il compute_metrics() Il metodo si occupa del calcolo delle metriche. Utilizziamo le seguenti metriche popolari per le attività di risposta alle domande:

  • Corrispondenza esatta – Misura la percentuale di previsioni che corrispondono esattamente a una qualsiasi delle risposte basate sulla verità.
  • punteggio F1 – Misura la sovrapposizione media tra la previsione e la risposta veritiera. Il punteggio F1 è la media armonica di precisione e richiamo:
    • Precisione – Il rapporto tra il numero di parole condivise e il numero totale di parole nella previsione.
    • Richiamo – Il rapporto tra il numero di parole condivise e il numero totale di parole nella verità fondamentale.

Formazione gestita su SageMaker

La configurazione e la gestione di ambienti di machine learning (ML) personalizzati possono richiedere molto tempo e risultare complicati. Con Contenitore per l'apprendimento profondo di AWS (DLC) per le librerie Hugging Face Transformers, abbiamo accesso a framework di deep learning preconfezionati e ottimizzati, che semplificano l'esecuzione del nostro script in più processi di formazione con un codice aggiuntivo minimo.

Dobbiamo solo usare il file Estimatore del viso che abbraccia disponibile nell'SDK Python di SageMaker con i seguenti input:

# Trial configuration
config['model'] = 'deepset/xlm-roberta-base-squad2'
config['instance_type'] = 'ml.p3.16xlarge'
config['instance_count'] = 2 # Define the distribution parameters in the HuggingFace Estimator config['distribution'] = {'smdistributed':{'dataparallel':{ 'enabled': True }}}
trial_configs.append(config) # We can specify a training script that is stored in a GitHub repository as the entry point for our Estimator, # so we don’t have to download the scripts locally.
git_config = {'repo': 'https://github.com/huggingface/transformers.git'} hyperparameters_qa={ 'model_name_or_path': config['model'], 'train_file': '/opt/ml/input/data/train/train.json', 'validation_file': '/opt/ml/input/data/val/val.json', 'do_train': True, 'do_eval': True, 'fp16': True, 'per_device_train_batch_size': 16, 'per_device_eval_batch_size': 16, 'num_train_epochs': 2, 'max_seq_length': 384, 'pad_to_max_length': True, 'doc_stride': 128, 'output_dir': '/opt/ml/model' } huggingface_estimator = HuggingFace(entry_point='run_qa.py', source_dir='./examples/pytorch/question-answering', git_config=git_config, instance_type=config['instance_type'], instance_count=config['instance_count'], role=role, transformers_version='4.12.3', pytorch_version='1.9.1', py_version='py38', distribution=config['distribution'], hyperparameters=hyperparameters_qa, metric_definitions=metric_definitions, enable_sagemaker_metrics=True,) nlp_training_job_name = f"NLPjob-{model}-{instance}-{int(time.time())}" training_input_path = f's3://{sagemaker_session_bucket}/{s3_prefix_qa}/' test_input_path = f's3://{sagemaker_session_bucket}/{s3_prefix_qa}/' huggingface_estimator.fit( inputs={'train': training_input_path, 'val': test_input_path}, job_name=nlp_training_job_name, experiment_config={ "ExperimentName": nlp_experiment.experiment_name, "TrialName": nlp_trial.trial_name, "TrialComponentDisplayName": nlp_trial.trial_name,}, wait=False, )

Valuta i risultati

Una volta completati i lavori di messa a punto per l'attività di risposta alle domande turche, confrontiamo le prestazioni del modello dei tre approcci:

  • Modello linguistico monolingue – Viene chiamato il modello pre-addestrato ottimizzato sul testo di risposta alle domande turco bert-base-turco-senza custodia [8]. Raggiunge un punteggio F1 di 75.63 e un punteggio di corrispondenza esatta di 56.17 in sole due epoche e con 9,000 elementi etichettati. Tuttavia, questo approccio non è adatto per una lingua con risorse limitate quando non esiste un modello linguistico pre-addestrato o ci sono pochi dati disponibili per la formazione da zero.
  • Modello linguistico multilingue con BERT multilingue – Viene chiamato il modello pre-addestrato bert-base-multilingue-uncased. Il documento multilingue BERT [4] ha dimostrato che si generalizza bene tra le lingue. Rispetto al modello monolingue, le prestazioni sono peggiori (punteggio F1 71.73, corrispondenza esatta 50:45), ma tieni presente che questo modello gestisce oltre 100 altre lingue, lasciando meno spazio per rappresentare la lingua turca.
  • Modello multilingue con XLM-R – Viene chiamato il modello pre-addestrato xlm-roberta-base-squad2. Il documento XLM-R mostra che è possibile avere un unico grande modello per oltre 100 lingue senza sacrificare le prestazioni per lingua [7]. Per l'attività di risposta alle domande in turco, supera i punteggi BERT multilingue e BERT F1 monolingue rispettivamente del 5% e del 2% (punteggio F1 77.14, corrispondenza esatta 56.39).

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Il nostro confronto non prende in considerazione altre differenze tra i modelli, come la capacità del modello, i set di dati di addestramento utilizzati, le attività di PNL pre-addestrate, la dimensione del vocabolario o la tokenizzazione.

Ulteriori esperimenti

Il taccuino fornito contiene ulteriori esempi di esperimenti.

SageMaker offre un'ampia gamma di tipi di istanze di addestramento. Abbiamo ottimizzato il modello XLM-R su p3.2xlarge (GPU: GPU Nvidia V100, architettura GPU: Volta (2017)), p3.16xlarge (GPU: 8 GPU Nvidia V100) e g4dn.xlarge (GPU: Nvidia T4 GPU, architettura GPU: Turing (2018)) e ha osservato quanto segue:

  • Durata dell'allenamento – Secondo il nostro esperimento, il modello XLM-R ha impiegato circa 24 minuti per addestrarsi su p3.2xlarge e 30 minuti su g4dn.xlarge (circa il 23% in più). Abbiamo anche eseguito un'ottimizzazione distribuita su due istanze p3.16xlarge e il tempo di addestramento è sceso a 10 minuti. Per ulteriori informazioni sull'addestramento distribuito di un modello basato su trasformatore su SageMaker, fare riferimento a Messa a punto distribuita di un modello BERT Large per un'attività di risposta alle domande utilizzando Hugging Face Transformers su Amazon SageMaker.
  • Costi di formazione – Abbiamo utilizzato l'API AWS Pricing per recuperare i prezzi on-demand di SageMaker per calcolarli al volo. Secondo il nostro esperimento, la formazione costa circa 1.58 dollari su p3.2xlarge e circa quattro volte meno su g4dn.xlarge (0.37 dollari). La formazione distribuita su due istanze p3.16xlarge che utilizzano 16 GPU costa $ 9.68.

Per riassumere, sebbene g4dn.xlarge fosse la macchina meno costosa, l'addestramento ha richiesto circa tre volte più tempo rispetto al tipo di istanza più potente con cui abbiamo sperimentato (due p3.16xlarge). A seconda delle priorità del tuo progetto, puoi scegliere tra un'ampia varietà di tipi di istanze di formazione SageMaker.

Conclusione

In questo post, abbiamo esplorato la messa a punto di modelli linguistici basati su trasformatore preaddestrati per un'attività di risposta a domande per una lingua di risorse medie (in questo caso, il turco). Puoi applicare questo approccio a oltre 100 altre lingue utilizzando un unico modello. Al momento in cui scriviamo, ampliare un modello per coprire tutte le 7,000 lingue del mondo è ancora proibitivo, ma il campo della PNL offre l’opportunità di ampliare i nostri orizzonti.

La lingua è il principale metodo di comunicazione umana ed è un mezzo per comunicare valori e condividere la bellezza di un patrimonio culturale. La diversità linguistica rafforza il dialogo interculturale e costruisce società inclusive.

Il machine learning è un processo altamente iterativo; nel corso di un singolo progetto, i data scientist addestrano centinaia di modelli, set di dati e parametri diversi alla ricerca della massima precisione. SageMaker offre il set di strumenti più completo per sfruttare la potenza del machine learning e del deep learning. Ti consente di organizzare, monitorare, confrontare e valutare gli esperimenti di ML su larga scala.

Hugging Face è integrato con SageMaker per aiutare i data scientist a sviluppare, addestrare e ottimizzare modelli NLP all'avanguardia in modo più rapido e semplice. Abbiamo dimostrato diversi vantaggi derivanti dall'utilizzo dei trasformatori Hugging Face su Amazon SageMaker, come formazione e sperimentazione su larga scala e aumento della produttività e dell'efficienza in termini di costi.

Puoi sperimentare attività di PNL nella tua lingua preferita in SageMaker in tutte le regioni AWS in cui SageMaker è disponibile. Il codice del notebook di esempio è disponibile in GitHub.

Per scoprire come Amazon SageMaker Training Compiler può accelerare l'addestramento dei modelli di deep learning fino al 50%, consulta Novità: presentazione del compilatore di formazione SageMaker.

Gli autori desiderano esprimere il loro più profondo apprezzamento a Mariano Kamp ed Emily Webber per aver revisionato le bozze e fornito consigli.

Riferimenti

  1. J. Devlin et al., “BERT: Pre-formazione di trasformatori bidirezionali profondi per la comprensione del linguaggio”, (2018).
  2. A. Vaswani et al., “L’attenzione è tutto ciò di cui hai bisogno”, (2017).
  3. J. Howard e S. Ruder, “Perfezionamento del modello linguistico universale per la classificazione del testo”, (2018).
  4. T. Pires et al., “Quanto è multilingue il BERT multilingue?”, (2019).
  5. Y. Liu et al., “RoBERTa: un approccio di preformazione BERT robustamente ottimizzato”, (2019).
  6. G. Lample e A. Conneau, “Preformazione del modello linguistico interlinguistico”, (2019).
  7. A. Conneau et al., “Apprendimento della rappresentazione interlinguistica non supervisionato su larga scala”, (2019).
  8. Stefan Schweter. BERTurk – Modelli BERT per il turco (2020).
  9. Statistiche Wiki multilingue https://en.wikipedia.org/wiki/Wikipedia:Multilingual_statistics

Informazioni sugli autori

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Arnav Khare è Principal Solutions Architect per i servizi finanziari globali presso AWS. Il suo obiettivo principale è aiutare gli istituti di servizi finanziari a creare e progettare applicazioni di analisi e machine learning nel cloud. Arnav ha conseguito un Master in Intelligenza Artificiale presso l'Università di Edimburgo e ha 18 anni di esperienza nel settore, dalle piccole startup da lui fondate alle grandi aziende come Nokia e Bank of America. Fuori dal lavoro, Arnav ama passare il tempo con le sue due figlie, trovare nuovi bar indipendenti, leggere e viaggiare. Puoi trovarmi su LinkedIn e nel Surrey, nel Regno Unito, nella vita reale.

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Hasan-Basri AKIRMAK (Laurea e Master in Ingegneria informatica ed Executive MBA presso la Graduate School of Business) è Senior Solutions Architect presso Amazon Web Services. È un tecnologo aziendale che fornisce consulenza ai clienti del segmento aziendale. La sua area di specializzazione è la progettazione di architetture e casi aziendali su sistemi di elaborazione dati su larga scala e soluzioni di Machine Learning. Hasan ha fornito sviluppo aziendale, integrazione di sistemi, gestione di programmi per clienti in Europa, Medio Oriente e Africa. Dal 2016 ha guidato centinaia di imprenditori nei programmi di incubazione di startup pro-bono.

Perfeziona modelli linguistici di trasformazione per la diversità linguistica con Hugging Face su Amazon SageMaker PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Heiko Hotz è un Senior Solutions Architect per AI e Machine Learning e guida la community di Natural Language Processing (NLP) all'interno di AWS. Prima di ricoprire questo ruolo, è stato Head of Data Science per il servizio clienti UE di Amazon. Heiko aiuta i nostri clienti ad avere successo nel loro viaggio AI/ML su AWS e ha collaborato con organizzazioni in molti settori, tra cui assicurazioni, servizi finanziari, media e intrattenimento, sanità, servizi pubblici e produzione. Nel tempo libero Heiko viaggia il più possibile.

Timestamp:

Di più da Apprendimento automatico di AWS