Wat is Natural Language Processing? Hoe bedrijven NLP kunnen inzetten

Gepubliceerd op 28-7-2021 door Quirine Storm van Leeuwen

Natural Language Processing betekenis

Wat is Natural Language Processing?

Natural Language processing (NLP) is een tak van computerwetenschap die geschreven en gesproken taal verstaanbaar moet maken voor computers. De taal die computers het beste verstaan, bestaat uit codes, maar helaas communiceren mensen niet in code. Nou ja, een beetje dan misschien ;), maar mensen gebruiken liever natuurlijke taal. NLP is “de technologie van de natuurlijke taalverwerking die het vermogen heeft om tekst of voice om te zetten in gecodeerde, gestructureerde informatie, gebaseerd op een passende ontologie”, aldus Gartner.

In dit artikel bekijken we wat de betekenis van Natural Language Processing precies is en welke mogelijkheden het bedrijven biedt.

Machine learning is het brein achter NLP

Het schrijven van regels in code voor elke mogelijke combinatie woorden in elke taal om machines te helpen met het begrijpen van taal is een onbegonnen taak. Daarom combineert NLP computerlinguïstiek – op regels gebaseerde modellering van menselijke taal – met statistisch analyses – gebaseerd op machine learning en deep learning modellen. Deze statistische modellen dienen ervoor om een zo optimaal mogelijke benadering van de werkelijke betekenis, intentie en sentiment van de spreker of schrijver te geven op basis van statistische aannames. 

Machine learning is zeer afhankelijk van data om deze aannames te kunnen maken. Zonder data is het onmogelijk voor kunstmatige intelligentie om te leren. Een corpus van tekst of gesproken taal is dus nodig om een NLP-algoritme te trainen. 

Toepassingen van Natural Language Processing

NLP stuurt bekende computerprogramma’s aan waaronder vertaalprogramma’s als Google Translate of Deepl, spraakassistenten als Siri, Alexa of Google’s Assistent, of chatbots zoals Billie van bol.com of de Allerhande chatbot. Maar er zijn ook minder bekende toepassingen die op NLP leunen. Zo wordt er in de zorgsector NLP-technologie gebruikt om inzichten te genereren uit eerdere gegevens van patiënten. Ongestructureerde gegevens in de gezondheidszorg kunnen met NLP nauwkeurig worden georganiseerd om inzichten te genereren voor de behandeling van patiënten of om voorspellende analyses te verbeteren over de gezondheid van patiënten. 

De onafhankelijke onderzoeksorganisatie TNO gebruikt NLP om relevante informatie uit data te halen en te classificeren op onderwerp zodat ze informatie automatischerwijs uit omvangrijke en ongestructureerde tekst kunnen halen en trends of sentiment analysis kunnen ontdekken. 

Toepassingen van Natural Language Processing 

  • Automatische vertaling van de ene taal naar de andere
  • Samenvatten van tekst (handig voor extractie van relevante tekst uit grote onderzoeken bijvoorbeeld)
  • Spraakherkenning of het transcriberen van gesproken taal naar tekst (text to speech)
  • Verwoorden van geschreven tekst naar gesproken taal
  • Sentimentanalyse – hoe positief of negatief de taal is
  • Tekstclassificatie – het toewijzen van vooraf gedefinieerde categorieën aan tekstdocumenten
  • Vraag en antwoord – de bedoeling van vragen begrijpen en antwoord geven
  • Zoek-vraaganalyse en inhoudsanalyse – Het bepalen wat de intenties en behoeften van een persoon zijn tijdens de interactie met een machine (chatbot, zoekmachine, spraakassistent)
  • Spamdetectie (op te maken uit woorden, grammaticale fouten)

Verschil tussen NLP, NLU en NLG

Natural Language Processing is niet één enkele techniek, maar omvat verschillende technieken waaronder Natural Language Understanding (NLU) en Natural language Generation (NLG). Deze drie technieken gaan hand in hand. 

Natural Language Understanding

Terwijl NLP vooral het omzetten van ongestructureerde taalinput in gestructureerde data op zich neemt, neemt NLU de interpretatie en het begrijpen van taal voor zijn rekening. De grammatica en de context worden hierbij ook meegenomen zodat de intentie van de spreker ook duidelijk wordt. NLU maakt hiervoor gebruik van AI-algoritmen (algoritmen met kunstmatige intelligentie). Deze algoritmen kunnen statistische analyses uitvoeren en vervolgens overeenkomsten herkennen in nog niet geanalyseerde tekst.

Mensen zeggen of schrijven dezelfde dingen op verschillende manieren, maken spelfouten, gebruiken onvolledige zinnen of de verkeerde woorden om iets te zoeken in een zoekmachine. Met NLU kunnen computertoepassingen de bedoeling afleiden uit taal, zelfs wanneer de geschreven of gesproken taal gebrekkig is. NLP kijkt naar wat er gezegd is, en NLU kijkt naar wat er bedoeld is.

