Drei Ergebnisse der automatischen Erkennung von Figurentexten in Literatur. Was diese Ergebnisse bedeutet, wird erst klar, wenn man Named Entity Recognition und Reverse Engineering zusammen denkt. #Literaturwissenschaft #NamedEntityRecognition #DigitalHumanities
Digital Humanities

Named Entity Recognition und Reverse Engineering

Wie du vielleicht weißt, beschäftige ich mich viel mit Named Entity Recognition. Ich habe ja hier auf meinem Blog zum Beispiel schon vor 5 Jahren mal ein Tutorial zur Installation des Stanford Named Entity Recognizers gemacht. Nun sitze ich ja – wie du vielleicht ebenfalls schon weißt – mit meiner Kollegin Marie Flüh zur Zeit an einem kleinen Liebhaber-Projekt, genannt m*w, das sich mit der digitalen Erforschung von Figurengender in der Literatur beschäftigt. In diesem Projekt entwickeln wir auch ein NER-Modell zur automatischen Erkennung der Genderzuschreibung von Figuren. Und siehe da, als ich neueste Traningsdaten ausgewertet hab, die übrigens Studierende aus meinem Seminar “Gender modellieren” erstellt haben, fiel mir ein interessanter Nebenbefund auf. Und da kam mir die Idee Named Entity Recognition und Reverse Engineering einfach mal zusammen zu denken.

Was ist NER

Aber erst einmal unser gewohnter Schritt zurück zu der Frage, was Named Entity Recognition überhaupt ist. Named Entity Recognition oder kurz NER ist ein Verfahren, bei dem mit Hilfe von maschinellem Lernen bestimmte Entitäten in einem Text automatisch erkannt und annotiert werden. Mit Entitäten bezeichnet man hier Dinge, die einen Namen haben können. Die klassischen Kategorien von NER sind Personen, Orte und Organisationen. Das Verfahren wurde in der Computerlinguistik entwickelt, wie du vielleicht an den linguistischen Kategorien erkannt hast. In der Literaturwissenschaft würden wir eher selten von Entitäten, Personen oder Organisationen sprechen.​(Schumacher, 2018)​

Damit sind wir schon bei einem Problem dem wir begegnen, wenn wir NER auf literarische Texte anwenden. In literarischen Texten würden wir ja eher nicht nach Personen suchen. Statt dessen nutzen wir eher das Konzept der Figur. Dieses unterscheidet sich ziemlich stark von dem der Person-als-Entität. Denn in literarischen Texten werden Figuren zwar auch mal bei ihren Namen genannt, aber sie werden auch häufig beschrieben oder bekommen Spitznamen. Ist letzteres der Fall, so bezeichnen zwei Referenzen plötzlich die gleiche Figur. Außerdem sind literarische Texte auch anders strukturiert als die Sachtexte, für die das Verfahren optimiert wurde ​(Faruqui and Padó, 2010)​. Wir müssen also Anpassungen vornehmen, wenn wir NER in der Literaturwissenschaft einsetzen wollen, wie das zum Teil auch schon gemacht wurde (Jannidis ​et al.​, 2015). Eine Möglichkeit dafür ist die Entwicklung eines eigenen Modells. Und genau das habe ich hier gemacht.

Was ist Reverse Engineering

Unter „Reverse Engineering“ versteht man den Vorgang, aus einem fertigen Produkt die einzelnen Abläufe zu rekonstruieren. Es geht darum, Black Boxes aufzubrechen und sich die Prozesse genau anzuschauen. Man guckt sich also nicht unbedingt das Ergebnis an, sondern die Prozesse gerichtet, die dazu geführt haben. Im technischen Bereich geht es dann unter anderem auch darum, das fertige Produkt nachzubauen.​(Markgraf, 2018)​ Diesen Aspekt des Reverse Engineering finde ich für unserer Fallstudie hier allerdings weniger wichtig. Schließlich stellen wir hier nicht die Technik, sondern die Datenanalyse in den Mittelpunkt. Wir betrachten also mehr das „Reverse“ als das „Engineering“.

Die Fallstudie oder: Warum Named Entity Recognition und Reverse Engineering zusammen denken?

