Skip to content
Snippets Groups Projects
Commit 2f731f86 authored by Lukas Gehrke's avatar Lukas Gehrke
Browse files

Adds Aufgabenstellung Entwurf

parent f19e1501
No related branches found
No related tags found
1 merge request!8Resolve "Erstellung Projekt- und Zeitplan für A. Niekler"
......@@ -31,6 +31,45 @@
#### Auflistung der Aufgaben und beabsichtigter Lösungsschritte
##### Zielsetzung Überblick
In dem Projekt soll die Frage geklärt werden, ob Chatbots sich "selbst trainieren können". Dazu soll sich mit der Open-Source Software Rasa auseinandergesetzt werden. Zudem empfiehlt der Betreuer der Gruppe, dass der Chatbot Fragen zu berühmten Physikern beantworten soll. Im folgenden soll ein Chatbot entwickelt werden, der in englischer Sprache fragen zu Physikern beantworten kann.
##### 1. Aufgabenbereich: Auseinandersetzung mit Rasa
Anhand der offiziellen Rasa-Dokumentation soll die Funktionsweise von Rasa-Chatbots verstanden werden. Dabei sind Rasa NLU (Natural Language Understanding - soll Absichten des Users verstehen) Rasa Core (Entscheided über Gesprächsverlauf) und das Rasa-Tool zur Antwortgenerierung zu betrachten. Im nächsten Schritt sollen die Verantwortlichen Rasa auf eigener Hardware in einer lauffähigen Version implementieren. Dazu soll Rasa bevorzugt in einer miniconda-Umgebung laufen (Python 3.6.7). Dies gewährleistet, das alle Teammitglieder Rasa bei sich nutzen können.
3 Abschnitte:
* Rasa NLU: Es soll sich damit auseinandergesetzt werden, wie Rasa für Gespräche trainiert wird. Vor allem soll es um die Vermittlung von Intents an Rasa gehen. Für Intents gibt es die besondere Forschungsfrage: "Sind Intents automatisch erzeugbar?" Diese Frage soll im weiteren Verlauf des Projekts geklärt werden. Im ersten Schritt sollen
* Intents (Thema: Wissen über Physiker, s.o.) von den Gruppenmitgliedern formuliert und Rasa damit trainiert werden.
- Frage: Was ist überhaupt ein Intent?
- Wie müssen Intents für Rasa formuliert werden
Die Forschungsfrage soll im zweiten Schritt geklärt werden
- Lässt sich ein System erzeugen, dass Intents automatisch erzeugen und in Rasas Syntax ausformulieren kann?
* Rasa Core: Hier sollen die Verantwortlichen ermitteln, wie Rasa auf erkannte Intents reagiert. Versteht Rasa die Intents richtig? Stellt Rasa Core die richtigen Rückfragen? Dazu soll Rasa Core ebenfalls implementiert und trainiert werden.
* Rasa Antwort-Generierung: In diesem Teil soll sich auf die zweite Art von Input-Daten für den Rasa-Bot bezogen werden: Daten für die Antworten an User (hier: Wissen über Physiker). Auch hier gliedert sich die Aufgabe in zwei Schritte. Im ersten Schritt sollen die Verantwortlichen klären, wie in Rasa Daten für die Antwortgenerierung eingespeist werden. Dazu sollen auch Beispiel-Trainingsdaten manuell erstellt werden und Rasa damit getestet werden.
Im zweiten Schritt soll wieder geklärt werden, ob die Wissensgrundlage automatisch erzeugbar ist: "Ist das Antwortwissen für Bots automatisch erzeugbar?"
Zielsetzung des Aufgabenbereichs:
* Im ersten Schritt soll ein Rasa-Chatbot erstellt werden, der Usern verschiedene Fragen zu berühmten Physikern auf Englisch beantworten kann.
* Im zweiten Schritt soll ein Verfahren erstellt werden, das einen Chatbot während seines Trainings selbst die Trainingsdaten erstellen lässt.
##### 2. Aufgabenbereich: Auseinandersetzung mit Datenbeschaffung
Der zweite Aufgabenbereich soll sich - zunächst unabhängig von Rasa - mit der Akquise von Daten beschäftigen. Der Bot soll in dem Projekt am Beispiel von Physikern arbeiten. Daher soll sich in diesem Schritt mit der Akquise von entsprechenden Daten beschäftigt werden. Es sollen englischsprachige Daten zu bekannten Physikern akquiriert werden. Dazu soll bevorzugt die englischsprachige Wikipedia gecrawlt werden (Ein geladener Datensatz liegt bereits vor). Akquirierte Daten sollen mittels R strukturiert werden. Dabei sollen, wenn möglich, bereits Automatisierungspotenziale aufgedeckt und dokumentiert werden. Für die akquirierten Daten sollen nun:
* Datenhaltungsmaßnahmen erschlossen werden: Wie speichert man die Daten? (XML-SQL Datenbank, SQLite, etc)
* Möglichkeiten der Umwandlung in für Rasa nützlich Form analysiert werden
Im Detail:
* 1. Akquise von Physikerdaten - Quelle; mediawiki.org, R-Bibliotheken
* 2. Aufbereitung von Physikerdaten - Datenhaltung, Aufbereitung (python oder R)
* 3. Die Frage klären, ob Schritt 1 und Schritt 2 automatisch gelöst werden können? Welche Algorithemn sind möglich?
##### 3. Aufgabenbereich: Dokumentation und Organisation
In diesen Aufgabenbereich fallen alle organisatorischen Aufgaben für das Projekt und die Erstellung Dokumentations- und Präsentationsmedien.
#### Aufgabenzuordnung
#### Grober Zeitplan
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment