Tuple Logo
natural-language-processing-nlp

SHARE

Natural language processing (NLP)

Wat is natural language processing?

Natural language processing (NLP) is het deel van artificial intelligence (AI) dat computers leert om menselijke taal te begrijpen, te interpreteren en zelf te produceren. Menselijke taal is rommelig. Woorden hebben meerdere betekenissen. Zinnen kun je op verschillende manieren lezen en veel hangt af van de context. Computers werken juist met getallen en vaste logica. NLP slaat de brug daartussen. Het zet geschreven en gesproken taal om in iets wat een computer kan verwerken. Daarna zet het de uitkomst weer om in taal die mensen begrijpen.

NLP wordt meestal opgesplitst in twee delen:

Moderne NLP leunt sterk op machine learning en deep learning. Large language models zoals GPT, Claude en Gemini zijn daar het bekendste resultaat van. Maar NLP is veel breder dan chatbots. Het gaat van simpel trefwoorden uit een tekst halen tot speech recognition en machine translation.

Waarom natural language processing belangrijk is

Het grootste deel van de data binnen organisaties bestaat uit ongestructureerde tekst. Denk aan e-mails, contracten, rapporten, chatgesprekken, reviews en berichten op social media. Zonder NLP is die informatie lastig te doorzoeken, te meten of iets mee te doen. NLP maakt het op grote schaal bruikbaar. De voordelen vallen grofweg in vier groepen.

Herhalend werk automatiseren

Tekst lezen, sorteren en doorsturen kost veel tijd. NLP-systemen kunnen binnenkomende mails indelen, gegevens uit facturen halen en standaardvragen van klanten beantwoorden. Zo houden mensen tijd over voor werk waar echt menselijk oordeel voor nodig is.

Ongestructureerde data bruikbaar maken

NLP vindt binnen een paar minuten patronen in duizenden documenten. Sentiment analysis laat zien hoe klanten over een product denken. Topic modelling laat zien waar mensen het eigenlijk over hebben. Losse tekst wordt zo inzicht waar je beslissingen op kunt baseren.

Slimmer zoeken

Traditionele zoekfuncties zoeken op letterlijke woorden. Zoeken met NLP snapt wat je bedoelt. Typ “hoe zeg ik mijn abonnement op” en een goed systeem vindt de juiste pagina, ook als daar “contract beëindigen” staat. Dit heet semantic search.

Tekst maken en bewerken

NLP kan schrijven, herschrijven, samenvatten en vertalen. Van productomschrijvingen en conceptmails tot samenvattingen van lange rapporten. Iemand moet het resultaat nog wel controleren. Maar de eerste versie staat er in een paar seconden.

Een korte geschiedenis van NLP

NLP is ouder dan de meeste mensen denken. De wortels gaan terug tot de jaren vijftig en het vakgebied heeft drie grote fases doorgemaakt.

Symbolische NLP (jaren vijftig tot begin jaren negentig)

In 1950 bedacht Alan Turing wat later de Turing test werd: kan een machine een gesprek voeren dat niet van een menselijk gesprek te onderscheiden is? Vier jaar later vertaalde het Georgetown-IBM-experiment automatisch ruim zestig Russische zinnen naar het Engels. Onderzoekers dachten dat machine translation binnen een paar jaar opgelost zou zijn.

Het duurde veel langer. De eerste systemen draaiden op handgeschreven regels en woordenboeken. ELIZA, halverwege de jaren zestig gebouwd aan het MIT, deed alsof het een therapeut was. Het programma kaatste de woorden van de gebruiker terug met simpele patronen. Dat leek overtuigend, maar het begreep er niets van. Rules-based systemen werkten goed binnen een klein domein. Zodra taal onvoorspelbaar werd, liepen ze vast.

Statistische NLP (jaren negentig tot begin jaren tien)

Computers werden sneller en er kwam steeds meer digitale tekst beschikbaar. Daardoor veranderde de aanpak. In plaats van regels te volgen, gingen computers patronen leren uit data. Modellen op basis van kansberekening, zoals hidden Markov models, voorspelden welke uitleg van een woord of zin het meest waarschijnlijk was. Statistical machine translation, getraind op grote verzamelingen vertaalde teksten, verving de meeste rules-based vertaalsystemen.

