Deze blog gaat over topic analyse een deelgebied van Natural Language Processing (NLP). Jij weet nu dat de blog hierover gaat, maar een computer heeft extra hulp nodig om dit te kunnen achterhalen. Hoe dat precies zit leg ik hieronder uit.
Sommige bedrijven krijgen honderden of misschien wel duizenden klantvragen per dag. Vaak worden die vragen handmatig beoordeeld en naar de bijhorende afdeling gestuurd en dat kost veel tijd en energie. Door gebruik te maken van topic analyse is dit proces te automatiseren en te versnellen. Dan zijn het geen mensen maar modellen die de klantvraag analyseren: zowel op inhoud als op sentiment (positief, neutraal, negatief). Dat model tagt de klantvraag en zorgt dat die op de juiste afdeling terechtkomt. Hierdoor ontstaat een efficiënter proces in customer care, waarbij medewerkers meer tijd overhouden. Ook zullen er minder classificatiefouten worden gemaakt. Twee topic analyse machine learning technieken zijn topic modelling en topic classificatie.
Topic Modeling
Topic modeling is een unsupervised (ongecontroleerde) machine learning techniek: een techniek waarin het model niet getraind is. Hierbij geef je stukken tekst aan het model en dat model gaat vervolgens zelf, dus zonder verdere input van jouw kant, op zoek naar topics. Een van de meest gebruikte topic modeling methodes is Latent Semantic Analysis (LSA). LSA berekent hoe vaak woorden voorkomen in teksten en gaat ervan uit dat vergelijkbare teksten ongeveer dezelfde verdeling van woordfrequenties voor bepaalde woorden bevatten.
De standaardmethode voor het berekenen van woordfrequentie is Term Frequency – Inverse Document Frequency (TF-IDF). Met deze techniek kun je op basis van de inhoud een verzameling ongestructureerde content analyseren. De techniek herkent woorden die in de context van een artikel veel gebruikt worden en kan zo ook zelfstandig bepaalde woorden aan elkaar relateren.
Het resultaat is een verzameling van topics, waarbij ieder topic bestaat uit een lijst woorden die samenhangen met dat topic. Ieder woord binnen die lijst heeft een bepaalde score binnen dat topic; hoe hoger de score hoe sterker de relatie is.
Bijvoorbeeld: het topic “koningshuis” bevat de tags “Willem Alexander”, “Maxima”, “Oranje” en "Beatrix”. “Beatrix” scoort hier hoog omdat er een sterke relatie is tussen Beatrix en het topic Koningshuis. Oranje scoort lager, omdat Oranje ook binnen veel andere contexten gebruikt wordt, bijvoorbeeld als kleur of in relatie tot ‘ons’ voetbalteam.
Topic Classification
Topic classificatie is een supervised (gecontroleerde) machine learning techniek, waarin het model getraind wordt voordat teksten automatisch kunnen worden geanalyseerd. Daarbij geef je vooraf door jou getagde teksten aan het model: het model probeert te achterhalen waarom je ze die tag of dat topic hebt gegeven en past die kennis vervolgens toe op nieuwe teksten die je aan het model voedt.
Bij de toepassing van topic classification train je het model dus eerst door het een dataset te voeren en handmatig aan te geven waarover de tekst gaat. Daarvoor gebruik je vooraf gedefinieerde topics. Hierna kun je het model inzetten voor automatische topic classificatie met algoritmes.
Een populair machine learning systeem voor deze techniek is Naïve Bayes. Dat is een set algoritmes waarin de waarschijnlijkheid dat woorden in een tekst verschijnen correleert met de waarschijnlijkheid dat die tekst over een bepaald onderwerp gaat. Dit systeem levert geweldige resultaten bij teksten van minder dan 10.000 woorden.
Wanneer kies je welke techniek?
Je kiest voor topic modeling als je niet veel tijd hebt om teksten te analyseren, je geen haarfijne analyse nodig hebt en slechts grofweg wil weten over welke topics een tekst gaat. Je kiest voor topic classificatie als je een lijst met topics hebt voor automatische tagging of voor nauwkeurige inzichten. Let er hierbij op dat je wel eerst het model moet trainen door datasets handmatig met deze topics te taggen.
Beide technieken helpen je bedrijfsprocessen te verbeteren en te stroomlijnen, waardoor je uiteindelijk ook kosten efficiënter bent.
En, laten we eerlijk zijn, wie wil dat nou niet?