Dr. Gregor Wiedemann
Dr. Gregor Wiedemann
Gregor Wiedemann gab bei uns kürzlich einen Workshop zur KI-basierten Analyse großer Textmengen. Im Interview erläutert der Experte für Computational Social Sciences, welche Möglichkeiten dieser Ansatz den Sozialwissenschaften eröffnet.

Lieber Gregor Wiedemann, welche Anwendungen von Natural Language Processing, also der auf künstlicher Intelligenz basierten, automatisierten Text- und Sprachverarbeitung, beobachten Sie gegenwärtig in der Wissenschaft und besonders in den Sozialwissenschaften?

Ein Schwerpunkt von Anwendungen des Natural Language Processing in der Sozialwissenschaft ist die Auswertung sehr großer Textmengen für automatische Inhaltsanalysen. Damit werden beispielsweise Debatten in den Sozialen Medien oder über viele Nachrichtenmedien hinweg, die händisch nicht zu bewältigen wären, für die Forschung zugänglich.

Wobei nutzen Sie persönlich gerade NLP?

Ich arbeite zurzeit an NLP-Verfahren für die Auswertung von Argumentstrukturen in Twitterdebatten. Dabei beobachten wir unter anderem, wie sich der öffentliche Diskurs zum Einsatz von Atomenergie in den letzten Jahren verändert hat. Beispielsweise spielen Umweltaspekte viel öfter eine Rolle in der Argumentation pro Atomkraft, was eine deutliche Veränderung zu den vorangegangen Dekaden darstellt. In einem zweiten Projekt extrahieren wir Protestereignisse wie Demonstrationen, Kundgebungen oder Streiks aus Lokalmedien und bereiten diese Daten für die Protestereignisforschung auf.

Nehmen wir an, ich habe in meinem Projekt zehntausende Textdokumente gesammelt, die ich auswerten möchte. Wie kann mir Natural Language Processing dabei helfen?

Bleiben wir beim Beispiel der Protestereignisforschung. Hier berichtet beispielsweise eine lokale Zeitung über eine Pegida-Kundgebung in Dresden. Um diese Berichterstattung automatisiert zu finden, setzen wir ein Klassifikationsverfahren ein, dass automatisch erkennt, ob in Artikeln, in denen das Wort "Pegida-Proteste" vorkommt, über ein Protestereignis berichtet oder das Wort nur in einem allgemeineren Kontext verwendet wird. Damit können wir zuverlässig nur solche Artikel aus der großen Menge aller Zeitungsberichte, die diese Schlagwörter enthalten, identifizieren, die tatsächlich über Protestereignisse berichten. In einem zweiten Schritt extrahieren wir aus diesen Artikeln automatisch Angaben wie Motto, Teilnehmerzahl und Veranstalter. Am Ende entsteht ein strukturierter Datensatz über alle lokalen Protestereignisse aus vier Lokalzeitungen der letzten 20 Jahre, der dann von Politikwissenschaftler:innen ausgewertet werden kann.

Welche Voraussetzungen müssen meine Textdaten erfüllen, damit ich sie mit Hilfe von Natural Language Processing analysieren kann?

Idealerweise kommen die Trainingsdaten für ein Modell aus derselben Grundgesamtheit wie die Zieldaten. Die Texte müssen zudem natürlich in digitaler Form vorliegen und sie sollten nicht allzu sehr von der Normsprache abweichen. Das heißt, zum Beispiel Transkripte gesprochener Sprache, die einen starken Slang abbilden, oder historische Dokumente, die eine sehr alte Sprache verwenden, können mitunter Probleme verursachen. Aber dafür gibt es Lösungen. In diesen Fällen müssen die zum Einsatz kommenden Sprachmodelle für die Zieldomäne angepasst werden. Mittlerweile ist es übrigens leicht möglich, multi-linguale Korpora (z.B. Deutsch und Englisch) in ein und derselben Analyse zu verwenden, oder mit englischen Trainingsdaten gute Vorhersagen für deutsche Zieldaten zu machen.

Und welche Voraussetzungen muss ich als Wissenschaftler:in mitbringen, um mit NLP zu arbeiten? Wie viel Programmierkenntnis brauche ich bzw. andere relevante Vorkenntnisse?

Seit einigen Jahren werden NLP-Verfahren vor allem auf Basis von vielschichtigen neuronalen Netzen eingesetzt (auch bekannt als "deep learning"), da diese eine deutlich bessere Leistungen erzielen als frühere Ansätze, die auf beispielsweise Wortlisten basierten. Um diese neuronalen Netze für große Textmengen zum Einsatz zu bringen, ist es notwendig sich mit bestimmten Programmbibliotheken auseinanderzusetzen, die in der Regel für die Skriptsprache Python geschrieben sind. Mittlerweile gibt es auch erste sogenannte R-Wrapper, welche die Funktionalitäten der Python-Bibliotheken in der Programmiersprache R verfügbar machen. Um die Programmierung eigener Auswertungsskripte  kommt man derzeit allerdings nicht herum.