Neurale NLP (vanaf de jaren tien)

Neural networks zorgden voor de volgende grote stap. Word embeddings zoals word2vec zetten woorden om in vectoren. Woorden met een vergelijkbare betekenis kwamen zo dicht bij elkaar te liggen. Recurrent neural networks lazen tekst woord voor woord en onthielden wat eerder kwam.

De echte doorbraak kwam in 2017 met de transformer. Een transformer kijkt naar alle woorden in een zin tegelijk. Een attention mechanism bepaalt welke woorden met elkaar te maken hebben. Modellen als BERT en GPT zijn op dit ontwerp gebouwd, net als de large language models van nu.

Hoe natural language processing werkt

De meeste NLP-systemen volgen grofweg hetzelfde proces. Ruwe taal gaat erin, wordt opgeschoond en omgezet in getallen. Daarna doet een model er iets nuttigs mee. Dit zijn de belangrijkste stappen.

Tekst voorbewerken

Ruwe tekst zit vol ruis. Voorbewerken maakt de tekst consistent en makkelijker te analyseren. Veelgebruikte stappen zijn:

Moderne deep learning-modellen hebben minder voorbewerking nodig dan oudere modellen. Tokenization is wel altijd nodig.

Feature extraction

Computers kunnen geen woorden lezen. Ze hebben getallen nodig. Bij feature extraction wordt tekst omgezet in een vorm waar een model mee kan rekenen.

Oudere methodes tellen gewoon. Bag of words houdt bij hoe vaak elk woord in een tekst voorkomt. TF-IDF gaat een stap verder en geeft extra gewicht aan woorden die typisch zijn voor één bepaald document. Moderne methodes gebruiken embeddings: vectoren die betekenis en context vastleggen. In zo’n ruimte liggen “koning” en “koningin” dicht bij elkaar. “Koning” en “fiets” liggen ver uit elkaar.

Het model trainen

Daarna leert een model van voorbeelden. Bij supervised learning krijgt het gelabelde data, zoals duizenden reviews die als positief of negatief zijn gemarkeerd. Het model leert dan zelf het label te voorspellen. Bij self-supervised learning, de manier waarop large language models worden gebouwd, leert het model door ontbrekende of volgende woorden te voorspellen in enorme hoeveelheden tekst zonder labels.

Na deze eerste training wordt een model vaak nog gefinetuned op een kleinere, specifieke dataset. Zo past het zich aan een bepaalde taak of vakgebied aan, zoals juridische documenten of medische dossiers.

Analyse en output

Tot slot wordt het getrainde model losgelaten op nieuwe tekst. Afhankelijk van de taak is de output een label (spam of geen spam), losse gegevens (namen, datums, bedragen), een vertaling of een volledig geschreven antwoord. In de praktijk gaat die output vaak door naar andere systemen, zoals een CRM, een dashboard of een geautomatiseerde workflow.

Aanpakken binnen NLP

Er zijn drie grote aanpakken binnen NLP. Ze zijn na elkaar ontstaan, maar alle drie worden nog steeds gebruikt. In de tabel hieronder zie je hoe ze zich tot elkaar verhouden.

Aanpak

Hoe het werkt

Sterke punten

Zwakke punten

Rules-based

Handgeschreven grammaticaregels, patronen en woordenlijsten

Voorspelbaar, transparant, geen trainingsdata nodig

Star, lastig op te schalen, loopt vast op onverwachte input

Statistisch

Leert kansen en patronen uit gelabelde data

Flexibel, kan beter met variatie omgaan

Heeft goede trainingsdata en handmatig gekozen features nodig

Deep learning

Neural networks leren direct van grote datasets

Hoogste nauwkeurigheid, snapt context en nuance goed

Vraagt veel data en rekenkracht, lastiger uit te leggen

Rules-based NLP

Rules-based systemen volgen instructies die mensen hebben geschreven. Een regel kan zijn: staat er “terugbetaling” en “bestelling” in een bericht, stuur het dan naar het retourteam. Reguliere expressies zijn een bekend voorbeeld. Die worden nog veel gebruikt om vaste formaten uit tekst te halen, zoals postcodes, IBAN-nummers of telefoonnummers.

