Lehre im Sommersemester 2023

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 ...

Webentwicklung Backend

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 des Backends von Webanwendungen.

Lernergebnisse

Die Studierenden können das Backend einer einfachen Webanwendung erstellen und dabei sowohl die funktionalen Aspekte (Umsetzung von Use-Cases, Datenpersistenz) als auch nicht-funktionale Aspekte (Skalierbarkeit, Schutz vor gängigen Angriffen wie XSS und XSRF) angemessen berücksichtigen. Sie verstehen den Einfluss der Anwendungsarchitektur auf Skalierbarkeit und Sicherheit einer Webanwendung und die Bedeutung eines Zonenmodells, können mithilfe von Werkzeugen wie OpenAPI zu einem gegebenen Anwendungsfall ein API entwerfen und es implementieren. Die Studierenden können geeignete Authentisierungsverfahren für eine Webanwendung auswählen und implementieren, und sie können geeignete Strategien für den Test und das Deployment einer Webanwendung entwickeln.

Inhalte

  • Serverseitige Frameworks wie z.B. NodeJS oder PHP
  • Anbindung von Datenbanken in Webanwendungen
  • Spezifikation von REST-APIs
  • Authentisierungsverfahren in Webanwendungen
  • Test von REST-APIs
mehr ...