In den letzten fünf bis sechs Jahren gelangen der Forschung einige bahnbrechende Entwicklungen im Bereich des Text Mining und des Natural Language Processing (NLP). Diese Durchbrüche sind im Wesentlichen auf drei Faktoren zurückzuführen:
Konzeptuell neue Frameworks aus dem Bereich des Deep Learning
Deutliche Verbesserungen der computationalen Ressourcen,
(Deutlich) Größere verfügbare Datenmengen (Big Data)
Wir werden in diesem Kurs bei den Grundlagen der Textverarbeitung in Python beginnen und klassische Feature Engineering Ansätze aus dem Bereich des Machine Learning kennenlernen. Anschließen werden wir uns ausführlich mit der Methodik beschäftigen, die als Beginn einer neuen Ära im NLP betrachtet werden kann: den sogenannten Word Embeddings oder Wortvektoren.
Wir werden ferner die Integration dieser Word Embeddings in moderne Deep Learning Modelle diskutieren, insbesondere tiefe rekurrente neuronale Netze (RNNs). Da der sog. “Attention”-Mechanismus und Transfer Learning die Grundlage der aktuellsten state-of-the-art-Modelle wie z.B. BERT bilden, werden wir diese beiden Themen im abschließenden Teil des Kurses ausführlich behandeln.
Der Kurs behandelt folgende Themen:
Tag 1: Im ersten Teil wird zunächst anhand von einigen Beispielen die Wichtigkeit von NLP verdeutlicht. Danach wird es eine Einführung zum Umgang mit Textdaten und deren potentielle Repräsentationen im Machine Learning geben. Im Anschluss werden sog. Fully-Connected-Neural-Networks (FCNNs) als wichtige Grundlage für den weiteren Kurs eingeführt.
Tag 2: Am zweiten Tag beschäftigen wir uns ausschließlich mit sog. neuronalen Repräsentationen von Texten. Begonnen wird mit der Idee des Language Modelling anhand des Neural probabilistic language models (Bengio et al, 2003). Anschließend wird das Word2Vec Framework (Mikolov et al., 2013), das Doc2Vec-Framework (Mikolov and Le, 2014), sowie das FastText-Framework (Bojanowski et al, 2017) vorgestellt. Jedes dieser Frameworks wird mit Hands-On Sessions zur praktischen Umsetzung des Erlernten begleitet.
Tag 3: Am abschließenden Kurstag beschäftigen wir uns mit Deep Learning und aktuellen state-of-the-art-Architekturen. Wir werden uns ausführlich die vorhandenen Transfer-Learning-Ressourcen ansehen und in einer abschließenden Hands-On Session das Gelernte anwenden.
Hands-On Sessions: Für die praktischen Teile des Kurses werden Übungsaufgaben in Form von Jupyter-Notebooks bereitgestellt, mit denen die Teilnehmer die Übungen selbst bearbeiten können.
Voraussetzungen:
Grundlegende Python Kenntnisse
Grundkenntnisse in überwachten Lernverfahren