Het voordeel is controle. Je weet precies waarom het systeem doet wat het doet. Het nadeel is dat taal eindeloos varieert. Geen enkele set regels dekt alle gevallen.

Statistische NLP

Statistische NLP gebruikt klassieke machine learning-algoritmes, zoals Naive Bayes, logistische regressie en support vector machines. Het model leert uit voorbeelden welke patronen bij welke uitkomst horen. Voor veel classificatietaken werkt dat goed en het vraagt weinig rekenkracht.

Deze modellen zijn nog steeds een goede keuze bij kleinere datasets. Of als je snel een eerste model wilt dat je goed kunt uitleggen.

Deep learning-NLP

Deep learning gebruikt neural networks met veel lagen. Recurrent neural networks (RNN’s) en de verbeterde versie daarvan, LSTM’s, lezen tekst op volgorde. Dat was een grote stap vooruit. Bij lange teksten hebben ze het wel lastig, omdat informatie van het begin langzaam wegzakt.

Transformers losten dat probleem op. Ze verwerken alle woorden tegelijk. Daardoor kunnen ze beter met lange teksten omgaan en trainen ze veel sneller op grote datasets. Er zijn drie soorten transformermodellen. Encoder models zoals BERT zijn sterk in tekst begrijpen en indelen. Decoder models zoals GPT blinken uit in tekst maken. Encoder-decoder models zoals T5 zijn erg geschikt voor vertalen en samenvatten.

In de praktijk combineren veel systemen meerdere aanpakken. Een taalmodel schrijft bijvoorbeeld een antwoord, terwijl een set regels checkt of dat antwoord aan bepaalde eisen voldoet.

Veelvoorkomende NLP-taken

NLP is niet één taak. Het is een verzameling taken. Sommige gaan over de opbouw van taal, andere over betekenis. Complexere toepassingen combineren er meerdere.

Syntactic tasks

Syntax gaat over hoe zinnen in elkaar zitten. Deze taken vormen de basis voor het meeste andere NLP-werk. De bekendste zijn:

Semantic tasks

Semantiek gaat over betekenis. Deze taken helpen een systeem snappen wat een tekst eigenlijk zegt. Belangrijke voorbeelden zijn:

Toepassingen op hoger niveau

Bovenop deze bouwstenen zitten de toepassingen die de meeste mensen kennen. De tabel hieronder geeft een overzicht.

Toepassing

Wat het doet

Voorbeeld

Sentiment analysis

Herkent emotie of mening in een tekst

Klanttevredenheid meten aan de hand van reviews

Text classification

Deelt een tekst in bij een of meer categorieën

Spamfilters, supporttickets doorsturen

Machine translation

Vertaalt tekst van de ene naar de andere taal

Productpagina’s vertalen voor andere markten

Summarization

Brengt een lange tekst terug tot de kern

Rapporten of notulen samenvatten

Question answering

Zoekt of formuleert een antwoord op een vraag

Chatbots, interne kennisbanken

Speech recognition

Zet gesproken taal om in tekst

Voice assistants, automatische ondertiteling

Text generation

Schrijft nieuwe tekst die natuurlijk leest

Conceptmails, productomschrijvingen

NLP-toepassingen per sector

NLP wordt in bijna elke branche gebruikt. De precieze toepassingen verschillen, maar de rode draad is steeds hetzelfde: veel tekst die snel en goed verwerkt moet worden.

Financiële sector

Banken en beleggers gebruiken NLP om nieuws, jaarverslagen en gesprekken over kwartaalcijfers te scannen op signalen die de markt kunnen raken. Compliance-teams houden er interne communicatie mee in de gaten op risicovol gedrag. NLP versnelt ook klantonderzoek, doordat documenten automatisch gelezen en gecontroleerd worden.

Zorg

Een groot deel van de medische informatie staat in vrije tekst, zoals aantekeningen van artsen en ontslagbrieven. NLP haalt daar diagnoses, medicijnen en klachten uit. Dat helpt bij onderzoek, het coderen van zorg en het nemen van beslissingen. Met speech recognition kunnen artsen hun aantekeningen inspreken in plaats van typen. Dat scheelt veel tijd.

Verzekeringen

