Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker

Momenteel zijn er ongeveer 7,000 talen in gebruik. Ondanks pogingen in de late 19e eeuw om geconstrueerde talen zoals Volapük of Esperanto uit te vinden, is er geen teken van eenwording. Mensen kiezen er nog steeds voor om nieuwe talen te creëren (denk aan je favoriete filmpersonage dat Klingon, Dothraki of Elfen spreekt).

Tegenwoordig worden voorbeelden van natuurlijke taalverwerking (NLP) gedomineerd door de Engelse taal, de moedertaal voor slechts 5% van de menselijke bevolking en slechts door 17% gesproken.

De digitale kloof wordt gedefinieerd als de kloof tussen degenen die toegang hebben tot digitale technologieën en degenen die dat niet kunnen. Gebrek aan toegang tot kennis of onderwijs als gevolg van taalbarrières draagt ​​ook bij aan de digitale kloof, niet alleen tussen mensen die geen Engels spreken, maar ook voor Engelssprekenden die geen toegang hebben tot niet-Engelse inhoud, die vermindert de diversiteit van gedachten en kennis. Er is zoveel te leren van elkaar.

In dit bericht vatten we de uitdagingen van talen met weinig middelen samen en experimenteren we met verschillende oplossingsbenaderingen voor meer dan 100 talen met behulp van Hugging Face-transformatoren op Amazon SageMaker.

We finetunen verschillende vooraf getrainde, op transformatoren gebaseerde taalmodellen voor een vraag- en antwoordtaak. We gebruiken Turks in ons voorbeeld, maar u kunt deze benadering ook toepassen op andere ondersteunde talen. Onze focus ligt op BERT [1] varianten, omdat een geweldige functie van BERT de uniforme architectuur voor verschillende taken is.

We demonstreren verschillende voordelen van het gebruik van Hugging Face-transformatoren op: Amazon Sage Maker, zoals training en experimenten op grote schaal, en verhoogde productiviteit en kostenefficiëntie.

Overzicht van NLP

Er zijn sinds 2017 verschillende belangrijke ontwikkelingen in NLP geweest. De opkomst van deep learning-architecturen zoals transformers [2], de unsupervised learning-technieken om dergelijke modellen te trainen op extreem grote datasets, en transfer learning hebben de state-of-the- kunst in het begrijpen van natuurlijke taal. De komst van vooraf opgeleide modelhubs heeft de toegang tot de collectieve kennis van de NLP-gemeenschap verder gedemocratiseerd, waardoor het niet meer nodig is om helemaal opnieuw te beginnen.

Een taalmodel is een NLP-model dat leert het volgende woord (of een gemaskeerd woord) in een reeks te voorspellen. De echte schoonheid van taalmodellen als uitgangspunt is drieledig: ten eerste heeft onderzoek aangetoond dat taalmodellen die zijn getraind op een groot tekstcorpusgegevens complexere betekenissen van woorden leren dan eerdere methoden. Om bijvoorbeeld het volgende woord in een zin te kunnen voorspellen, moet het taalmodel goed zijn in het begrijpen van de context, de semantiek en ook de grammatica. Ten tweede, om een ​​taalmodel te trainen, zijn gelabelde gegevens - die schaars en duur zijn - niet vereist tijdens de pre-training. Dit is belangrijk omdat een enorme hoeveelheid niet-gelabelde tekstgegevens in vele talen openbaar beschikbaar zijn op het web. Ten derde is aangetoond dat als het taalmodel eenmaal slim genoeg is om het volgende woord voor een bepaalde zin te voorspellen, het relatief eenvoudig is om andere NLP-taken uit te voeren, zoals sentimentanalyse of het beantwoorden van vragen met heel weinig gelabelde gegevens, omdat het verfijnen van hergebruik representaties van een vooraf getraind taalmodel [3].

Volledig beheerde NLP-services hebben ook de acceptatie van NLP versneld. Amazon begrijpt het is een volledig beheerde service waarmee tekstanalyse inzichten uit de inhoud van documenten kan halen, en ondersteunt een verscheidenheid aan talen. Amazon Comprehend ondersteunt aangepaste classificatie en aangepaste entiteitsherkenning en stelt je in staat om aangepaste NLP-modellen te bouwen die specifiek zijn voor jouw vereisten, zonder dat je enige ML-expertise nodig hebt.

