Hauptnavigation

Vertiefungsvorlesung und Übung Natürlichsprachliche Systeme

Veranstaltung Wochentag Termin Ort Veranstaltung
042511 Dienstag 10.15 - 12.00 OH14, 304 Vorlesung
042512 Donnerstag 14.15 - 16.00 OH14, 304 Übung

Inhalt:

Nicht nur Google oder Facebook oder Netflix, auch viele andere Firmen brauchen Dienste, die letztlich auf der Erarbeitung natülicher Sprache beruhen. Es gibt deshalb eine Fülle von Methoden zur Analyse sehr großer Textmengen für ebenfalls viele Anwendungen: Sentiment Analysis, personalisierte Werbung, Empfehlungen, email Routing, automatische Texterstellung für Kurznachrichten und Reporting, automatische Fragebeantwortung, Informationsextraktion aus dem WWW, ... In dieser Veranstaltung lernen Sie diese Techniken so kennen, dass Sie sie selbst durchführen können.

Beginn:

Die Veranstaltung beginnt am Dienstag, 7.10. 2014.

1. Lehrformen

Die Vorlesung kombiniert unterschiedliche Lehrformen:

  • Klassische Vorlesung mit Übung zur kompakten Einführung,
  • Lektüre gegebener Texte zu einem Thema, zu dem dann von einigen Studierenden die Vorlesung gestaltet wird (Gruppenarbeit),
  • Lektüre eines gegebenen Textes, der dann in der Übung besprochen wird (alle lesen den Text),
  • Verwendung der Werkzeuge, um eine Methode zu evaluieren oder eine eigene Analyse zu entwickeln (dies ist meist keine Programmierung).

2. Ablauf

Die Vorlesung behandelt die folgenden Themen:

Einführung und Werkzeuge:

Nach dem Überblick über diese Vorlesung am 7.10.14 installieren alle sich das Werkzeug RapidMiner mit den eigens für die Vorlesung zusammengestellten zusätzlichen Werkzeugen. Eine Einführung in RapidMiner wird in der Übung am 9.10.14 gegeben.

Stützvektormethode und Text Mining:

In der Vorlesung wird die Stützvektormethode (SVM) kurz eingeführt und die Besonderheit der Textkategorisierung (Klassifikation von Dokumenten). Die Studierenden lesen zwei Kapitel von [6] zur Fehlerabschätzung der Textkategorisierung durch die SVM.

Indexieren von Dokumenten:

Suche in großen Dokumentensammlungen erfordert eine kompakte Darstellung und Indexierung. Das Tool Lucene bietet eine geeignete Darstellung und Suchfunktionen. Das Tool RapidMiner /Text Mining Extension wandelt Dokumente in eine bag of word Repräsensation um, entweder mit binären Werten oder TDIDF-Werten [17]. Dafür müssen die Wortvorkommen gezählt werden. Wir überlegen, wie das effizient in Java zu machen ist, greifen das wieder auf, wenn es um das Google Word2Vector gehen wird.

Grammatik:

Parsing und Generierung erfordern Grammatiken. Sind Konstitutenstrukturgrammatiken besser als Dependenzgrammatiken [7]?

  • Diesen Text, der mit Teilen des deutschsprachigen [10] gut zu verstehen ist, lesen alle und wir besprechen ihn.
  • Das Werkzeug aus Stanford zum Parsing installieren alle und machen ihre Erfahrungen mit der Anpassung des Parsers an eine natürliche Sprache anhand von Baumbanken.
  • Eine Gruppe, Gruppe 1, befasst sich intensiv mit Baumbanken und gestaltet die Sitzung am 11.11.14 zum Thema Baumbanken und stellt die Literatur vor [2], [8], [9]. Alle könenn die Baumbanken im Plugin, das für diese Vorlesung bereit gestellt ist, von RapidMiner aus anwenden.
Named Entity Recognition und Relation Extraction:

Auf der Grundlage von [3], das wir alle lesen, lernen wir das Gebiet kennen. In der Vorlesung wird der Ansatz von [16] vorgestellt. Außerdem betrachten wir unterschiedliche Merkmalsmengen, wie sie in [4] ausprobiert wurden.

Conditional Random Fields:

Gemeinsam gehen wir die Einführung in Conditional Random Fields durch, die alle lesen [19].

Kernels:

Die Merkmale für CRF sind vielfältig. Vor allem werden Kerne betrachtet.

  • Gruppe 2 erarbeitet die wichtigsten Ansätze dazu anhand von [1], [5], [21]. Am 9.12.14 stellt die Gruppe die Baumkernfunktionen vor.
  • Hier ist auch noch Raum für eine weitere Gruppe, Gruppe 3 zum verwandten Semantic Relation Extraction nach [14], [15], [23], [22]. Die Gruppe stellt die Literatur am 6.1.15 vor.