Verzekeraars krijgen een constante stroom aan claims, rapporten en brieven. NLP leest schadeformulieren, haalt de belangrijkste gegevens eruit en stuurt elke claim naar het juiste team. Het kan ook claims markeren met een afwijkend patroon. Dat helpt bij het opsporen van fraude.

Juridisch

Juridisch werk draait om grote hoeveelheden tekst. NLP helpt bij het nakijken van contracten door specifieke clausules, afwijkingen van standaardvoorwaarden en belangrijke deadlines te vinden. Bij rechtszaken doorzoekt het duizenden documenten op relevant bewijs. Werk dat vroeger weken duurde, kan nu in een paar dagen.

Klantenservice en marketing

Chatbots en virtuele assistenten beantwoorden veelgestelde vragen, dag en nacht. Binnenkomende tickets worden automatisch ingedeeld en op urgentie gezet. Marketingteams gebruiken sentiment analysis om bij te houden hoe mensen over een merk praten op social media en in reviews.

Uitdagingen van natural language processing

NLP is enorm verbeterd, maar het is verre van perfect. Taal blijft een van de lastigste dingen voor een computer. Dit zijn de belangrijkste uitdagingen.

Dubbelzinnigheid en context

Neem de zin “Ik zag de man met de verrekijker.” Wie heeft de verrekijker? Mensen weten dat meteen dankzij context en kennis van de wereld. Voor een computer is dat veel moeilijker. Hetzelfde geldt voor woorden met meerdere betekenissen en verwijzingen die alleen kloppen als je eerder in het gesprek hebt opgelet.

Bias in trainingsdata

NLP-modellen leren van tekst die door mensen is geschreven, inclusief hun vooroordelen. Een model kan bepaalde beroepen bijvoorbeeld aan een bepaald geslacht koppelen. Dat wordt een echt probleem als NLP wordt ingezet voor beslissingen over mensen, zoals het selecteren van cv’s. Zorgvuldig gekozen data, goed testen en blijven controleren helpen om dat risico kleiner te maken.

Toon, sarcasme en nieuwe woorden

“Top, alweer vertraging” is geen positieve opmerking, maar een simpel model kan dat wel denken. Sarcasme, ironie en humor zijn lastig te herkennen. Taal verandert ook continu. Er komen steeds nieuwe woorden, straattaal en emoji bij. Modellen moeten daarom regelmatig bijgewerkt worden.

Kleinere talen en dialecten

De meeste trainingsdata is Engels. Daardoor werken NLP-systemen meestal het best in het Engels en minder goed in andere talen. Dat speelt zeker in Europa, waar alleen de EU al 24 officiële talen heeft, naast veel streektalen en dialecten. Multilingual models hebben het gat kleiner gemaakt, maar het is er nog steeds.

Hallucinations

Generatieve modellen kunnen output geven die heel zeker klinkt, maar gewoon fout is. Een model kan een bron noemen die niet bestaat of een getal verzinnen. In vakgebieden zoals recht en zorg is controle door een mens daarom onmisbaar.

Privacy en regelgeving

Tekst bevat vaak persoonsgegevens. Het verwerken daarvan valt onder de AVG, die duidelijke regels stelt over wat je met die gegevens mag doen en waar je ze mag opslaan. De AI Act voegt daar eisen voor AI-systemen aan toe. Voor toepassingen met een hoog risico, zoals werving en selectie, gelden strengere regels. Organisaties moeten weten waar hun data naartoe gaat. Zeker als ze clouddiensten gebruiken die buiten de EU zitten.

Tools en software voor NLP

Python is veruit de populairste programmeertaal voor NLP. Er is een groot aanbod aan gratis libraries en een actieve community. De bekendste tools zijn:

Niet iedereen wil zelf code schrijven. Grote cloudaanbieders zoals Google, Amazon en Microsoft bieden kant-en-klare NLP-diensten aan via API’s. Dat geldt ook voor aanbieders van large language models. Met zulke diensten voeg je sentiment analysis, machine translation of named entity recognition toe aan een applicatie, zonder zelf een model te trainen.

De beste keuze hangt af van wat je wilt bereiken. NLTK is een goede plek om de basis te leren. spaCy past bij betrouwbare toepassingen in productie. Hugging Face geeft je de meest geavanceerde modellen. Cloud-API’s zijn de snelste manier om te starten, al lever je wel wat controle over je data in.