Uitdagingen en oplossingen voor talen met weinig middelen

De grootste uitdaging voor een groot aantal talen is dat ze relatief minder data beschikbaar hebben voor training. Deze heten talen met weinig middelen. De m-BERT-paper [4] en XLM-R-paper [7] verwijzen naar Urdu en Swahili als talen met weinig middelen.

De volgende afbeelding specificeert de ISO-codes van meer dan 80 talen en het verschil in grootte (in log-schaal) tussen de twee belangrijkste pre-trainingen [7]. In Wikipedia (oranje) zijn er slechts 18 talen met meer dan 1 miljoen artikelen en 52 talen met meer dan 1,000 artikelen, maar 164 talen met slechts 1-10,000 artikelen [9]. Het CommonCrawl-corpus (blauw) verhoogt de hoeveelheid gegevens voor talen met weinig middelen met twee ordes van grootte. Niettemin zijn ze nog steeds relatief klein in vergelijking met talen met veel middelen, zoals Engels, Russisch of Duits.

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

In termen van Wikipedia-artikelnummers is Turks een andere taal in dezelfde groep van meer dan 100,000 artikelen (28e), samen met Urdu (54e). In vergelijking met Urdu zou Turks worden beschouwd als een middelmatige taal. Turks heeft een aantal interessante kenmerken, die taalmodellen krachtiger zouden kunnen maken door bepaalde uitdagingen op het gebied van taalkunde en tokenization te creëren. Het is een agglutinerende taal. Het heeft een zeer vrije woordvolgorde, een complexe morfologie of tijden zonder Engelse equivalenten. Zinnen die uit meerdere woorden bestaan ​​in talen zoals Engels, kunnen worden uitgedrukt in een enkele woordvorm, zoals in het volgende voorbeeld.

Turks Engels
kat Kat
katler Kats
katgiller Familie van katten
katachtigendag Behoren tot de familie van katten
katleştirebileceklerimizdenmişçesineyken Als het lijkt alsof die er een is die we kunnen maken hoe