Natural Language Generation

NLP is het genereren van tekst gebaseerd op gestructureerde data. NLP kan dus ook andersom worden gebruikt, door het initiatief van de communicatie bij de computer te leggen en niet bij de mens. Zo kan NLP content briefings creëren en aangeven welke inhoud aan bod moet komen bij het schrijven over een bepaald onderwerp. Dit kan zelfs op verschillende expertniveaus of voor verschillende fases van de salesfunnel. 

Hoe werkt Natural Language Processing?

NLP bestaat uit meerdere fases. De eerste fases zijn grotendeels gericht op het omzetten van tekst in gestructureerde gegevens, terwijl de latere fases meer gericht zijn op het extraheren van betekenis. Dit proces is in 6 fases in te delen:

Wat is Natural Language Processing

6 fases in Natural Language Processing

1. Pre-processing fase

Net als bij het kaalplukken van een kip, waarbij je de kip van alle veren ontdoet en hem in mootjes hakt, gaat het er in deze fase om dat je de tekst ontdoet van alle onnodige elementen zodat het algoritme de tekst straks beter kan verteren. Dit betekent onder andere het verwijderen van accenten, HTML tags, hoofdletters, speciale tekens, geschreven nummers omzetten in de numerieke vorm, etc. 

Tokenization, wat het omzetten van tekst in kleinere eenheden (tokens) omvat, speelt hierbij een belangrijke rol.

Voorbeeld van tokenization in NLP
Voorbeeld van tokenization (Bron)

Ook het verwijderen en filteren van stopwoorden (algemene woorden die weinig nuttige informatie bevatten) en irrelevante tokens gebeurt in deze fase. 

Stopwoorden verwijderen in de pre-processing fase van NLP
Stopwoorden (Bron)

2. Morphologische of lexicale analyse 

Deze fase richt zich op de structuur en opbouw van woorden. Meerdere technieken komen hieraan te pas, waaronder stemming en lemmatization. Het doel van deze analyse is het aantal opgeslagen tokens zo veel mogelijk te beperken. Dus als er al een token is voor het werkwoord “koken”, dan kunnen er regels worden gecreëerd om ook het zelfstandig naamwoord “kok” en de vervoeging “kookt” bijvoorbeeld daaraan te verbinden. En als een werkwoord vervoegd voorkomt, kan de stam worden afgeleid. 

3. Syntactische analyse

In deze fase worden zinnen taalkundig ontleedt (parsing in het Engels) volgens de formele grammatica. Door grammaticale structuren aan te duiden wordt het mogelijk om bepaalde relaties uit teksten te halen.

Syntactische analyse
Syntactische analyse in Google Natural Language API

POS-tagging

Een van de technieken voor syntactische analyse is Part of Speech tagging (POS-tagging). POS-tagging wijst automatisch tags toe aan woorden in zinnen gebaseerd op hun rol, zoals zelfstandig naamwoord, werkwoord, bijvoeglijk naamwoord of bijwoord. Zo zie je in het bovenstaande voorbeeld dat de term “parsing” wordt aangeduid als een Noun en niet als een Verb. 

4. Semantische analyse

Dit is het proces waarin betekenis aan een tekst wordt ontleend. Met behulp van semantische analyse kunnen computers verbanden tussen woorden, zinnen en context herleiden. Hiervoor gebruikt NLP een aantal bouwstenen: entiteiten, concepten, relaties en predikaten. Deze bouwstenen worden automatisch uit een tekst gehaald met behulp van een getraind algoritme. 

Named Entity Recognition (NER)

Hieronder zien we hoe zo’n semantische analyse gaat in Google’s Natural Language API. Tussen haakjes in kleur in de tekst staan de entiteiten, dit zijn concrete individuen, organisaties, locaties (zoals Jacques Callot, Dutch Replublic). Onderaan de tekst staan de concepten waar die entiteiten toe behoren. Zo valt Rembrandt onder het concept “persoon” en de entiteit “art” onder het concept “work of art”. Dit proces heet Named Entity Recognition (NER), ofwel het identificeren van entiteiten in een tekst en deze indelen in vooraf gedefinieerde categorieën. 

screenshot entities en categorieën in Google NL API
Entiteiten en categorieën in Google NL API

Het ontdekken van semantische verbanden tussen verschillende entiteiten in een tekst is een heel belangrijke stap in NLP omdat hier betekenis mee kan worden gegeven aan taal. 

5. Discourse

Discourse integratie kijkt naar eerdere zinnen bij het interpreteren van een zin. In de volgende twee zinnen “Céline houdt veel van honden. Ze heeft er wel tien.”, wijst discourse het woord “ze” toe aan “Céline”. 

6. Pragmatiek