De toekomst van NLP

NLP ontwikkelt zich snel. Een paar trends bepalen duidelijk de richting.

Modellen worden multimodaal. Ze combineren tekst met spraak, beeld en video, zodat je bijvoorbeeld een vraag kunt stellen over een foto of een opname. Tegelijk komen er kleinere en zuinigere modellen bij. Die draaien lokaal op een laptop of telefoon. Dat is goed voor privacy en scheelt kosten.

Taalmodellen doen ook steeds meer dan alleen vragen beantwoorden. Ze kunnen taken uitvoeren, zoals informatie opzoeken, formulieren invullen of samenwerken met andere software. In Europa is er steeds meer aandacht voor modellen die goed werken in kleinere talen en die passen binnen de Europese regels.

Eén vraag blijft open: begrijpen deze modellen taal echt? Onderzoekers in de taalkunde en cognitiewetenschap zijn het daar niet over eens. Sommigen zeggen dat woorden voorspellen niet hetzelfde is als begrijpen. Anderen wijzen erop dat de grens tussen die twee niet altijd scherp is. Die discussie gaat de komende jaren bepalen hoe we naar NLP kijken.

Computers leren onze taal spreken

Natural language processing zorgt ervoor dat computers kunnen werken met de meest menselijke vorm van data die er is: taal. Wat begon met handgeschreven regels, is uitgegroeid tot systemen die vertalen, samenvatten, analyseren en schrijven.

Voor organisaties maakt NLP de waarde zichtbaar die verborgen zit in e-mails, documenten en klantfeedback. Tegelijk vraagt het om zorg. Bias, fouten en privacyrisico’s zijn echt en menselijk toezicht blijft nodig. Wie zowel de mogelijkheden als de grenzen kent, haalt het meeste uit NLP.

Veelgestelde vragen
Wat is NLP?

NLP is technologie waarmee computers menselijke taal kunnen begrijpen, analyseren en zelf maken. Het zet tekst en spraak om in data waar een computer mee kan werken. Daarna zet het de uitkomst weer om in taal die mensen kunnen lezen. Spamfilters, voice assistants en vertaalapps werken allemaal met NLP.


Is NLP hetzelfde als neuro-linguistic programming?

Nee. In de techwereld staat NLP voor natural language processing, een onderdeel van artificial intelligence. Neuro-linguistic programming is een methode uit de psychologie die draait om communicatie en persoonlijke ontwikkeling. Ze delen alleen de afkorting.


Wat is het verschil tussen NLP en AI?

Artificial intelligence is het brede vakgebied waarin computers taken uitvoeren waar normaal menselijke intelligentie voor nodig is. NLP is een specifiek onderdeel van AI dat zich richt op taal. De meeste moderne NLP gebruikt machine learning, ook een onderdeel van AI, om te leren van grote hoeveelheden tekst.


Is ChatGPT een voorbeeld van NLP?

Ja. ChatGPT is gebouwd op een large language model, een van de meest geavanceerde vormen van NLP. Het combineert natural language understanding om je vraag te snappen met natural language generation om een antwoord te schrijven.


Welke programmeertaal is het best voor NLP?

Python is de meestgebruikte taal voor NLP. Je hebt toegang tot populaire libraries zoals NLTK, spaCy en Hugging Face Transformers. Daarnaast is er een grote community en veel lesmateriaal. Talen als Java en R worden ook gebruikt, maar veel minder vaak.


Waar kom je NLP tegen in het dagelijks leven?

NLP is overal om je heen. Denk aan autocorrect en predictive text op je telefoon, spamfilters in je mailbox, voice assistants, automatische ondertiteling, vertaalapps en chatbots van klantenservice. Ook zoekmachines gebruiken NLP om te snappen wat je zoekt.


Ook interessant

Nieuwsgierig geworden?

Wij vertellen je graag meer!

Contact opnemen
Tuple Logo
Veenendaal (HQ)
De Smalle Zijde 3-05, 3903 LL Veenendaal
info@tuple.nl‭+31 318 24 01 64‬
Snel navigeren
Succesverhalen