Natural Language Processing: Integration of Automatic and Manual Analysis
Total Page:16
File Type:pdf, Size:1020Kb
Natural Language Processing: Integration of Automatic and Manual Analysis Natürliche Sprachverarbeitung: Integration automatischer und manueller Analyse Zur Erlangung des akademischen Grades Doktor-Ingenieur (Dr.-Ing.) genehmigte Dissertation von Dipl.-Inform. Richard Eckart de Castilho aus Bensheim 2014 - Fachbereich Informatik — Darmstadt — D 17 Natural Language Processing: Integration of Automatic and Manual Analysis Natürliche Sprachverarbeitung: Integration automatischer und manueller Analyse Genehmigte Dissertation von Dipl.-Inform. Richard Eckart de Castilho aus Bensheim 1. Gutachten: Prof. Dr. Iryna Gurevych, Technische Universität Darmstadt 2. Gutachten: Prof. Dr. Andreas Henrich, Otto-Friedrich-Universität Bamberg 3. Gutachten: Prof. Christopher D. Manning, PhD., Stanford University Tag der Einreichung: 16. Dezember 2013 Tag der Prüfung: 10. Februar 2014 Darmstadt — D 17 Produkte oder Dienstleistungen auf welche in diesem Dokument verwiesen wird können Handels- marken oder eingetragene Handelsmarken der jeweiligen Rechteinhaber seine. Weder der Autor noch der Verlag erheben Ansprüche darauf. Products and services that are referred to in this work may be either trademarks and/or regis- tered trademarks of their respective owners. The author and the publishers make no claim to these trademarks. Bitte zitieren Sie dieses Dokument als: URN: urn:nbn:de:tuda-tuprints-41517 URL: http://tuprints.ulb.tu-darmstadt.de/id/eprint/4151 Dieses Dokument wird bereitgestellt von tuprints, E-Publishing-Service der TU Darmstadt http://tuprints.ulb.tu-darmstadt.de [email protected] Die Veröffentlichung steht unter folgender Creative Commons Lizenz: Namensnennung – Keine kommerzielle Nutzung – Keine Bearbeitung 3.0 Deutschland http://creativecommons.org/licenses/by-nc-nd/3.0/de/ To my family. Erklärung zur Dissertation Hiermit versichere ich, die vorliegende Dissertation ohne Hilfe Dritter nur mit den angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle Stellen, die aus Quellen entnommen wurden, sind als solche kenntlich gemacht. Diese Arbeit hat in gleicher oder ähnlicher Form noch keiner Prüfungsbehörde vorgelegen. Darmstadt, den 16. Dezember 2013 (Richard Eckart de Castilho) i Wissenschaftlicher Werdegang des Verfassers2 1998–2006 Studium der Informatik Technische Universität Darmstadt 2006 Abschluss als Diplom-Informatiker Diplomarbeit: A Framework For Storing, Managing and Querying Multi-Layer Annotated Corpora Technische Universität Darmstadt 2006-2008 Wissenschaftlicher Mitarbeiter am Institut für Sprach- und Literaturwissenschaft Technische Universität Darmstadt seit 2009 Wissenschaftlicher Mitarbeiter am Ubiquitous Knowledge Processing Lab Technische Universität Darmstadt 2 Gemäß § 20 Abs. 3 der Promotionsordnung der Technischen Universität Darmstadt. Zusammenfassung Es besteht ein aktueller Trend, natürliche Sprachverarbeitung zur Beantwortung von For- schungsfragen aus dem Bereich der Geisteswissenschaften einzusetzen. Dies erfordert eine Integration automatischer und manueller Analyseschritte, z.B. um zunächst eine Theorie zu entwickeln, um diese Theorie dann anhand einer Korpusstudie zu überprüfen, um Trainingsda- ten für ein maschinelles Lernverfahren zu generieren, um ein solches zur automatischen Analyse einzusetzen oder um die Qualität der automatischen Analyse auszuwerten. Manuelle Analysen werden meist von Linguisten, Philosophen und Forschern anderer geisteswissenschaftlichen Dis- ziplinen durchgeführt. Automatische Analysen hingegen werden häufig von Forschern mit um- fassenden Programmierkenntnissen durchgeführt, z.B. von Informatikern und zunehmend von Computerlinguisten. Es ist wichtig diese unterschiedlichen Forschergruppen, deren Werkzeuge und Daten näher zusammenzubringen, um in kürzerer Zeit und mit weniger Aufwand Ergeb- nisse von höherer Qualität zu erzielen. Allerdings werden vielversprechende Kooperationen, die sowohl manuelle als auch automatische Analyseschritte umfassen, z.B. die Analyse großer Korpora, derzeit von vielerlei Problemen behindert: • Es existiert keine umfassende Sammlung von interoperablen Softwarekomponenten zur auto- matischen Textanalyse. • Einen automatischen Analyseablauf aus solchen Komponenten zusammenzustellen gestaltet sich zu schwierig. • Werkzeuge zur automatischen Textanalyse, Textexploration, und zur Erstellung von Annota- tionen sind nicht interoperabel. • Die Portabilität von automatischen Analyseabläufen zwischen verschiedenen Computern ist nicht gegeben. • Arbeitsabläufe sind nicht einfach auf Clusterumgebungen zu übertragen. • Es existieren keine angemessenen Werkzeuge zur selektiven Annotation innerhalb großer Kor- pora. • Bei der automatischen Analyse sind Annotationstypen vorgegeben, während bei der manuel- len Analyse eine flexible Gestaltung der Annotationstypen erforderlich ist. • Die Implementierung neuer Analysekomponenten ist zu aufwändig. • Analysekomponenten und -abläufe können nicht leicht auf Fehler untersucht oder einer Re- faktorisierung unterzogen werden. • Analyseabläufe, deren Struktur sich anhand ihrer Parametrisierung dynamisch ändert, wer- den nicht direkt unterstützt. • Der Benutzer behält keine Kontrolle über automatische Analyseabläufe, wenn zu deren Nut- zung fremdes Expertenwissen, undokumentiertes Wissen, oder externe Infrastrukturen, z.B. Webservices, notwendig sind. In Zusammenarbeit mit Wissenschaftlern aus den Geisteswissenschaften erarbeiten wir inno- vative technische Lösungen und Entwürfe, welche die Verwendung automatischer Textanalyse erleichtern und deren Integration in manuelle Analyseverfahren fördern. Dazu bearbeiten wir vier Bereiche, in denen wir jeweils Grundlagen schaffen, um die oben genannten Probleme zu adressieren: • Wir verbessern die Benutzbarkeit automatischer Analysekomponenten und -abläufe, z.B. durch einfachere Programmierschnittstellen und durch einen Selbstkonfigurationsmecha- nismus für Analysekomponeten. iii • Wir adressieren die Reproduzierbarkeit von Analyseergebnissen durch Konzepte, welche die Portabilität und Automatisierbarkeit von Analyseabläufen verbessern. Dadurch werden unnötige manuelle Zwischenschritte in Analyseabläufen vermieden und der Austausch von Abläufen und Ergebnissen zwischen Forschern erleichtert. • Wir schaffen Flexibilität durch die Bereitstellung einer umfangreichen Sammlung inter- operabler Analysekomponenten. Darüber hinaus untersuchen wir die Annotationstypen unterschiedlicher Komponentensammlungen auf wiederkehrende Entwurfsmuster, die Raum für Anpassungen im Rahmen manueller Analysen bieten. • Wir schaffen Interaktivität im Umgang mit automatisch erstellten Analyseergebnissen, in- dem wir die Suche über Korpusdaten direkt in einen mehrbenutzerfähigen Annotations- prozess integrieren. Diesen neuartigen Ansatz der Annotation durch Suche, unterstützen wir weiterhin durch ein neues webbasiertes Annotationswerkzeug. Wir demonstrieren die Tragfähigkeit unserer Konzepte anhand von Beispielen, die prototy- pisch für ganze Klassen von Forschungsproblemen stehen. Zudem haben wir alle vorgestellten Konzepte in bestehende Open-Source-Projekte integriert, oder als neue Open-Source-Projekte umgesetzt und veröffentlicht. Abstract There is a current trend to combine natural language analysis with research questions from the humanities. This requires an integration of automatic analysis with manual analysis, e.g. to develop a theory behind the analysis, to test the theory against a corpus, to generate training data for automatic analysis based on machine learning algorithms, and to evaluate the quality of the results from automatic analysis. Manual analysis is traditionally the domain of linguists, philosophers, and researchers from other humanities disciplines, who are often not expert pro- grammers. Automatic analysis, on the other hand, is traditionally done by expert programmers, such as computer scientists and more recently computational linguists. It is important to bring these communities, their tools, and data closer together, to produce analysis of a higher quality with less effort. However, promising cooperations involving manual and automatic analysis, e.g. for the purpose of analyzing a large corpus, are hindered by many problems: • No comprehensive set of interoperable automatic analysis components is available. • Assembling automatic analysis components into workflows is too complex. • Automatic analysis tools, exploration tools, and annotation editors are not interoperable. • Workflows are not portable between computers. • Workflows are not easily deployable to a compute cluster. • There are no adequate tools for the selective annotation of large corpora. • In automatic analysis, annotation type systems are predefined, but manual annotation re- quires customizability. • Implementing new interoperable automatic analysis components is too complex. • Workflows and components are not sufficiently debuggable and refactorable. • Workflows that change dynamically via parametrization are not readily supported. • The user has no control over workflows that rely on expert skills from a different domain, undocumented knowledge, or third-party infrastructures, e.g. web services. In cooperation with researchers from the humanities, we develop innovative technical solu- tions and designs to facilitate the use of automatic analysis and to promote the integration of manual and automatic analysis. To address these issues, we set foundations in four areas: • Usability is improved by reducing the complexity of the APIs for building workflows and creating custom components, improving the