Bevor ich meine Textdaten analysieren kann, muss ich dem Algorithmus mitteilen, wonach er suchen muss und was er mit dem Gefundenen anstellen soll. Wie macht man das?

Um einer Maschine beizubringen, welche Texte sie aus einer großen Menge als relevant herausfiltern soll, in welche Kategorien sie einen Text einsortieren oder welche Informationen sie aus einem Dokument extrahieren soll, muss ich ihr anhand von Beispielen beibringen, wie diese Informationen aussehen. Hierzu wird ein Trainingsdatensatz erstellt, der typischerweise einige hundert oder tausend positive und negative Beispiele für die Zielkategorie enthält. Mit neuen Technologien des sogenannten Few Shot Learning genügen bereits deutlich weniger Beispiele, um ein vortrainiertes neuronales Netz auf eine Zielkategorie hin zu trainieren.

Wie muss mein Trainingsdatensatz aussehen, damit die Qualität der Auswertung anschließend hoch und verlässlich ist?

Die Trainingsdaten für das Trainieren eines NLP-Modells sollte möglichst vollständig und möglichst einheitlich kodiert sein. Vollständig bedeutet, dass für alle dem Modell präsentierten Entitäten (Worte, Sätze oder Dokumente) eine bewusste Kategorie-Entscheidung vorliegt. Einheitlich (bzw. reliabel) bedeutet:  Wenn mehrere Codierer einen Datensatz erstellen, müssen diese in denselben Fällen auch möglichst zu demselben Urteil über die Kategoriezuordnung gelangen. Bekommt die Maschine nämlich inkonsistente Trainingsdaten präsentiert, ist sie nicht in der Lage, eine Kategorie adäquat zu lernen.

Woran kann ich, dass das NLP in meinem Fall verlässlich funktioniert?

Um zu erkennen, ob ein NLP-Modell verlässlich funktioniert, wird es mit Testdaten getestet. Bei Testdaten handelt es sich, genau wie bei Trainingsdaten, um händisch codierte Texte. Die Vorhersagen eines trainierten Modells auf den Testdaten werden anschließend mit den händisch codierten Kategorien verglichen. So ist eine Aussage über die Qualität der automatischen Vorhersage möglich.

Die technische Entwicklung in diesem Fall ist sicher rasant. Welche Entwicklungen gab es in den letzten Jahren, die das NLP besonders vorangebracht haben?

Wir erleben tatsächlich gerade einen rasanten Fortschritt im Bereich der künstlichen Intelligenz und des maschinellen Textverstehens mit sogenannten großen Sprachmodellen (Large Language Models). Jüngstes Beispiel ist ChatGPT von der Firma OpenAI. Dieses Sprachmodell ist in der Lage, Anfragen und -antworten von Nutzer:innen zu verstehen und so eine menschenähnliche dialogische Kommunikation zu erzeugen.

Welche Grenzen hat das NLP aus Ihrer Sicht?

Obwohl Sprachmodelle derzeit bereits beeindruckende Leistungen vollbringen, indem sie das in ihnen gespeicherte Wissen Nutzer:innen in dialogischer Form präsentieren, fehlt ihrer internen Struktur symbolisch-logische Wissensrepräsentation, die von außen transparent nachvollziehbar ist. Ziel aktueller Forschung ist es, diese "Black Box" innerhalb neuronaler Netze dekodierbar zu machen und damit auch dafür Sorge zu tragen, dass mehr formal korrektes und besser validiertes Wissen in diesen Modellen gespeichert werden kann.

---

Über Dr. Gregor Wiedemann

Dr. Gregor Wiedemann ist Senior Researcher Computational Social Science am Leibniz-Institut für Medienforschung │ Hans-Bredow-Institut (HBI), wo er mit Sascha Hölig das Media Research Methods Lab (MRML) leitet. Seine aktuellen Arbeitsschwerpunkte liegen in der Entwicklung von Verfahren und Anwendungen von Natural Language Processing und Text Mining für die empirische Sozial- und Medienforschung.

Wiedemann studierte Politikwissenschaft und Informatik in Leipzig und Miami. 2016 promovierte er an der Universität Leipzig im Fach Informatik in der Abteilung Automatische Sprachverarbeitung zu den Möglichkeiten der Automatisierung von Diskurs- und Inhaltsanalysen mit Hilfe von Text Mining und Verfahren des maschinellen Lernens. Im Anschluss arbeitete er als Postdoc in der Abteilung Language Technology der Universität Hamburg.

Dabei entstandene Arbeiten beschäftigen sich unter anderem mit Methoden zur unüberwachten Informationsextraktion für die Unterstützung investigativer Recherchen in unbekannten Dokumentbeständen (siehe newsleak.io) und mit der Erkennung von Hass- und Gegenrede in sozialen Medien.

Bis zur Übernahme der Leitung des MRML arbeitete er im DFG-Projekt "A framework for argument mining and evaluation (FAME)", das sich mit der automatischen Erkennung und Auswertung wiederkehrender Argumentstrukturen in empirischen Texten beschäftigt.

(Quelle der Kurz-Biografie: Hans-Bredow-Institut)