Kommen wir also endlich zur Fallstudie und dazu, wie ich darauf gekommen bin, Named Entity Recognition und Reverse Engineering zusammen zu denken. Ich hab ja ganz am Anfang schon gesagt, um welches Projekt es geht. Wir wollen also in m*w (unter anderem) ein NER-Modell trainieren, das weibliche, männliche und neutrale Figurenbezeichnungen automatisch erkennen kann. Wir nutzen hierfür den Stanford Named Entity Recognizer ​(Finkel, Grenager and Manning, 2005)​ als Tool. Dazu habe ich mit Hilfe unserer Studierenden ein Trainingskorpus entwickelt, das derzeit 68.000 Wörter umfasst. Diese Wörter habe ich aus Passagen von Novellen des deutschen Novellenschatzes zusammengefügt. Außerdem habe ich drei Novellen als Testdaten mit den gleichen Kategorien annotiert, um das Ergebnis des Modells bewerten zu können. Und hier ist es:

Precision, Recall und F-Score – was ist das nochmal

Falls du nicht täglich mit Named Entity Recognition zu tun hast, fragst du dich vielleicht, was du mit den Werten in diesen Tabellen überhaupt anfangen sollst. Dass sie das Ergebnis einiger Berechnungen sind, mit denen man herausfinden kann, wie gut das Modell ist, ist dir wahrscheinlich schon klar. Aber was genau verbirgt sich hinter den Abkürzungen P, R und F1?

P = Precision: Berechnet man, indem man die Zahl der richtig gefundenen Vorkommnisse einer Kategorie durch die Gesamtzahl der Markierungen einer Kategorie teilt ​(Beck, 2012)​. Wurden z.B. 100 Frauenfiguren im Text markiert, davon sind aber nur 97 richtig, so ist P 97:100=0,97 oder 97%

R = Recall: Berechnet man, indem man die Zahl der richtig gefundenen Vorkommnisse einer Kategorie durch die Gesamtzahl der tatsächlichen Vorkommnisse einer Kategorie teilt ​(Beck, 2012)​. Wurden z.B. 100 Frauenfiguren im Text richtig markiert, insgesamt gibt es aber 150 Ausdrücke, die Frauenfiguren bezeichnen, so ist R 100:150=0,66 oder 66%

F1-Score: ist ein Wert mit dem beide oben genannten Werte mathematisch kombiniert werden ​(Zhang, Wang and Zhao, 2015)​ (mehr dazu findest du z.B. hier)

Die Ergebnisse der automatischen Erkennung von Figurengender unter der Lupe

Als ich das Modell am ersten Testtext ausprobierte, jubilierte mein Herz. 97% Precision bei der Erkennung weiblicher Figuren, sogar 99% bei genderneutralen Ausdrücken und 98% bei männlichen Figuren! Die Recall-Werte, die bei der literaturwissenschaftlichen Anwendung von NER oft problematisch sind (Jannidis ​et al.​, 2015) bei 83% bei weiblichen Figuren und bei 82% bei genderneutralen. Das ist schon mal ganz ordentlich. Aber was ist das? Nur 30% der Benennungen männlicher Figuren wurden gefunden? Na gut, Dank ausführlicher Lektüre gendertheoretischer Texte vor dem Training des Modells konnte ich mir das gut erklären. Denn häufig wird hier betont, dass das Männliche eigentlich die Norm und das Unmarkierte sei, die Frau hingegen das Abweichende oder Andere ​(Beauvoir, 1949)​. Die weibliche Form als Abweichung scheint also in der Literatur einfach konkreter markiert zu sein. Aber ein kleiner, nagender Zweifel war ob dieses Ausreißers doch gesät, darum führte ich den zweiten Test durch.

Du siehst es selbst oben in der Grafik schon: Der zweite Test lief nicht ganz so gut wie der erste. Statt 97% Precision bei der Erkennung nur 84%, der Recall-Wert auf 30% gesunken. Nur 30% der Bezeichnungen von Frauenfiguren wurden richtig erkannt! Statt 83! Genderneutrale Figurenbezeichnungen wurden wieder ganz gut erkannt, bei männlichen gab es wieder schlechte Recall-Werte. Insgesamt kam nur ein F1-Score von 50% heraus. Der dritte Test zeigte dann zwar ein etwas besseres Ergebnis als der zweite, aber viel besser war es nicht. Was war da los?

