Inhalt
Im Kurs sollen grundlegende Kenntnisse vermittelt werden, die benötigt werden, um mit Deep Learning Textdaten auswerten und verarbeiten zu können.
Hierzu werden, je nach Wissensstand der Veranstaltungsbesucher:innen, zuerst Einführungen in Python und Git gegeben. Anschließend werden Grundlagen des Natural Language Processing besprochen und angewendet. Hierzu zählen verschiedene Formen künstlicher neuronaler Netze, deren Konfiguration, Data Preprocessing, Trouble Shooting im Training künstlicher neuronaler Netze sowie die Evaluation der Ergebnisse.
Unterrichtssprache
Die Unterrichts- und Vortragssprache ist Deutsch; Präsentationsfolien und Arbeitsblätter auf Englisch. Fragen können im Kurs auch jederzeit auf Englisch gestellt werden.
Anforderungen
Die praktische Umsetzung wird mittels Python stattfinden. Daher sind grundlegende Programmierkenntnisse notwendig.
Computerlinguistik am IDH
Seit dem Wintersemester 2022/2023 haben wir ein neues Konzept für die computerlinguistische Ausbildung im Studiengang BA Informationsverarbeitung ausgearbeitet.
- Modul Grundlagen der Computerlinguistik (alte Studienordnung "Computerlinguistische Grundlagen")
- Seminar Computerlinguistische Grundlagen (immer im WiSe, Inhalt: Linguistische Grundlagen, Annotation)
- Vorlesung und Übung Sprachverarbeitung (immer im SoSe, Inhalt: Quantitative Eigenschaften von Sprache, Machine Learning)
- Modulprüfung Klausur (immer im SoSe, 90 Minuten, 30 Minuten)
- Modul Anwendungen der Computerlinguistik (alte Studienordnung "Angewandte Linguistische Datenverarbeitung")
- Übung Deep Learning (immer im WiSe, Inhalt: Deep Learning Methoden)
- Hauptseminar Anwendungen der Computerlinguistik (immer im WiSe, Inhalt: Experimente in der CL, wo kommen Fortschritt und Erkenntnis her?)
- Modulprüfung Hausarbeit zu einem computerlinguistischen Experiment
Es werden in diesem Seminar die Kenntnisse aus dem Modul "Grundlagen der Computerlinguistik" vorausgesetzt.
Literatur
- Chacon, Scott & Straub, Ben (2014): Pro Git. 2nd edition. Apress. (online zugänglich)
- Sweigart, Al (2020): Automate the Boring Stuff with Python: Practical Programming for Total Beginners. 2nd edition. San Francisco: No Starch Press. (online zugänglich)
- Jurafski, D. & Martin, J. (2020): Speech and Language Processing. New Jersey: Prentice Hall. Einführendes Werk mit Augenmerk auf aktuelle statistische Verfahren der Sprachverarbeitung, ca. 75 €. Zum überwiegenden Teil sind die neu aktualisierten Kapitel online zugänglich. Für uns sind besonders die Kapitel 5–9 interessant.
- Tunstall, Lewis et al. (2023): Natural Language Processing mit Transformern. 1. Auflage. Heidelberg: O’Reilly.
- Vaswani et al. (2017): Attention is all you need. (online)
Sessions
- Session 1
- Setup, Deep Learning Begriff, Version Control
- Folien
- Session 2
- Python 1
- Syntax
- Types
- Standard Library
- Folien
- Python 1
- Session 3
- Python 2
- List Comprehension
- Functions
- Input/Output
- Folien
- Python 2
- Session 4
- Python 3
- Exception Handling
- Python Packages
- Types of tasks
- Classification
- Folien
- Python 3
- Session 5
- Prediction Model and Learning algorithm
- Linear Regression
- Logistic Regression
- Loss Function
- Gradient Descent
- Scikit-Learn
- Folien
- Session 6
- Neural Networks
- Deep Learning Library keras
- Folien
- Session 7
- Bag of Words (BoW)
- Overfitting
- Regularization
- Dropout
- Folien
- Recap
- Session 8
- Input Representation
- Embeddings
- Folien
- Session 9
- Sequential Data
- Recurrent Neural Networks (RNN)
- Long Short-Term Memory (LSTM)
- Folien
- Session 10
- Language Modelling
- Encoder-Decoder
- Attention
- Folien
- Session 11
- Transformer
- LLM
- Prompt Engineering
- Folien