Korpus und DWDS:

Für die eigenen Experimente nutzen wir Datensätze aus dem KobRA Projekt. Vor den Weihnachtsferien überlegen wir Fragestellungen, zu denen eigene Studien angefertigt werden.

Clustering:

Methoden des Clustering werden in einer Vorlesung vorgestellt.

Verktorraumdarstellung zur Semantik:

Der Google-Ansatz mit Word2Vector wird von allen gemeinsam erarbeitet anhand von [18], [20], [11], [12], [13]. Dafür haben wir beide Termine, 20. und 22.1.15.

Vorstellung und Diskussion der Studien:

Der Stand der eigenen Experimente wird am 27.1. und 29.1.15 besprochen.

Zeit für die Ausarbeitung:

In der letzten Vorlesungswoche haben die Studierenden Zeit für ihre Ausarbeitung, es finden keine Treffen statt.

3. Software und Datensätze

Das System RapidMiner ist open source (java) und Sie können es sich hier http://sourceforge.net/projects/rapidminer/ herunterladen. Dazu haben wir auch noch eine ganze Reihe an Tools, die für die Verarbeitung natürlicher Sprache nützlich sind, mit RapidMiner verbunden. Insbesondre gibt es die speziellen Daten und Tools der Linguistik des Deutschen, damit wir nicht immer nur englische Texte betrachten: Digitales Wörterbuch der Deutschen Sprache (DWDS) mit vielen Informationen zu Wörtern und ihren Vorkommen. Diese Erweiterung von RapidMiner finden Sie unter https://www-ai.cs.uni-dortmund.de/svn2/nls1415/software/extensions.zip Das Google Tool Word2Vector ist dort ebenfalls abgelegt: https://www-ai.cs.uni-dortmund.de/svn2/nls1415/software/Word2Vec
Weitere eventuell benötigte Erweiterungen sind:

Diese können aus dem offiziellen Software Verzeichnis von RapidMiner, dem RapidMiner Marketplace, installiert werden. Diesen finden die Studenten im Hauptmenü von Rapidminer unter Help/Updates Als Datensätze haben wir einen Ausschnitt aus Wikipedia, eine Sammlung von Twitter Tweets und Texte aus dem RSS der Welt sowie einige Newsgroup Beiträge bereitgestellt. https://www-ai.cs.uni-dortmund.de/svn2/nls1415/datensaetze/

4. Leistungsnachweis

Für eine Ausarbeitung, die Fachtexte wiedergibt und eine kleine eigene Studie dazu beschreibt, gibt es einen Leistungsnachweis. Abgabe erfolgt bis spätestens 2. März 2015. Die Fachtexte sind typischerweise gerade diejenigen, die die Studierenden ohnehin in der Vorlesung, als Gruppenarbeit oder insgesamt, gelesen haben. Die kleine Studie untersucht eine Hypothese, wie es in der Sitzung vor Weihnachten festgelegt wird. In der Literatur sollte es Stellungnahmen zu der Hypothese geben, die erläutert werden. Die Hypothese wird mit Hilfe der Werkzeuge untersucht, beispielsweise werden zwei Verfahren verglichen. Die Auswertung und Interpretation des Vergleichs soll sich wieder auf die Literatur zurück beziehen.

5. Literatur

Ein wichtiges Lernziel ist der Umgang mit Fachliteratur:

  • Recherche: finden Sie schnell die relevante Literatur!
  • Beurteilung: erkennen Sie die Qualität eines Artikels schnell – sparen Sie sich die oberflächlichen.
  • Verstehen: studieren Sie den wichtigen Artikel sorgfältig – das kann auch eine Woche dauern.

Die hier zitierten Artikel sind bereitgestellt unter https://www-ai.cs.uni-dortmund.de/svn2/nls1415/paper/ Es schadet allerdings nicht, sich auch selbst bei Google Scholar, dblp oder bei JMLR nach Literatur umzusehen!

Als Grundlage für die klassische Herangehensweise in der KI-Sprachverarbeitung empfehle ich [10]. Dort werden syntaktische und semantische Modelle eingeführt. Wichtig ist das Verständnis von Parsing, POS tagging und tree banks (Baumbanken). Neuere Arbeiten, die stark auf das Lernen aus großen Datenmengen ausgerichtet sind, sind dort nur stark verkürzt angesprochen. Diese big data Ansätze lernen wir ja in der Vorlesung genau kennen.

