Lehre im Sommersemester 2020
Natural Language Processing
Moderne Computersysteme verarbeiten zunehmend Daten in natürlicher Sprache, etwa bei der Suche nach Texten im Internet, der automatischen Übersetzung oder der Informationsextraktion aus Nachrichtenmeldungen oder Beiträgen in sozialen Medien.
Inhalte
In diesem Modul werden anhand von praktischen Beispielen ausgewählte aktuelle Themen des Natural Language Processing behandelt, insbesondere aus den Bereichen:
- Textklassifikation,
- Erkennung von Entitäten,
- Chatbots,
- Topic Modelling und
- Word Embeddings
Lernergebnisse
Die Studierenden kennen die Grundlagen des Natural Language Processing (NLP) und die wichtigsten Anwendungsgebiete. Sie können mit großen Textkörpern umgehen, geeignete NLP-Tools auswählen und diese einsetzen. Sie sind in der Lage, NLP-Modelle zu erstellen und deren Resultate quantitativ zu analysieren, zu bewerten und zu interpretieren. Die Studierenden reflektieren die Mehrdeutigkeit und Ungenauigkeit von Text und haben ein Bewusstsein für die Grenzen der Möglichkeiten aktueller NLP-Verfahren (etwa beim Erkennen von Ironie oder rhetorischen Fragen).
mehr ...Web-Mining
Die im World-Wide-Web gespeicherten Informationen wachsen kontinuierlich an und stellen somit eine unentbehrliche Quelle diverser Analysevorhaben dar. Im Vordergrund steht hierbei die Analyse der gespeicherten Webseiteninhalte (Web-Content-Mining), die vorwiegend aus schwach- oder unstrukturierten Texten bestehen.
Zur Analyse des Web-Contents werden u.a. Ansätze des Text-Minings angewendet. Unter dem Schlagwort „semantisches Web“ bestehen darüber hinaus seit einigen Jahren Bestrebungen, die unstrukturierten Daten mit semantischen Informationen anzureichern, so dass diese effizient durch Maschinen verarbeitet werden können. Die Grundlage hierfür stellen Ontologien zur Verfügung, auf deren Basis Repräsentationssprachen definiert werden, mit denen die semantische Anreicherung erfolgt. Aufbauend auf den Repräsentationssprachen existieren Inferenzmechanismen und Abfragesprachen, die aus den gespeicherten Informationen (implizites) Wissen ableiten können. Zusätzlich zum WebContent-Mining können weitere Informationen aus der Verlinkungsstruktur der HTML-Seiten (Web-Structure-Mining) und aus der Nutzung der Webseiten (Web-Usage-Mining) gewonnen werden.
Das Modul führt in die Grundlagen des Text-Minings ein und zeigt deren Anwendung zur Analyse von textuellen Webseiteninhalten. Außerdem werden die Grundlagen des semantischen Webs behandelt und die Prinzipien der Wissensrepräsentation durch Ontologien sowie die dazugehörigen Inferenzmechanismen eingeführt, wobei diese anhand von konkreten Repräsentationssprachen nachvollzogen werden. Es werden Ansätze zum Web-Structure- und Web-Usage-Mining behandelt.
Lernergebnisse
Nach der erfolgreichen Bearbeitung des Moduls ist der Studierende mit den grundlegenden Ansätzen des Text-Minings vertraut und kann auf dieser Basis konkrete Analyseanwendungen konzipieren und diese unter Verwendung aktueller Technologien umsetzen. Er ist somit in der Lage Web-Content-Analysen durchzuführen. Darüber hinaus kann er die Prinzipien des Web-Structure- und des Web-Usage-Mining erläutern und diese in Analyseprojekten anwenden. Der Studierende kann ferner die Ansätze des semantischen Webs wiedergeben, unter Verwendung konkreter Repräsentationssprachen Texte semantisch anreichern und Inferenzmechanismen zur Gewinnung von neuem Wissen auf der Basis existierender Abfragesprache konzipieren und umsetzen.
mehr ...Internettechnologien
Webanwendungen sind aus unserem Alltag nicht mehr wegzudenken, sie machen inzwischen den überwiegenden Teil aller Anwendungen aus. In diesem Modul lernen Sie die grundlegenden Technologien zur Entwicklung von Webanwendungen.
Lernergebnisse
Die Studierenden können einfache Webanwendungen erstellen und dabei clientseitige Technologien (HTML, CSS, Javascript), Webserver wie nginx oder Apache und serverseitige Technologien (z.B. Node.js / Express.js) zu einer Anwendung zusammenfügen.
Sie
- verstehen die Unterschiede zwischen einer Webanwendung und einer klassischen Anwendung und können die Vor- und Nachteile einer Webanwendung für einen konkreten Anwendungsfall beurteilen,
- kennen die Funktionsweise von Single-Page-Anwendungen und verstehen das dabei notwendige Zusammenwirken von Front- und Backend,
- verstehen die besonderen Sicherheitsaspekte bei der Entwicklung von Webanwendungen, und
- können Tools für das Testen und das Debugging von Front- und Backendkomponenten verwenden.