Exploring Functional Shifts in Pos Tagging Across Various NLP Libraries: A Study of NLTK, spaCy and Textblob
Deze studie vergelijkt de prestaties van NLTK, TextBlob en spaCy bij het verwerken van garden path-zinnen veroorzaakt door functionele verschuivingen, waarbij wordt vastgesteld dat spaCy de andere twee bibliotheken aanzienlijk overtreft op het gebied van syntactische nauwkeurigheid en inzichten biedt voor het verbeteren van NLP-tools, inclusief die voor Afrikaanse talen.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je een robot leert om een verhalenboek te lezen. Je wilt dat de robot niet alleen de woorden begrijpt, maar ook hoe die woorden zich in een zin gedragen. Is "run" een commando om snel te bewegen, of is het een zelfstandig naamwoord dat een lange periode van tijd beschrijft? In de wereld van de informatica wordt deze taak Part-of-Speech (POS) tagging genoemd. Het is als een digitale markeerstift die elk woord in een zin inkleurt om aan te geven of het een zelfstandig naamwoord, een werkwoord, een bijvoeglijk naamwoord of iets anders is. Dit lijkt voor ons mensen eenvoudig, maar voor computers wordt het lastig wanneer woorden halverwege een zin van kostuum wisselen. Dit wordt een functionele verschuiving genoemd. Denk erbij aan een acteur die een toneelstuk begint als een koning, en dan plotseling een koksmuts opzet en begint te koken, zonder dat zijn naam verandert. De computer moet de nieuwe rol raden op basis van de andere woorden om hen heen.
Nog lastiger zijn garden path zinnen. Dit zijn zinnen die je een "tuinpad" van denken op, om je pas aan het einde te laten struikelen. Neem bijvoorbeeld: "The old man the boat." Je brein wil "old man" lezen als een persoon, maar de zin betekent eigenlijk: "De ouderen bemensen de boot." Hier is "man" een werkwoord, en geen zelfstandig naamwoord! Als een computer in de war raakt door deze wendingen, kan hij het hele verhaal verkeerd begrijpen, wat een groot probleem is voor zaken als vertaalapps of zoekmachines. Daarom testen wetenschappers voortdurend verschillende computerprogramma's om te zien welke het beste is in het opsporen van deze sluwe woordveranderingen.
In dit onderzoek besloot een onderzoeker genaamd Kayode Victor Amusan om drie populaire computerprogramma's — NLTK, TextBlob en SpaCy — op de proef te stellen. Stel je deze drie voor als verschillende studenten in een taalklas. De leraar (de onderzoeker) gaf hen een stapel van 56 lastige zinnen die ontworpen waren om hen in verwarring te brengen. Deze zinnen bevatten garden path-puzzels, woorden die in zelfstandige naamwoorden waren veranderd (zoals "singing" dat een ding werd dat je doet), en woorden die van positie veranderden om hun betekenis te veranderen. Het doel was simpel: kijken welke student correct kon identificeren welke rol elk woord in de zin speelde.
De resultaten waren een beetje als een race waarbij één hardloper duidelijk voorop liep. Van de 56 lastige zinnen had SpaCy er 32 goed. NLTK en TextBlob eindigden gelijk op de tweede plaats, maar ze hadden er elk slechts 21 goed. Dit betekent dat SpaCy aanzienlijk beter was in het begrijpen van de "kostuumwisselingen" van woorden in complexe zinnen.
De studie keek nauwgezet naar specifieke voorbeelden om te zien waar de programma's de mist in gingen. Neem bijvoorbeeld het woord "round". Het kan een cirkel zijn (zelfstandig naamwoord), een vorm (bijvoeglijk naamwoord), een werkwoord dat draait of een bijwoord dat betekent dat men in een cirkel beweegt. In zinnen als "The earth turns round once," identificeerde SpaCy "round" correct als een bijwoord. Echter, NLTK en TextBlob raakten in de war en bestempelden het als een zelfstandig naamwoord. Vergelijkbaar met het woord "that", dat een voornaamwoord, een voegwoord of een bijvoeglijk naamwoord kan zijn: SpaCy liet zien dat het in bijna elke context het verschil kon zien, terwijl de andere twee bibliotheken het vaak niet haalden.
De onderzoeker stelde vast dat hoewel alle drie de programma's worstelden met de meest verwarrende garden path-zinnen (zoals "The complex houses married and single students"), SpaCy er nog steeds meer van de anderen goed wist te krijgen. Bijvoorbeeld, in een zin waarin "houses" eigenlijk een werkwoord is (betekenis: huisvesten), was SpaCy eerder geneigd te begrijpen dat het geen gebouw was. De studie suggereert dat hoewel NLTK en TextBlob goed zijn voor algemene taken, SpaCy het sterkere hulpmiddel is wanneer de taal ingewikkeld wordt en woorden van rol verschieten.
Het artikel beweert niet dat SpaCy perfect is of dat het probleem is opgelost. Sterker nog, het wijst erop dat zelfs SpaCy 24 zinnen van de 56 fout had. Het suggereert simpelweg dat als je wilt dat een computer lastige, kronkelige zinnen afhandelt, SpaCy momenteel de meest betrouwbare keuze is van de drie. De onderzoeker hoopt dat deze informatie leraren, studenten en andere wetenschappers helpt om betere hulpmiddelen te bouwen voor het begrijpen van menselijke taal, en misschien zelfs helpt toekomstige programma's om Afrikaanse talen met dezelfde gemak te leren spreken.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.