Natural Language Processing in Python


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 bei den Grundlagen der Textverarbeitung in Python beginnen und klassische Feature Engineering Ansätze des Machine Learning kennenlernen. Anschließend beschäftigen wir uns mit der Methodik, die als Beginn einer neuen Ära im NLP betrachtet werden kann: den sogenannten Word Embeddings oder Wortvektoren. Ferner wird die Integration dieser Word Embeddings in moderne Deep Learning Modelle diskuttiert, 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:

  • Teil 1: Anhand von einigen Beispielen wird die Wichtigkeit von NLP verdeutlicht. Danach folgt eine Einführung zum Umgang mit Textdaten und deren potentielle Repräsentationen im Machine Learning. Im Anschluss werden sog. Fully-Connected-Neural-Networks (FCNNs) als wichtige Grundlage für den weiteren Kurs eingeführt. 

  • Teil 2: Hier liegt der Fokus auf 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.

  • Teil 3: Im letzten Teil 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



Anstehende Kurse

Kein passender Kurs verfügbar? Kein Problem, wir richten unser Kursprogramm direkt nach dem Interesse unserer Kunden aus. Teilen Sie uns Ihr Interesse mit und profitieren zusätzlich durch einen 10% bzw. 20% Rabatt.