De markt voor natuurlijke taalverwerking is booming en er zijn recent veel nieuwe tools verschenen in het ecosysteem. Hier zijn de bibliotheken, frameworks, talen, diensten en actoren waarvan je op de hoogte moet zijn om in 2022 tekstbegrip en tekstgeneratie in je project te integreren.

Python is al vele jaren de de facto standaardtaal in data science. Als je werkt aan een project voor natuurlijke taalverwerking, zal er waarschijnlijk ergens Python-code te vinden zijn.
Python is een zeer expressieve en eenvoudige taal op hoog niveau, waardoor ze perfect geschikt is voor toepassingen op het gebied van machinaal leren. Maar nog belangrijker is dat Python profiteert van een uitgebreid ecosysteem van bibliotheken en frameworks die het leven van data scientists makkelijker maken.
Of u nu werkt aan een onderzoeksproject of een productieproject, of u nu nieuwe modellen traint of ze gebruikt voor inferentie, u zult hoogstwaarschijnlijk Python moeten gebruiken. Als u absoluut een andere taal moet gebruiken, vindt u misschien ook mooie bibliotheken in andere talen, maar alleen voor basisgebruik (voor meer geavanceerde gebruikssituaties zal de oplossing een microservices-strategie zijn en een REST API gebruiken).

Hugging Face Hub is een centrale repository waar de meeste open-source modellen voor natuurlijke taalverwerking worden opgeslagen.
Op Hugging Face is het eenvoudig om nieuwe AI-modellen te ontdekken, maar ook om de uwe te uploaden en te delen. Het is ook een geweldige plek om te browsen en datasets te vinden voor je volgende project. Modellen en datasets kunnen gemakkelijk worden gedownload en gebruikt via hun Transformers framework (zie hieronder).
De visie van Hugging Face is om natuurlijke taalverwerking te "democratiseren" en de "Github van machinaal leren" te worden.

OpenAI is het bedrijf achter GPT-3, het meest geavanceerde taal-AI-model ooit gemaakt.
De 2 eerste versies van dit model (GPT en GPT-2) waren open-source, maar OpenAI heeft besloten dat GPT-3 niet meer open-source zal zijn. Als u GPT-3 wilt gebruiken, moet u zich abonneren op de OpenAI API. Alleen Microsoft heeft toegang tot de broncode van GPT-3 omdat zij een exclusieve licentie hebben gekocht.
De GPT-modellen zijn AI-tekstgeneratiemodellen die zeer goed zijn in het schrijven van tekst als een mens. Het is eigenlijk heel moeilijk voor een mens om te detecteren of een stuk tekst geschreven is door een echte persoon of door GPT-3...
Het heeft OpenAI miljoenen dollars gekost om deze nieuwe AI te ontwerpen en te trainen. Als je hem wilt gebruiken, zul je een veeleisend validatieproces moeten doorlopen, aangezien OpenAI niet toestaat dat alle soorten toepassingen hun model gebruiken.
Om de achterstand op OpenAI in te lopen, worden nu nieuwe open-source modellen uitgebracht, zoals GPT-J en GPT-NeoX.

Dit zijn wij!
NLP Cloud is een API waarmee u gemakkelijk de meest geavanceerde AI-modellen voor natuurlijke taalverwerking in productie kunt nemen.
U kunt bijvoorbeeld tekst genereren met GPT-J en GPT-NeoX, inhoud samenvatten met Facebook's Bart Large CNN, een stuk tekst classificeren met Roberta, entiteiten extraheren met spaCy, inhoud vertalen met Opus MT... en nog veel meer.
Op NLP Cloud is het ook mogelijk om uw eigen AI te trainen en te verfijnen, of uw eigen in-house modellen in te zetten. Als u bijvoorbeeld uw eigen medische chatbot wilt maken op basis van GPT-J, hoeft u alleen maar uw dataset te uploaden die bestaat uit uw eigen voorbeelden uit uw branche, vervolgens het trainingsproces te starten en uw uiteindelijke model in productie te gebruiken via de API.