Twee belangrijke oplossingsbenaderingen zijn taalspecifieke modellen of meertalige modellen (met of zonder meertalige supervisie):

  • Eentalige taalmodellen – De eerste benadering is het toepassen van een BERT-variant op een specifieke doeltaal. Hoe meer trainingsgegevens, hoe beter de modelprestaties.
  • Meertalige gemaskeerde taalmodellen – De andere benadering is om grote transformatormodellen vooraf in veel talen te trainen. Meertalige taalmodellering heeft tot doel het gebrek aan data-uitdaging voor talen met weinig middelen op te lossen door vooraf een groot aantal talen te trainen, zodat NLP-taken die uit de ene taal zijn geleerd, kunnen worden overgedragen naar andere talen. Meertalige gemaskeerde taalmodellen (MLM's) hebben de state-of-the-art op het gebied van meertalige begripstaken geduwd. Twee voorbeelden zijn:
    • Meertalige BERT – Het meertalige BERT-model werd getraind in 104 verschillende talen met behulp van het Wikipedia-corpus. Het is echter aangetoond dat het alleen goed generaliseert over vergelijkbare taalstructuren en typologische kenmerken (bijvoorbeeld talen met een vergelijkbare woordvolgorde). De meertaligheid neemt af, vooral voor talen met verschillende woordvolgorde (bijvoorbeeld onderwerp/object/werkwoord) [4].
    • XLM-R – Cross-lingual language modellen (XLM's) worden getraind met een meertalige doelstelling met behulp van parallelle datasets (dezelfde tekst in twee verschillende talen) of zonder een meertalige doelstelling met behulp van eentalige datasets [6]. Onderzoek toont aan dat talen met weinig middelen baat hebben bij schaling naar meer talen. XLM-RoBERTa is een op transformatoren gebaseerd model geïnspireerd door RoBERTa [5], en het uitgangspunt is de stelling dat meertalige BERT en XLM ondergewaardeerd zijn. Het is getraind in 100 talen met behulp van zowel het Wikipedia- als het CommonCrawl-corpus, dus de hoeveelheid trainingsgegevens voor talen met weinig middelen is ongeveer twee ordes van grootte groter in vergelijking met m-BERT [7].

Een andere uitdaging van meertalige taalmodellen voor talen met weinig middelen is de omvang van de woordenschat en de tokenisatie. Omdat alle talen dezelfde gedeelde woordenschat gebruiken in meertalige taalmodellen, is er een afweging tussen het vergroten van de woordenschat (waardoor de computervereisten toenemen) versus het verkleinen ervan (woorden die niet in de woordenschat voorkomen, worden gemarkeerd als onbekend of het gebruik van tekens in plaats van woorden, omdat tokens elke structuur zouden negeren). Het tokenization-algoritme van het woordstuk combineert de voordelen van beide benaderingen. Het verwerkt bijvoorbeeld woorden die buiten de woordenschat vallen effectief door het woord in subwoorden te splitsen totdat het in het vocabulaire aanwezig is of totdat het individuele teken is bereikt. Op tekens gebaseerde tokenisatie is niet erg handig, behalve voor bepaalde talen, zoals Chinees. Er bestaan ​​technieken om uitdagingen voor talen met weinig middelen aan te pakken, zoals steekproeven met bepaalde distributies [6].

De volgende tabel laat zien hoe drie verschillende tokenizers zich gedragen voor het woord "kedileri" (wat "zijn katten" betekent). Voor bepaalde talen en NLP-taken zou dit een verschil maken. Voor de taak voor het beantwoorden van vragen retourneert het model bijvoorbeeld de spanwijdte van de starttokenindex en de eindtokenindex; het retourneren van "kediler" ("katten") of "kedileri" ("haar katten") zou enige context verliezen en leiden tot verschillende evaluatieresultaten voor bepaalde statistieken.

Voorgetraind model Woordenschat grootte Tokenisatie voor "Kedileri"*
dbmdz/bert-base-turks-uncased 32,000 tokens [CLS] katten ##i [SEP]
Invoer-ID's 2 23714 1023 3
bert-base-meertalig-uncased 105,879 tokens [CLS] ked ##iler ##i [SEP]
Invoer-ID's 101 30210 33719 10116 102
deepset/xlm-roberta-base-squad2 250,002 tokens Ke di s
Invoer-ID's 0 1345 428 1341 .
*In het Engels: (Zijn) katten

Daarom, hoewel talen met weinig middelen profiteren van meertalige taalmodellen, kan het uitvoeren van tokenisatie over een gedeeld vocabulaire bepaalde taalkundige kenmerken voor bepaalde talen negeren.

In de volgende sectie vergelijken we drie benaderingen door ze te verfijnen voor een vraagbeantwoordingstaak met behulp van een QA-dataset voor Turks: BERTurk [8], meertalige BERT [4] en XLM-R [7].

Overzicht oplossingen

Onze workflow is als volgt:

  1. Bereid de dataset voor in een Amazon SageMaker Studio notebook-omgeving en upload deze naar Amazon eenvoudige opslagservice (Amazone S3).
  2. Start parallelle trainingstaken op SageMaker-trainingscontainers voor deep learning door het fine-tuningscript te leveren.
  3. Verzamel metadata van elk experiment.
  4. Vergelijk de resultaten en identificeer het meest geschikte model.

Het volgende diagram illustreert de oplossingsarchitectuur.

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Raadpleeg voor meer informatie over Studio-notebooks: Duik diep in de Amazon SageMaker Studio Notebooks-architectuur. Voor meer informatie over hoe Hugging Face is geïntegreerd met SageMaker, zie: AWS en Hugging Face werken samen om de acceptatie van Natural Language Processing-modellen te vereenvoudigen en te versnellen.

De dataset voorbereiden

De Hugging Face Datasets-bibliotheek biedt krachtige gegevensverwerkingsmethoden om snel een dataset klaar te maken voor training in een deep learning-model. De volgende code laadt de Turkse QA-dataset en onderzoekt wat erin zit:

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'])))

Er zijn ongeveer 9,000 monsters.

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

De invoergegevensset is enigszins getransformeerd naar een formaat dat wordt verwacht door de vooraf getrainde modellen en bevat de volgende kolommen:

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

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.
De Engelse vertaling van de output is als volgt:

  • verband – Herkansing Emre Kongar (geb. 13 oktober 1941, Istanbul), Turkse socioloog, hoogleraar.
  • vraag – Wat is de academische titel van Emre Kongar?
  • beantwoorden - Professor

Script voor fijnafstemming

De Hugging Face Transformers-bibliotheek biedt een voorbeeldcode om een ​​model te verfijnen voor een taak voor het beantwoorden van vragen, genaamd run_qa.py. De volgende code initialiseert de 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, )

Laten we de bouwstenen eens op hoog niveau bekijken.

tokenizer

Het script laadt een tokenizer met behulp van de AutoTokenizer klasse. De AutoTokenizer class zorgt voor het retourneren van de juiste tokenizer die overeenkomt met het model:

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, )