Referenzen

  1. Michael Collins und Nigel Duffy, Convolution Kernels for Natural Language in Proceedings of Neural Information Processing Systems, NIPS 2001. Hier zu finden.
  2. Corina Dima und Erhard W. Hinrichs, A Semi-Automatic, Iterative Method for Creating a Domain-Specific Treebank in Proceedings of Recent Advances in Natural Language Processing, RANLP 2011. Hier zu finden.
  3. Ralph Grishman, Information Extraction: Capabilities and Challenges. Hier zu finden.
  4. Martin Had, Relation Extraction zur Ergänzung deutschsprachiger Firmendossiers. Hier zu finden.
  5. David Haussler, Convolution Kernels on Discrete Structures. Hier zu finden.
  6. Thorsten Joachims, Learning to Classify Text using Support Vector Machines in Kluwer International Series in Engineering and Computer Science. Relevante Kapitel sind im SVN zu finden.
  7. Sandra Kübler und Jelena Prokic, Why is German Dependency Parsing More Reliable than Constituent Parsing? in Proceedings of the Fifth International Workshop on Treebanks and Linguistic Theories - 2006. Hier zu finden.
  8. Wolfgang Lezius, TIGERSearch - Ein Suchwerkzeug für Baumbanken in Proceedings of the Konferenz zur Verarbeitung natürlicher Sprache (KONVENS 2002). Hier zu finden.
  9. Mitchell P. Marcus und Mary Ann Marcinkiewicz und Beatrice Santorini, Building a large annotated corpus of English: the penn treebank in Comput. Linguist. June 1993 Volume 19. Hier zu finden.
  10. Wolfgang Menzel, Sprachverarbeitung in Kapitel 13 im Handbuch der KI. Aus dem Uninetz hier verfügbar.
  11. Tomas Mikolov et al., Efficient Estimation of Word Representations in Vector Space in CoRR 2013. Hier zu finden.
  12. Tomas Mikolov et al., Distributed Representations of Words and Phrases and their Compositionality in CoRR 2013. Hier zu finden.
  13. Tomas Mikolov et al., Linguistic Regularities in Continuous Space Word Representations in Human Language Technologies: Conference of the North American Chapter of the Association of Computational Linguistics, Proceedings, June 9-14, 2013. Hier zu finden.
  14. Alessandro Moschitti und Daniele Pighin und Roberto Basili, Tree kernels for Semantic Role Labeling in Computational Linguistics Journal 2008. Hier zu finden.
  15. Frank Reichartz und Hannes Korte und Gerhard Paass, Semantic relation extraction with kernels over typed dependency trees in KDD 2010. Hier zu finden.
  16. Marc Roessler und Katharina Morik, Using Unlabeled Texts for Named-Entity Recognition in ICML Workshop on Multiple View Learning 2005. Hier zu finden.
  17. G. Salton und A. Wong und C. S. Yang, A vector space model for automatic indexing in Commun. ACM 1975. Hier zu finden.
  18. Richard Socher et al., Semantic Compositionality Through Recursive Matrix-vector Spaces in Proceedings of the 2012 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning. Hier zu finden.
  19. C. Sutton und A. McCallum, Introduction to Statistical Relational Learning . Hier zu finden.
  20. Peter D. Turney und Patrick Pantel, From Frequency to Meaning: Vector Space Models of Semantics in CoRR 2010. Hier zu finden.
  21. Min Zhang et al., A Grammar-driven Convolution Tree Kernel for Semantic Role Classification in Proceedings of the 45th Annual Meeting of the Association of Computational Linguistics 2007. Hier zu finden.
  22. Guo-Dong Zhou und Qiao-Ming Zhu, Kernel-based semantic relation detection and classification via enriched parse tree structure in J. Comput. Sci. Technol. Jan. 2011. Hier zu finden.
  23. Guodong Zhou und Longhua Qian und Jianxi Fan, Tree kernel-based semantic relation extraction with rich syntactic and semantic information in Inf. Sci. April 2010. Aus dem Uninetz hier verfügbar.
  24. Eraldo R. Fernandes und Ulf Brefeld, Learning from Partially Annotated Sequences in Proceedings of the 2011 European Conference on Machine Learning and Knowledge Discovery in Databases - Volume Part I. Hier zu finden.
  25. Andrew Kachites McCallum, MALLET: A Machine Learning for Language Toolkit. Hier zu finden.
  26. Yoshua Bengio et al., A Neural Probabilistic Language Model in J. Mach. Learn. Res. 2003. Hier zu finden.

Weitere Literatur

Klicken sie mit der rechten Maustaste auf den Link und wählen Ziel speichern unter aus, um die Datein herunterzuladen.

  • Conditional Random Fields - Hier zu finden
  • An Application-Oriented View of Automatic Tagging and Information Extraction - Hier zu finden
  • Graphical Models - Hier zu finden
  • TaCl - The challenge of Heterogeneity - Hier zu finden