Deepspeed is een open-source raamwerk van Microsoft dat zich richt op modelparallellisatie.
Wat betekent het precies?
AI-modellen worden steeds groter (zie GPT-3, GPT-J, GPT-NeoX 20B, T0, Fairseq 13B...). Deze enorme modellen openen de deur naar tal van nieuwe toepassingen, maar ze zijn ook zeer moeilijk te draaien.
Het trainen van deze modellen, en ze betrouwbaar in productie draaien voor inferentie, kan ofwel door verticale schaalbaarheid (met behulp van enorme GPU's zoals NVIDIA A100 of Google TPU's) of horizontale schaalbaarheid (met behulp van meerdere kleine GPU's in parallel) worden gedaan.
De tweede benadering wordt steeds populairder omdat het goedkoper is en beter schaalbaar. Niettemin, het uitvoeren van gedistribueerde opleiding en inferentie is verre van eenvoudig, dat is waarom Deepspeed echt helpt.
Deepspeed was oorspronkelijk gericht op trainingstaken, maar wordt nu meer en meer gebruikt voor inferentie omdat het gemakkelijk te gebruiken is en integreert met Hugging Face Transformers (zie hieronder).

Big Science is een collectief van onderzoekers en bedrijven die werken aan grote taalmodellen.
Hun eerste workshop leverde een AI-model op, T0 genaamd, dat zeer goed presteert in het begrijpen van menselijke instructies.
Zij werken nu aan veel grotere modellen: hun doel is open-source meertalige AI-modellen te maken die groter en geavanceerder zijn dan GPT-3.

SpaCy is een Python framework voor natuurlijke taalverwerking dat perfect geschikt is voor productie: het is zowel snel als gemakkelijk om mee te spelen.
Dit is een raamwerk dat wordt onderhouden door een Duits AI bedrijf genaamd Explosion AI.
SpaCy is zeer goed in Named Entity Recognition (ook wel bekend als entiteit extractie), en in ongeveer 50 verschillende talen. Ze bieden voorgetrainde modellen en je kunt gemakkelijk je eigen modellen maken met behulp van geannoteerde voorbeelden.
Het Transformers framework is een paar jaar geleden uitgebracht door Hugging Face. De meeste geavanceerde natuurlijke taalverwerkingsmodellen zijn nu gebaseerd op Transformers.
Dit is een Python-module die gebaseerd is op PyTorch, Tensorflow en Jax, die zowel voor training als voor inferentie kan worden gebruikt.
Hugging Face Transformers maken het heel gemakkelijk om modellen te downloaden en te uploaden naar de Hugging Face Hub.
De tokenizers bibliotheek van Hugging Face is een set van geavanceerde natuurlijke taalverwerkings tokenizers, gebruikt door transformer-gebaseerde modellen.
Tokenization gaat over het opsplitsen van een ingevoerde tekst in kleine woorden van subwoorden die dan door het AI-model kunnen worden gecodeerd en verwerkt.
Tokenization klinkt misschien als een detail, maar dat is het niet. Het is eigenlijk een cruciaal onderdeel van natuurlijke taalverwerking, en het gebruik van de juiste tokenizer maakt een enorm verschil in termen van kwaliteit van de resultaten en prestaties.
NLTK staat voor Natural Language Toolkit. Het is een Python framework dat al vele jaren bestaat en dat zeer geschikt is voor onderzoek en onderwijs.
NLTK is geen productie-georiënteerd raamwerk, maar het is perfect voor data wetenschappers die proberen op te schieten met natuurlijke taalverwerking.
Het gebied van natuurlijke taalverwerking is in 2021 aanzienlijk geëvolueerd. Vandaag de dag willen steeds meer bedrijven taal-AI-modellen in productie gebruiken, en het is interessant om te zien dat het ecosysteem in 2022 vrijwel niets meer te maken heeft met wat het 5 jaar geleden was.
De bibliotheken en raamwerken worden steeds geavanceerder, en de ontwikkeling van grote taalmodellen zoals GPT-3 brengt nieuwe interessante uitdagingen met zich mee.
Ik kan niet wachten om te zien hoe 2023 eruit zal zien!
Julien Salinas