Worstel je met AI of full-stack ontwikkeling? Onze experts staan klaar om je te begeleiden: advies op maat, technische integratie en meer. Neem contact op met [email protected].

Meertalige Natuurlijke Taalverwerking: NLP in niet-Engelse talen

Het verwerken van natuurlijke taal in niet-Engelse talen is een uitdaging. Vandaag is het mogelijk om geweldige resultaten te behalen met meertalige natuurlijke taalverwerking. Eindelijk kan iedereen natuurlijke taalverwerking uitvoeren in het Frans, Japans, Spaans, Russisch, Chinees, Duits... en nog veel meer.

Meertalig

Waarom meertalige natuurlijke taalverwerking een uitdaging is

Vandaag de dag worden er in de wereld bijna 7000 verschillende talen gesproken! Elke taal heeft zijn eigen regels en sommige talen kunnen heel verschillend werken. Frans, Spaans en Italiaans lijken bijvoorbeeld erg op elkaar, maar ze hebben niets te maken met Aziatische talen die gebaseerd zijn op ideografieën of symbolen zoals Chinees en Japans.

Het gevolg is dat verschillende technieken moeten worden gebruikt om taalmodellen te maken die met al deze talen overweg kunnen.

Om het kort te houden: voor verschillende talen zijn wellicht verschillende vectorruimten nodig, ook al bestaan er reeds voorgetrainde taalinbeddingen. Dit is een actief onderzoeksgebied.

Dus wat zijn de oplossingen?

Opleiding van specifieke niet-Engelse modellen

Een eerste benadering is het trainen van een model voor een specifieke taal. Bijvoorbeeld, verschillende nieuwe versies van BERT zijn getraind in verschillende talen. Duits BERT, van Deepset AI, is een goed voorbeeld van een nieuwe versie van BERT getraind op de Duitse taal vanaf vanaf nul: zie Duits BERT hier.

Het probleem is dat deze techniek niet goed schaalbaar is. Een nieuw model trainen kost tijd en veel geld. Het trainen van meerdere modellen is nog steeds betaalbaar voor kleine modellen zoals spaCy, en Explosion AI (het bedrijf achter spaCy) doet een geweldige job in het onderhouden van verschillende voorgetrainde modellen in vele talen: zie meer hier. But natural language processing models are getting bigger and bigger, and training these big models is very costly. For example, training the brand new GPT models (GPT-3, GPT-J and GPT-NeoX) took several weeks and cost million dollars. Training new versions of these models is not something everybody can do.

Het is ook niet goed schaalbaar vanuit het oogpunt van inferentie. Als een bedrijf natuurlijke taalverwerking in productie moet gebruiken in verschillende talen, zal het verschillende modellen moeten onderhouden en verschillende servers en GPU's moeten voorzien. Dat kan zeer kostbaar blijken. Dit is een van de redenen waarom we bij NLP Cloud deze strategie zo veel mogelijk proberen te vermijden.

Meertalige modellen

Een tweede benadering bestaat erin gebruik te maken van meertalige modellen.

De laatste jaren zijn nieuwe meertalige modellen verschenen die zeer accuraat blijken te zijn. Soms zelfs nauwkeuriger dan specifieke niet-Engelse modellen. De populairste zijn mBERT, XLM, en XLM Roberta. XLM Roberta lijkt het nauwkeurigste meertalige model te zijn, en presteert zeer goed op de XNLI-evaluatiedataset (een reeks evaluaties om de kwaliteit van meertalige modellen te beoordelen).

Er zijn enkele zeer goede voorgetrainde modellen op basis van XLM Roberta beschikbaar. Bijvoorbeeld, voor tekstclassificatie in vele talen, is de beste XLM Roberta Large XNLI: zie dit model hier.

Op dit moment is er geen goed meertalig model voor tekstgeneratie. GPT bijvoorbeeld is uitstekend in het Engels en niet zo slecht in verschillende niet-Engelse talen, maar verre van indrukwekkend. Big Science werkt momenteel aan zeer grote meertalige tekstgeneratiemodellen. Het lijkt veelbelovend! Zie meer hier..

Big Science meertalig 176 miljard parameters transformatoren model
Big Science heeft zojuist een meertalig 176 miljard parameters transformatoren model aangekondigd

Vertaling naar de redding

De laatste strategie is het gebruik van vertalingen. Het idee is dat u uw niet-Engelse inhoud moet vertalen naar het Engels, stuur de Engelse inhoud naar het model, en vertaal het resultaat terug naar uw oorspronkelijke taal.

Deze techniek klinkt misschien als een hack, maar het heeft voordelen. Het onderhouden van een vertaalworkflow kan minder duur zijn dan het trainen van specifieke modellen, en alle talen in de wereld kunnen gemakkelijk worden ondersteund.

De laatste jaren zijn geavanceerde vertaalmodellen op basis van deep learning ontwikkeld. Ze zijn zowel snel als geven zeer goede resultaten. Helsinki NLP heeft bijvoorbeeld een reeks vertaalmodellen op basis van deep learning uitgebracht. U kunt de meest populaire gebruiken op NLP Cloud: zie meer hier.

Het toevoegen van vertalingen aan uw workflow zal de totale reactietijd echter verhogen. Dus het is misschien niet geschikt als u op zoek bent naar zeer snelle resultaten.

Conclusie

Meertalige natuurlijke taalverwerking is geen opgelost probleem, maar er is de laatste jaren veel vooruitgang geboekt. Het is nu mogelijk om natuurlijke taalverwerking in niet-Engelse talen uit te voeren met zeer goede resultaten, dankzij specifieke modellen, meertalige modellen, en vertaling.

Bij NLP Cloud geloven we dat het begrijpen en genereren van tekst in vele talen cruciaal is, daarom hebben we een specifieke add-on uitgebracht genaamd "meertalige add-on". Eenmaal ingeschakeld, kunnen al onze AI-modellen goed werken in meer dan 20 talen, waaronder GPT-modellen zoals GPT-J en GPT-NeoX: zie het hier.. We also propose advanced multilingual models like spaCy and XLM Roberta. tr%}

Julien Salinas
CTO bij NLP Cloud