Het volgende is een voorbeeld van hoe de tokenizer werkt:

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()

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Model

Het script laadt een model. AutoModel lessen (bijv. AutoModelForQuestionAnswering) maak direct een klasse met gewichten, configuratie en vocabulaire van de relevante architectuur, gegeven de naam en het pad naar het vooraf getrainde model. Dankzij de abstractie van Hugging Face kun je eenvoudig overschakelen naar een ander model met dezelfde code, gewoon door de naam van het model op te geven. Zie de volgende voorbeeldcode:

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

Voorbewerking en training

De prepare_train_features() en prepare_validation_features() methoden preprocesseren respectievelijk de trainingsdataset en validatiedatasets. De code herhaalt de invoergegevensset en bouwt een reeks op uit de context en de huidige vraag, met de juiste modelspecifieke tokentype-ID's (numerieke representaties van tokens) en aandachtsmaskers. De reeks wordt vervolgens door het model geleid. Dit levert een reeks scores op, voor zowel de start- als de eindpositie, zoals weergegeven in de volgende tabel.

Invoergegevenssetvelden Voorverwerkte trainingsdatasetvelden voor QuestionAnsweringTrainer
id invoer_id's
titel aandacht_masker
verband start_posities
vraag eindposities
Antwoorden { answer_start, answer_text } .

Evaluatie

De compute_metrics() methode zorgt voor het berekenen van metrieken. We gebruiken de volgende populaire statistieken voor het beantwoorden van vragen:

  • Exacte overeenkomst - Meet het percentage voorspellingen dat exact overeenkomt met een van de grondwaarheidsantwoorden.
  • F1-score – Meet de gemiddelde overlap tussen de voorspelling en het grondwaarheidsantwoord. De F1-score is het harmonische gemiddelde van precisie en herinnering:
    • precisie – De verhouding tussen het aantal gedeelde woorden en het totale aantal woorden in de voorspelling.
    • Terugroepen – De verhouding tussen het aantal gedeelde woorden en het totale aantal woorden in de grondwaarheid.

Beheerde training op SageMaker