De laatste fase van NLP, Pragmatiek interpreteert de relatie tussen taaluitingen en de situatie waarin deze uitspraak past en het effect dat de spreker of schrijver met de taaluiting beoogd. Het beoogde effect van een zin kan soms namelijk los staan van de betekenis. Bijvoorbeeld de zin “Het kon niet beter! ” kan ook betekenen dat het slecht gaat. 

Wat bedrijven met NLP kunnen doen 

Waarom is NLP ook nuttig voor bedrijven die geen zoekmachine, chatbot of vertaaldiensten bieden? Omdat je met NLP teksten kunt indelen in vooraf gedefinieerde categorieën of specifieke informatie uit een tekst kunt halen. 

Wordcloud maken in een NLP tool
Wordcloud maken om de belangrijkste informatie uit een tekst te halen met tekst analyse tool Monkeylearn (bron)

Classificatie of gegevens extractie kunnen bedrijven helpen om betekenisvolle informatie uit ongestructureerde data te halen en daar hun werkprocessen en diensten mee te verbeteren. Hieronder volgen een aantal voorbeelden.

Gegevens extractie

Gegevens extractie helpt organisaties automatisch informatie uit ongestructureerde data te halen, met behulp van op regels gebaseerde extractie. Een voorbeeld is het filteren van facturen met een bepaalde datum of factuurnummer. Of denk aan het automatisch analyseren van e-mail bijlagen of het filteren van gegevens op onderwerpregel. Ook om correcties aan te brengen in geëxtraheerde informatie is dit nuttig.

Informatie extractie
Gegevens extractie uit facturen in de AI-tool Grooper (bron)

Topic classification

Het sorteren van tekst in vooraf gedefinieerde categorieën op basis van de inhoud (ook wel topic classification genoemd) is een toepassing van NLP die nuttig is voor de klantenservice van bedrijven. Tickets of e-mails van klanten worden automatisch geclassificeerd en in verschillende categorieën als “prijsinformatie”, “klacht”, “technisch probleem” ingedeeld. Dit helpt organisaties om hun workflows te verbeteren en een betere klantenservice te bieden omdat de klant meteen bij de juiste medewerker/afdeling terecht komt. 

Sentimentanalyse

Een ander voorbeeld van een NLP- toepassingen waar bedrijven waarde uit kunnen halen is sentimentanalyse. Sentimentanalyse wordt gebruikt om de emotionele lading van een tekst af te lezen zonder de tekst te hoeven lezen. Dit is bijvoorbeeld nuttig voor het analyseren van social media posts, e-mails of klantbeoordelingen. Het volgen van de meningen van klanten is belangrijk voor het bieden van een goede service, maar ook voor marktonderzoek of het bijhouden van de reputatie of voortgang van een merk. 

Informatie extractie
Informatie extractie uit Twitter in text-analyse tool Rapidminer (bron)

Sentimentanalyse wordt ook gebruikt voor onderzoek om een beeld te krijgen over hoe mensen denken over een bepaald onderwerp. En je kunt er open vragen in een onderzoek sneller mee analyseren. 

Het is niet perse nodig om zelf een eigen classificatiesysteem van nul te bouwen en een algoritme te trainen. Er zijn tools op de markt die sentimentanalyse bieden en elke ingevoerde tekst automatisch kunnen interpreteren op basis van bestaande corpus. Deze tools kunnen grote hoeveelheden gegevens bovendien samenvoegen en weergegeven in grafieken of diagrammen en zo de trends in klantenfeedback bijvoorbeeld duidelijk weergeven.

Sentiment analyse van klantbeoordelingen
Sentiment analyse van de reviews over een hotel in Clarabridge (bron)

Intent classificatie

Dit is het classificeren van tekst op basis van de intentie van klanten. Je kunt dit gebruiken om e-mails of gedragingen van klanten te classificeren op een schaal die gaat van niet geïnteresseerd tot geïnteresseerd. Hierdoor wordt het mogelijk om proactief klanten te bereiken die een product misschien willen proberen of op het juiste moment de juiste verkoop e-mail te sturen. 

Zo zie je dat Natural Language Processing vele toepassingen heeft voor automatisering en data-analyse. Het is een van de technologieën die de toenemende datagedreven bedrijfsvoering en hyperautomatisering aandrijft en die bedrijven kan helpen om concurrentievoordeel te behalen. 

Meer weten? Bekijk ons online overzicht met NLP-tools.

De in dit artikel geselecteerde toepassingen zijn voorbeelden om een functie in een context te tonen en zijn niet bedoeld als aanbeveling en impliceren geen goedkeuring. Ze zijn afkomstig van bronnen die op het moment van publicatie betrouwbaar werden geacht.


In dit artikel wordt er mogelijk naar producten, programma’s of diensten verwezen die niet in uw land beschikbaar zijn, of die misschien niet voldoen aan de wet- of regelgeving van uw land. Wij raden u aan om de softwareleverancier rechtstreeks te benaderen voor informatie over de beschikbaarheid van de producten en overeenstemming met lokale wetgeving.


Deel dit artikel