Analyse und Implementierung eines Knowledge Tracing Modells

Projektarbeit Dennis Gies - Sommersemester 2022

Durch die COVID-19 Pandemie haben sich viele Aspekte unseres Lebens geändert. Darunter auch die Art und Weise des Lernens. Remote Learning, wie z. B. Intelligent Tutoring Systems, wurde eine beliebte Alternative zum herkömmlichen Präsenzunterricht. Diese Arbeit mit dem Titel "Analyse und Implementierung eines Knowledge Tracing Modells zur Optimierung der Aufgabenvorschläge im eTrainer in Python mithilfe von TensorFlow und Keras" verfolgt das Ziel, mithilfe eines Deep Knowledge Tracing Modells, eine Basis für personalisierte Aufgabenvorschläge zu schaffen. Dieses Modell wurde zunächst mit den durch den eTRainer bereitgestellten Daten trainiert und anschließend getestet. Dem trainierten Modell konnten anschließend neue Aufgabensequenzen von Studierenden zugeführt werden, mit denen das Modell, basierend auf den neuen Sequenzen, vorhersagt, mit welcher Wahrscheinlichkeit ein Studierender das Konzept bei nächster Vorlage einer solchen Aufgabe richtig beantworten wird.

Abbildung 1: Vorgehen von einer Sequenz bis zur Ausgabe der Wahrscheinlichkeiten

Abbildung 1 zeigt das Vorgehen von einer Sequenz bis zur Ausgabe der Wahrscheinlichkeiten. Die Sequenz, welche dem Modell übergeben wird, besteht aus den Modulen, die der Studierende bearbeitet hat und wie er diese gelöst hat. Diese beiden Vektoren werden mithilfe von verschiedenen Funktionen verknüpft und in einen One-Hot-Vektor umgewandelt. Dieser One-Hot-Vektor wird anschließend dem Modell übergeben und zunächst durch eine Masking Schicht geführt. Durch Padding aufgefüllte Werte werden dadurch durch das restliche Netzwerk ignoriert. Im nächsten Schritt wird die Sequenz an die LSTM-Einheiten weitergegeben. Diese sind dafür zuständig, die Abhängigkeiten unter den Konzepten zu modellieren und Wahrscheinlichkeiten zu bestimmen. Die anschließende Dropout-Schicht dient der Prävention von Overfitting des Modells. Abschließend wird die Dropout-Schicht über eine Fully-Connected Schicht zur Ausgabe des Modells umgewandelt. Der Ausgabevektor besitzt die Länge der im eTRainer verwendeten Konzepte. Jedes Element des Ausgabevektors besitzt N Wahrscheinlichkeiten, eine für jeden Zeitpunkt der Sequenz. Das heißt, dass der letzte Eintrag in einem Konzept die Wahrscheinlichkeit widerspiegelt, mit welcher ein Studierender das Konzept zum nächsten Zeitpunkt t+1 richtig beantworten wird. Diese Wahrscheinlichkeit kann nun verwendet werden, um dem Studierenden gezieltere Aufgabenvorschläge zu präsentieren.

Abbildung 2: Darstellung der Entwicklung der Wahrscheinlichkeiten in einer Heat Map

Es besteht die Möglichkeit, die Entwicklung der Wahrscheinlichkeiten in einer Heat Map darzustellen, wie in Abbildung 2 zu sehen ist. Auf der y-Achse sind dabei nur Konzepte aufgetragen, die der Studierende auch wirklich bearbeitet hat. Auf der x-Achse ist die Entwickelung der Wahrscheinlichkeiten der einzelnen Konzepte über die Zeit zu sehen. Außerdem wird für jeden Zeitpunkt angegeben, welches Modul wie vom Studierenden gelöst wurde.

Das entwickelte Modell erzielt zwar gute Ergebnisse, dennoch ist die Entwicklung der Wahrscheinlichkeiten durch die vielen Parameter der LSTM-Schicht nicht sehr intuitiv und nur sehr schwer nachvollziehbar. Nachfolgende Arbeiten könnten dieses Verhalten bewerten und das Modell verbessern. Um das Projekt zu vervollständigen, sollten zukünftige Arbeiten darauf abzielen, die generierten Wahrscheinlichkeiten in konkrete Aufgabenvorschläge umzuwandeln, sodass das Modell Anwendung im eTRainer findet.

Infos zum Projekt

Studierender Dennis Gies    
Semester Sommersemester 22    
Studiengang Elektromobilität (B.Eng.)    
Art der Arbeit Projektarbeit im Bachelor    
back-to-top nach oben