Abonniere
Lebe lieber literarisch

Blog und Podcast

Wöchentlich News zu den Themen Literatur, Kultur, Digital Humanities und Bloggen für Geisteswissenschaftler*innen

Invalid email address
Probiere es einfach mal aus. Du kannst dich jederzeit vom Newsletter abmelden.Bevor du dich anmeldest, lies bitte sorgfältig meine Datenschutzbestimmungen!

Manchmal muss man umdenken

Dies war der Punkt, an dem ich dachte, dass ich meine Ergebnisse vom Named Entity Recognition und Reverse Engineering Ideen verbinden musste. Ich musste versuchen, zu verstehen, wie ein und dasselbe Tool mit ein und demselben Modell so unterschiedliche Ergebnisse produzieren konnte. Dafür musste ich mir genauer ansehen, was das Tool eigentlich markiert hatte und was nicht. Denn natürlich muss der Unterschied im Text liegen.

Der Text, der die überraschend guten Ergebnisse gezeigt hat ist “Eine fromme Lüge” von Luise von Gall ​(Gall, 1910)​. Eine Geschichte über zwei Ehepaare – die einen Grafen, die anderen Pächter. Beide bekommen einen Sohn. Doch der Sohn des Grafen ist vergleichsweise kränklich. Als die Gräfin zum ersten Male von ihrem Kind fortfährt, um ihre Eltern zu besuchen, stirbt der kleine Sohn. Da der Pächtersjunge dem Grafenkind ähnlich sieht und der Graf und auch die Pächtersfamilie fürchten, die Gräfin würde von dem Verlust selbst sterben, leihen die Pächter dem Grafen ihr eigenes Kind. Als Gegenleistung verspricht der ansonsten eher um das eigene Wohl besorgte Graf, die Situation der Armen zu verbessern.

Doch die Pächtersfrau verkraftet ihre eigene Entscheidung nicht, vor allem, da sie ihr Kind gar nicht sehen darf, solange es beim Grafen weilt. Als sie ein winziges Zeitfenster erkennt, indem sie heimlich ihren Sohn besuchen könnte, leiht sie sich eine Kutsche, rast zu ihrem Kinde, hat auf dem Weg einen Unfall und stirbt. Nun wird der ganze Tausch auch der Gräfin offenbart, sie bricht zusammen und stirbt ebenfalls. Das Kind kehrt zurück zum Vater, der mit ihm nach Amerika auswandert.

Named Entity Recognition und Reverse Engineering sind zwei Konzepte, die nicht viel gemeinsam haben. Warum man sie trotzdem manchmal zusammen denken kann und ob wir bald Figuren-Gender in der Literatur automatisch erkennen könne, erfährst du hier!
#NamedEntityRecognition #MaschinellesLernen #Wissenschaft #Bildung #Literatur

Named Entity Recognition und Reverse Engineering oder wie das Tool zu dem überraschend guten Ergebnis gekommen ist

Grundsätzlich gibt es drei Hauptursachen für das gute Ergebnis der Named Entity Recognition bei der Novelle „eine fromme Lüge“ von Luise von Gall. Die erste steht in engem Zusammenhang mit der familiären Thematik. Die zweite liegt im Vokabular für Figurenbeschreibungen begründet. Und die dritte hängt mit dem verwendeten Trainingskorpus zusammen.

Die Familie im Zentrum der Novelle

Schon die kurze Zusammenfassung oben hat gezeigt, dass die Konstellation Mann-Frau-Kind als Ursprung von Familie das Hauptthema der Novelle ist. Die beiden Männer – Graf und Pächter werden vor allem in ihrer Rolle als Familienvater und Ehemann beschrieben. Die Gräfin und die Pächtersfrau als deren Ehefrauen. Die Kinder als solche. Dann gibt es noch ein paar andere Figuren, die ebenfalls in den familiären Rahmen passen, die Mutter der Gräfin z.B. oder die Schwester der Pächterin. Diener und Dienerinnen gibt es auch und auch diese werden oft genau als solche benannt. Die Figuren sind also sehr stark in ihrer jeweiligen Rolle beschrieben und weniger stark in ihrer Individualität. Wenn der Charakter einer Figur einmal in den Vordergrund tritt, wie z.B. bei der egozentrischen Gräfin, so wird dieser gleich auf Strukturen zurückgeführt, z.B. die Familienverhältnisse, in denen sie aufgewachsen ist. Diese strukturellen Muster werden vom Named Entity Recognition Modell anscheinend gut erkannt.

Das Vokabular

Was ich eben beschrieben habe steht natürlich in engem Zusammenhang mit den Wörtern, die Luise von Gall in ihrer Novelle nutzt. Die Frau des Pächters wird häufig genauso benannt. Und was könnte für einen Algorithmus leichter sein als zu erkennen, dass es sich um eine weibliche Figur handelt, wenn sie als Frau bezeichnet wird? Das gleiche gilt zwar auch für die Ehemänner, aber sehr viel weniger stark (darum werden männliche Figuren auch schlechter erkannt). Was das Modell nicht gut zuordnet, sind die Vornamen der Pächter Therese und Bernhard. Und damit sind wir schon beim dritten Grund für unser Ergebnis, nämlich der Zusammenstellung der Trainingsdaten.

Das Trainingskorpus

Das Trainingskorpus liefert dem Named Entity Recognition Modell Beispiele für die Kategorien, die das Tool erkennen soll. Gibt es für bestimmte Benennungen keine Beispiele im Trainigskorpus, so werden diese später wahrscheinlich nicht oder nur schlecht kategorisiert. In unserem Trainingskorpus kam also wohl keine Therese und kein Bernhard vor. Denn Bernhard wird nur selten (wohl anhand der Satzkonstellation), Therese fast gar nicht als Figurenname erkannt. Ok, einmal anders herum gefragt: Was kommt in den Trainingsdaten vor?

Offensichtlich die Bennenung weiblicher Figuren als Frau, männlicher als Mann und genderneutraler als Kind, denn das kann besonders gut erkannt werden. Ein ziemlich eindeutiger Hinweis für die Benennung einer weiblichen Figur ist auch die Endung -in. Darin sehe ich übrigens einen weiteren Grund dafür, dass Frauenfiguren nicht nur in dieser Novelle sondern auch in den anderen beiden Test-Texten besser erkannt werden als männliche. Zwar werden z.B. „Bauer“ und „Diener“ gut erkannt, „Graf“ und „Pächter“ hingegen nicht. Höchstwahrscheinlich kamen die beiden letzten Ausdrücke im Trainingskorpus nicht vor, die ersten allerdings schon. Natürlich gibt es noch viel mehr Beispiele, aber ich will dich hier nicht mit zu vielen davon langweilen.

Named Entity Recognition und Reverse Engineering oder warum es immer hilft, in die Daten zu schauen.

Nachdem ich mir die Ergebnisse meines Modells genauer angesehen hab, ist mir nun ziemlich klar, warum Figurengender in „eine fromme Lüge“ so gut erkannt wird. Und ich bin mir ziemlich sicher, dass es sich um einen Ausreißer handelt. Die anderen beiden Ergebnisse zeigen mir hingegen, was das von mir trainierte Tool wirklich kann. Natürlich hatte ich schon vor meinen Betrachtungen die Ahnung, dass die Figuren in irgendeiner Weise in der „frommen Lüge“ stärker ausdefiniert sein müssten. Dass es sich hierbei aber meist um schnöde Mann-Frau-Bezeichnungen handelt, hätte ich nicht vermutet, vor allem nicht ohne den Text gelesen zu haben.

Vom Testergebnis zurück zu den Texten

Der genaue Blick auf die mit Hilfe der Trainingsdaten erstellten Ergebnisse zeigt aber auch, was das Tool bereits kann. Ich habe ja schon erwähnt, dass „Therese“ im Allgemeinen schlecht als weiblicher Vorname erkannt wird, da entsprechende Beispiele im Trainingskorpus nicht vorkommen. In dem Satz „Therese, vom Wagen geschleudert, hatte wahrscheinlich schon im ersten Augenblick sich tödtlich verletzt, indem sie mit dem Kopfe aufschlug…“ wird Therese allerdings als weibliche Figur erkannt. Wahrscheinlich durch die Referenz mit dem Personalpronomen „sie“ im weiteren Satzverlauf.

