Ontdek wat je klanten denken met 5 regels Python
Zonder dat je het wellicht weet bezit ook jouw organisatie een schat aan data. Denk aan interne communicatie, e-mails en je social media uitingen. Een relatief eenvoudige methode om waarde uit deze data te halen is sentimentanalyse.
Sentimentanalyse is een AI-techniek die helpt bij het categoriseren de stemming in een stuk tekst. Het is een vorm van tekstclassificatie, waarbij een algoritme bepaalt of de uitgedrukte mening in deze tekst het label "positief", "negatief" of "neutraal" moet krijgen. Deze labels kunnen daarna verzameld en vergeleken worden om te achterhalen hoe positief mensen over een bepaald onderwerp zijn.
Bedrijven gebruiken het bijvoorbeeld om klantenfeedback over producten en diensten te begrijpen, en overheden en organisaties om een gevoel te krijgen van de publieke opinie. Het gaat dus niet alleen om begrijpen hoeveel mensen praten over je merk of product, maar hoe ze zich erover voelen.
Veel social media management tools bevatten dit soort AI-technieken al, maar deze zijn vaak enorm prijzig en niet zo transparant. Maar wist je dat met slechts 5(!) regels Python je eigen sentimentanalyse uit kan voeren. Het enige wat je hiervoor nodig hebt zijn de transformers van HuggingFace.
Huh wat, transformers, HuggingFace? Lees verder en ontdek hoe dit werkt!
Ok, wat zijn die transformers van HuggingFace eigenlijk?
Huggingface is precies wat OpenAI - de maker van chatGPT - ooit beloofde te zijn: een open organisatie die AI-modellen toegankelijk wil maken voor de hele wereld.
Wat begon als een leuke chatbot, is nu een open-source platform genaamd Transformers, waar iedereen machine learningmodellen kan delen. Grote techbedrijven zoals Facebook en Microsoft zijn ook betrokken, en hun platform breidt zich uit naar verschillende toepassingen zoals natuurlijke taalverwerking, computervisie en audio.
Het mooie van de Transformers van HuggingFace is dat ze flexibel zijn en werken met verschillende frameworks. Door het gebruiksgemak en uitgebreide karakter is het de favoriet van veel onderzoekers, ontwikkelaars en bedrijven.
Aan de slag met Sentimentanalyse
Nu je weet wat sentimentanalyse en Hugging Face zijn, is het tijd om code te schrijven. We zullen Python en de Hugging Face transformers-library gebruiken om een eenvoudige sentimentanalyse te bouwen.
Als je dat nog niet hebt gedaan, is het eerste wat je moet doen Python installeren. Installeer daarna de transformers-library met deze opdracht in je terminal/CMD:
$ pip install transformers
Nadat de installatie is voltooid, kun je beginnen met het gebruiken van de transformers library, kun je een sentimentanalyse uitvoeren met de 5 regels Python:
# 1.Laad de pipelinefunctie in vanuit de transformers library
from transformers import pipeline
# 2. Maak een pipeline aan voor sentimentanalyse met een nederlands sentimentanalysemodel
sentiment_pipeline = pipeline("sentiment-analysis", "DTAI-KULeuven/robbert-v2-dutch-sentiment")
# 3. Creëer de data om te analyseren
data = [
'Ik vond deze film helemaal niet leuk',
'Wat een geweldige film!',
'Het acteerwerk was niet erg overtuigend',
'onverwacht einde zeg'
]
# 4. Voer een analyse uit
resultaat = sentiment_pipeline(data)
# 5. Print het resultaat
print(resultaat)
Zoals je ook in de comments kunt lezen, doet de code het volgende:
De uitvoer van deze code is als volgt:
[
{'label': 'Negative', 'score': 0.9997559189796448},
{'label': 'Positive', 'score': 0.9995719790458679},
{'label': 'Negative', 'score': 0.9997883439064026},
{'label': 'Negative', 'score': 0.957145631313324}
]
Zoals je ziet, geeft het model een label voor allevier de opgegeven teksten, met daarbij de zekerheid van het het gevonden label. Het eerste wat mij opvalt is dat de opmerking ‘Onverwacht einde zeg’ het label "negatief" krijgt, terwijl een onverwacht einde vaak juist positief bedoeld wordt.
Een belangrijk onderdeel bij het maken van een AI-oplossing is het testen en valideren van je model. Zo kun je er achter komen in hoeveel van de gevallen het model een juiste voorspelling maakt. In een later artikel kom ik hierop terug!