Het opzetten en beheren van aangepaste machine learning-omgevingen (ML) kan tijdrovend en omslachtig zijn. Met AWS Deep Learning-container (DLC's) voor Hugging Face Transformers-bibliotheken, hebben we toegang tot voorverpakte en geoptimaliseerde deep learning-frameworks, waardoor het gemakkelijk is om ons script over meerdere trainingstaken uit te voeren met minimale extra code.

We hoeven alleen de te gebruiken Knuffelende Gezichtsschatter beschikbaar in de SageMaker Python SDK met de volgende invoer:

# 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, )

Evalueer de resultaten

Wanneer de finetuning van de taak voor het beantwoorden van Turkse vragen is voltooid, vergelijken we de modelprestaties van de drie benaderingen:

  • Eentalig taalmodel – Het vooraf getrainde model dat is afgestemd op de Turkse vraag die tekst beantwoordt, heet bert-base-turks-uncased [8]. Het behaalt een F1-score van 75.63 en een exacte matchscore van 56.17 in slechts twee tijdperken en met 9,000 gelabelde items. Deze benadering is echter niet geschikt voor een taal met weinig middelen wanneer er geen vooraf getraind taalmodel bestaat of er weinig gegevens beschikbaar zijn om helemaal opnieuw te trainen.
  • Meertalig taalmodel met meertalig BERT – Het vooraf getrainde model heet bert-base-meertalig-uncased. Het meertalige BERT-document [4] heeft aangetoond dat het goed generaliseert over alle talen heen. Vergeleken met het eentalige model presteert het slechter (F1-score 71.73, exacte match 50:45), maar merk op dat dit model meer dan 100 andere talen aankan, waardoor er minder ruimte overblijft voor het weergeven van de Turkse taal.
  • Meertalig taalmodel met XLM-R – Het vooraf getrainde model heet xlm-roberta-base-squad2. De XLM-R-paper laat zien dat het mogelijk is om één groot model te hebben voor meer dan 100 talen zonder in te boeten aan prestaties per taal [7]. Voor de taak voor het beantwoorden van Turkse vragen presteert het beter dan de meertalige BERT- en eentalige BERT F1-scores met respectievelijk 5% en 2% (F1-score 77.14, exacte match 56.39).

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Onze vergelijking houdt geen rekening met andere verschillen tussen modellen, zoals de modelcapaciteit, gebruikte trainingsdatasets, vooraf getrainde NLP-taken, woordenschatgrootte of tokenisatie.

Aanvullende experimenten

Het meegeleverde notitieboek bevat aanvullende experimentvoorbeelden.

SageMaker biedt een breed scala aan typen trainingsinstanties. We hebben het XLM-R-model verfijnd op p3.2xlarge (GPU: Nvidia V100 GPU, GPU-architectuur: Volta (2017)), p3.16xlarge (GPU: 8 Nvidia V100 GPU's) en g4dn.xlarge (GPU: Nvidia T4 GPU, GPU-architectuur: Turing (2018)), en merkte het volgende op:

  • Trainingsduur – Volgens ons experiment had het XLM-R-model ongeveer 24 minuten nodig om te trainen op p3.2xlarge en 30 minuten op g4dn.xlarge (ongeveer 23% langer). We voerden ook gedistribueerde fijnafstemming uit op twee p3.16xgrote instanties en de trainingstijd daalde tot 10 minuten. Raadpleeg voor meer informatie over gedistribueerde training van een op transformator gebaseerd model op SageMaker: Gedistribueerde fijnafstemming van een BERT Large-model voor een vraagbeantwoordingstaak met behulp van Hugging Face Transformers op Amazon SageMaker.
  • Trainingskosten – We hebben de AWS Pricing API gebruikt om SageMaker on-demand prijzen op te halen om deze direct te berekenen. Volgens ons experiment kostte training ongeveer $ 1.58 op p3.2xlarge en ongeveer vier keer minder op g4dn.xlarge ($ 0.37). Gedistribueerde training op twee p3.16xgrote instanties met 16 GPU's kost $ 9.68.

Om samen te vatten, hoewel de g4dn.xlarge de goedkoopste machine was, duurde het ook ongeveer drie keer langer om te trainen dan de krachtigste instantie waarmee we experimenteerden (twee p3.16xlarge). Afhankelijk van uw projectprioriteiten, kunt u kiezen uit een breed scala aan typen SageMaker-trainingsinstanties.

Conclusie

In dit bericht hebben we de fijnafstemming van vooraf getrainde, op transformatoren gebaseerde taalmodellen onderzocht voor een taak voor het beantwoorden van vragen voor een mid-resource-taal (in dit geval Turks). U kunt deze aanpak toepassen op meer dan 100 andere talen met behulp van één enkel model. Op het moment van schrijven is het opschalen van een model om alle 7,000 talen van de wereld te dekken nog steeds onbetaalbaar, maar het gebied van NLP biedt een kans om onze horizon te verbreden.

Taal is de belangrijkste methode van menselijke communicatie en is een middel om waarden over te brengen en de schoonheid van cultureel erfgoed te delen. De taalkundige diversiteit versterkt de interculturele dialoog en bouwt inclusieve samenlevingen op.

ML is een zeer iteratief proces; in de loop van een enkel project trainen datawetenschappers honderden verschillende modellen, datasets en parameters op zoek naar maximale nauwkeurigheid. SageMaker biedt de meest complete set tools om de kracht van ML en deep learning te benutten. Hiermee kunt u ML-experimenten op schaal organiseren, volgen, vergelijken en evalueren.

Hugging Face is geïntegreerd met SageMaker om datawetenschappers te helpen bij het sneller en gemakkelijker ontwikkelen, trainen en afstemmen van geavanceerde NLP-modellen. We hebben verschillende voordelen aangetoond van het gebruik van Hugging Face-transformatoren op Amazon SageMaker, zoals training en experimenten op grote schaal, en verhoogde productiviteit en kostenefficiëntie.

U kunt experimenteren met NLP-taken in uw voorkeurstaal in SageMaker in alle AWS-regio's waar SageMaker beschikbaar is. De voorbeeld notebookcode is beschikbaar in: GitHub.

Zie voor meer informatie over hoe Amazon SageMaker Training Compiler de training van deep learning-modellen tot 50% kan versnellen: Nieuw – Introductie van SageMaker Training Compiler.

De auteurs spreken hun diepe waardering uit voor Mariano Kamp en Emily Webber voor het beoordelen van concepten en het geven van advies.

Referenties

  1. J. Devlin et al., "BERT: pre-training van diepe bidirectionele transformatoren voor taalbegrip", (2018).
  2. A. Vaswani et al., "Aandacht is alles wat je nodig hebt", (2017).
  3. J. Howard en S. Ruder, "Universal Language Model Fine-Tuning for Text Classification", (2018).
  4. T. Pires et al., "Hoe meertalig is meertalig BERT?", (2019).
  5. Y. Liu et al., "RoBERTa: A Robustly Optimized BERT Pretraining Approach", (2019).
  6. G. Lample en A. Conneau, "Voortraining van het model voor meerdere talen", (2019).
  7. A. Conneau et al., "Ongesuperviseerde cross-lingualrepresentatie leren op schaal", (2019).
  8. Stefan Schweter. BERTurk – BERT-modellen voor Turks (2020).
  9. Meertalige Wiki-statistieken https://en.wikipedia.org/wiki/Wikipedia:Multilingual_statistics

Over de auteurs

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.Arnav Khare is Principal Solutions Architect voor Global Financial Services bij AWS. Zijn primaire focus is het helpen van financiële dienstverleners bij het bouwen en ontwerpen van Analytics en Machine Learning-applicaties in de cloud. Arnav heeft een MSc in kunstmatige intelligentie van de Universiteit van Edinburgh en heeft 18 jaar ervaring in de sector, variërend van kleine startups die hij oprichtte tot grote ondernemingen zoals Nokia en Bank of America. Naast zijn werk brengt Arnav graag tijd door met zijn twee dochters, het vinden van nieuwe onafhankelijke coffeeshops, lezen en reizen. Je kunt me vinden op LinkedIn en in Surrey, VK in het echte leven.

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.Hasan-Basri AKIRMAK (BSc en MSc in Computer Engineering en Executive MBA in Graduate School of Business) is een Senior Solutions Architect bij Amazon Web Services. Hij is een bedrijfstechnoloog die klanten in het bedrijfssegment adviseert. Zijn specialiteit is het ontwerpen van architecturen en business cases op grootschalige dataverwerkingssystemen en Machine Learning-oplossingen. Hasan heeft bedrijfsontwikkeling, systeemintegratie en programmabeheer geleverd voor klanten in Europa, het Midden-Oosten en Afrika. Sinds 2016 begeleidde hij honderden ondernemers pro-bono bij start-up incubatieprogramma's.

Verfijn transformatortaalmodellen voor taalkundige diversiteit met Hugging Face op Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.Heiko Hotz is Senior Solutions Architect voor AI & Machine Learning en leidt de Natural Language Processing (NLP)-gemeenschap binnen AWS. Voorafgaand aan deze functie was hij Head of Data Science voor Amazon's EU Customer Service. Heiko helpt onze klanten om succesvol te zijn in hun AI/ML-reis op AWS en heeft met organisaties in veel sectoren gewerkt, waaronder verzekeringen, financiële diensten, media en entertainment, gezondheidszorg, nutsbedrijven en productie. In zijn vrije tijd reist Heiko zoveel mogelijk.

Tijdstempel:

Meer van AWS-machine learning