Ein anderes Beispiel, in dem Therese als weibliche Figur erkannt wird, ist die Phrase „Theresens Kind“. Dieses Beispiel ist natürlich in Bezug auf die Genderthematik besonders interessant. Denn der possesive Bezug zum Kind scheint in den Trainingsdaten häufiger mit weiblichen Figuren in Verbindung gebracht worden zu sein als mit männlichen. Da ich die Trainingsdaten ja aus Ausschnitten aus 17 Novellen zusammengefügt habe, ist dies vielleicht schon ein Hinweis auf die Beschreibung weiblicher Figuren im gesamten Korpus das ich im Projekt m*w ja eigentlich untersuchen möchte.

Also: Reverse it!

Du siehst also wie aufschlussreich es sein kann, ein Verfahren wie Named Entity Recognition und Reverse Engineering ein Mal zusammen zu denken. Denn nur wenn man sich fragt, wie man eigentlich zu einem Ergebnis gekommen ist, kann man dieses auch abschließend beurteilen. Natürlich braucht man, wie diese Fallstudie zeigt, dafür auch etwas Zeit und Muße. Denn drei Testtexte annotieren sich nicht von selbst. Und natürlich müssen diese noch zusätzlich zu den Trainingsdaten erstellt werden. Wenn du aber in der Arbeit mit digitalen Methoden vermeiden möchtest, dein Tool als Black Box zu verwenden, von der du keine Ahnung hast, wie sie eigentlich funktioniert, so ist dieser Blick zurück in die Daten und damit auch in die Funktionalitäten und Prozesse des Tools unerlässlich.

[cite]

Bibliographie

  1. Beauvoir, S. (1949) Das andere Geschlecht. Reinbek: Rowohlt.
  2. Beck, S. (2012) Informationserschließung und Information Retrieval 6. Recall und Precision, FR 5.6 Informationswissenschaft. Available at: https://saar.infowiss.net/projekte/ident/themen/info_aufbereitung/recall/ (Accessed: 30 December 2019).
  3. Faruqui, M. and Padó, S. (2010) Training and Evaluating a German Named Entity Recognizer with Semantic Generalization, ResearchGate. Available at: https://www.researchgate.net/publication/252064877_Training_and_Evaluating_a_German_Named_Entity_Recognizer_with_Semantic_Generalization (Accessed: 30 December 2019).
  4. Finkel, J. R., Grenager, T. and Manning, C. (2005) ‘Incorporating Non-local Information into Information Extraction Systems by Gibbs Sampling’, in. Proceedings of the 43nd Annual Meeting of the Association for Computational Linguistics (ACL 2005), Michigan.
  5. Gall, L. von (1910) ‘Eine fromme Lüge’, in Heyse, P. and Kurz, H. (eds) Der deutsche Novellenschatz. Berlin: R. Oldenbourg, pp. 105–175.
  6. Jannidis, F. et al. (2015) ‘Automatische Erkennung von Figuren in deutschsprachigen Romanen’, in. Konferenz der Digitalen Geisteswissenschaften im deutschsprachigen Raum (DHd), Graz.
  7. Markgraf, D. (2018) Reverse Engineering, Gabler Wirtschaftslexikon. Available at: https://wirtschaftslexikon.gabler.de/definition/reverse-engineering-45260/version-268557 (Accessed: 30 December 2019).
  8. Schumacher, M. (2018) Named Entity recognition (NER), forTEXT. Available at: https://fortext.net/routinen/methoden/named-entity-recognition-ner (Accessed: 30 December 2019).
  9. Zhang, D., Wang, J. and Zhao, X. (2015) Estimating the uncertainty of average F1 scores, BIROn – Birkbeck Institutional Research Online. Available at: http://eprints.bbk.ac.uk/id/eprint/13586.

Eine Antwort schreiben

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert