Baustelle.png Diese Seite muss übersetzt werden. Greif zu!
Wenn du dich um diesen Artikel kümmern willst, dann kennzeichne das, indem du die Vorlage {{Übersetzen}} durch die Vorlage {{ÜbersetzenVergeben}} ersetzt.
Wenn du mit deiner Arbeit fertig bist, dann entferne die Vorlage aus dem Artikel.
Danke für deine Mitarbeit!


Überblick

Die Moodle Learning Analytics API ist ein offenes System, das die Basis für eine Vielzahl von Modellen werden kann. Modelle können Indikatoren (Vorhersager), Ziele (Ausgang, den wir vorhersagen wollen), Einschätzungen (die Vorhersagen selbst), Benachrichtigungen (Mitteilungen, die aufgrund von Einschätzungen verschickt werden) und Aktionen (die den Empfänger/innen der Benachrichtigungen vorgeschlagen werden und die selbst wieder zu Indikatoren werden können) enthalten.

learning analytics components.png

Die meisten Modelle sind standardmäßig deaktiviert. Die Modelle sollten erst aktiviert werden, nachdem Sie sich Gedanken darüber gemacht haben, welche Bildungsziele durch die Modelle unterstützt werden sollen. Bei der Auswahl oder dem Anlegen von Learning Analytics Modellen sind folgende Schritte wichtig:

  • Welchen Ausgang wollen wir vorhersagen? Oder welchen Prozess wollen wir entdecken? (positiv oder negativ)
  • Wie entdecken wir diesen Ausgang oder Prozess?
  • Welche Anhaltspunkte können helfen, diesen Ausgang oder Prozess vorherzusagen?
  • Was sollten wir tun, wenn der Ausgang oder Prozess mit hoher Wahrscheinlichkeit eintritt oder nicht eintritt?
  • Wer sollte benachrichtigt werden? Welche Art von Benachrichtigung soll versendet werden?
  • Welche Möglichkeiten zur (Re-)Aktion sollten bei Benachrichtigung bereitgestellt werden?

Moodle kann mehrere Vorhersagemodelle gleichzeitig unterstützen, sogar innerhalb ein und desselben Kurses. Das kann für A/B-Tests verwendet werden, um die Leistungsfähigkeit und Genauigkeit verschiedener Modelle zu vergleichen.

Neue Funktionalität
in Moodle 3.10!
Moodle Learning Analytics unterstützt zwei Arten von Modellen.

  • Machine-Learning-basierte Modelle, inklusive Vorhersagemodelle, nutzen Modelle der künstlichen Intelligenz, die mit Daten aus der Moodle-Site-Historie trainiert werden, um verborgene Aspekte des Lernprozesses zu entdecken oder vorherzusagen.
  • Statische Modelle nutzen ein einfacheres, regel-basiertes System, um besondere Situation in der Moodle-Site zu entdeckenund ausgewählte Nutzer/innen darüber zu benachrichtigen.

Das Standardpaket von Moodle stellt drei Modelle bereit: Teilnehmer/innen sind gefährdet auszusteigen und die statischen Modelle Fälligkeit von Aktivitäten und Keine Lehrtätigkeit. Sie können weitere Vorhersagemodelle anlegen, indem Sie die Analytics API oder die neue grafische Oberfläche verwenden. Jedes Modell basiert auf der Vorhersage eines einzelnen, spezifischen Ziels oder Ausgangs (der entweder erwünscht oder unerwünscht ist) und zu dem eine Reihe von ausgewählten Indikatoren gehören.

Sie können die Modelle auf der Seite Website-Administration > Analytics > Analytics-Modelle ansehen und verwalten.

manage models.png

Vorhandene Modelle

Das Moodle-Standardpaket enthält drei Vorhersagemodelle: Teilnehmer/innen sind gefährdet auszusteigen sowie die statischen Modelle Fälligkeit von Aktivitäten und Keine Lehrtätigkeit. Weitere Modelle können durch Installation eines Plugins oder über die grafische Oberfläche (siehe unten) hinzugefügt werden. Vorhande Modelle können auf der Seite Website-Administration > Analytics > Analytics-Modelle untersucht und geändert werden.

analytics models.png

Für vorhandene Modelle können Sie u.a. folgende Aktionen durchführen:

  • Vorhersagen erstellen: Trainieren Sie die Algorithmen des maschinellen Lernens mit neuen Daten der Moodle-Site und generieren Sie Vorhersagen für laufende Kurse. Vorhersagen sind nicht auf laufende Kurse beschränkt - das hängt vom Modell ab.
  • Einschätzungen ansehen: Sobald Sie die Algorithmen des maschinellen Lernens mit neuen Daten der Moodle-Site trainiert haben, sehen Sie Einschätzungen (Vorhersagen) für jedes analysierbare Element. Im Standardmodell Teilnehmer/innen sind gefährdet auszusteigen können die Einschätzungen pro Kurs ausgewählt werden. Vorhersagen sind nicht auf laufende Kurse beschränkt - das hängt vom Modell ab.
  • Auswerten: Das passiert normalerweise im Hintergrund als eine Reihe von geplanten Vorgängen. Sie können diesen Prozess jedoch manuell über ein Menü anstoßen. Werten Sie das Vorhersagemodell aus, indem Sie alle auf der Moodle-Site verfügbaren Trainingsdaten sammeln, die Indikatoren und Ziele berechnen und den daraus resultierenden Datensatz an die Backends des maschinellen Lernens übermitteln. Dieser Prozess teilt den Datensatz in Trainingsdaten und Testdaten auf und berechnet dessen Genauigkeit. Beachten Sie, dass der Auswertungsprozess alle Informationen, die auf der Moodle-Site verfügbar sind, verwendet, auch wenn sie sehr alt sind. Deshalb kann die Genauigkeit, die der Auswertungsprozess liefert, geringer als die tatsächliche Modellgenauigkeit sein, da die Indikatoren zuverlässiger berechnet werden, direkt nachdem Trainingsdaten verfügbar sind, da der Site-Zustand sich ständig ändert. Die Metrik, die zur Berechnung der Genauigkeit verwendet wird, ist der Matthews Correlation Coefficient (eine Metrik, die im maschinellen Lernen zur Berechnung binärer Klassifikationen verwendet wird)

Sie können die Modellauswertung auch von Kommandozeile aus starten:

$ admin/tool/analytics/cli/evaluate_model.php

model-evaluation.jpeg

  • Log Schauen Sie sich vorherige Auswertunsglogdaten an, inklusive der Modellgenauigkeit und anderer technischer Informationen, die von den Backends des maschinellen Lernens berechnet wurden, wie z.B. ROC-Kurven, Lernkurven-Graphen oder der Matthews Correlation Coefficient des Modells. Die verfügbare Information hängt vom verwendeten Backend des maschinellen Lernens ab.

log info.png

  • Bearbeiten: Sie können die Modelle bearbeiten, indem Sie die Liste der Indikatoren oder die Zeitaufteilungsmethode ändern. Wenn das Modell geändert wird, werden alle früheren Vorhersagen gelöscht. Modelle, die auf Annahmen basieren (statische Modelle), können nicht bearbeitet werden.
  • Aktivieren / Deaktivieren: Der geplante Vorgang, der die Algorithmen des maschinellen Lernens mit neuen auf der Moodle-Site verfügbaren Daten trainiert und Vorhersagen für laufende Kurse erstellt, übergeht deaktivierte Modelle. Frühere Vorhersagen, die von deaktivierten Modellen berechnet wurden, sind nicht verfügbar, solange das Modell nicht wieder aktiviert wird.

Neue Funktionalität
in Moodle 3.10!

  • Exportieren: Exportieren Sie die Trainingsdaten Ihrer Moodle-Site, um sie mit Partnereinrichtungen zu teilen oder in neuen Moodle-Sites zu verwenden. Beim Exportieren wird eine CSV-Datei generiert, die die Modelldaten zu Indikatoren und Gewichten enthält, ohne irgendwelche spezifischen Daten Ihrer Moodle-Site offenzulegen. Wir bitten Sie, uns solche CSV-Dateien zu schicken, um den Wert der Modelle für verschiedenen Arten von Moodle-Sites zu beurteilen. Siehe Learning Analytics Community für mehr Informationen.
  • Ungültige Elemente: Gibt an, welche Elemente auf Ihrer Moodle-Site nicht vom Modell analysiert werden können.
  • Vorhersagen löschen: Löscht alle Vorhersagen und Trainingsdaten.

Standardmodelle

Teilnehmer/innen sind gefährdet auszusteigen

Dieses Modell sagt voraus, welche Teilnehmer/innen gefährdet sind, einen Moodle-Kurs nicht zu beenden, weil sie wenig Aktivität im Kurs zeigen. "Aussteigen" ist in diesem Zusammenhang so definiert, dass eine Person im letzten Viertel des Kurses keine Aktivität zeigt. Das Vorhersagemodell nutzt das Modell Community of Inquiry von Engagement, das aus drei Teilen besteht:

Dieses Vorhersagemodell kann eine große Bandbreite von Kursen analysieren, daraus Schlussfolgerungen ziehen und diese Schlussfolgerungen anwenden, um Vorhersagen für neue Kurse zu erstellen. Das Modell ist nicht beschränkt auf das Erstellen von Vorhersagen zum Teilnehmererfolg in Kursen, die exakte Duplikate von frühren Kursen sind. Gleichwohl gibt es einige Einschränkungen:

  1. Das Modell erfordert eine gewisse Menge an Moodle-Daten, um damit Vorhersagen zu erstellen. Zum gegenwärtigen Zeitpunkt sind nur Aktivitäten des Moodle-Standardpakets in der Menge der Indikatoren enthalten (siehe unten). Für Kurse, die keine Standard-Moodle-Aktivitäten "pro Zeitabschnitt" (abhängig von der Zeitaufteilungsmethode) enthalten, gibt es nur schwache Vorhersagen. Das Vorhersagemodell ist am effektivsten für Kurse, die komplett als Online-Kurse oder Blended-Learning-Kurse mit hinreichend vielen Online-Aktivitäten arbeiten.
  2. Das Modell nimmt an, dass Kurse feste Kursbeginn- und Kursende-Daten haben und es ist nicht gedacht für Kurse mit fortlaufenden Einschreibungen zu beliebigen Zeitpunkten. Modelle, die eine größere Bandbreite von Kursen unterstützen, werden in künftigen Moodle-versionen in das Standardpaket integriert. Wegen dieser Modellannahme ist es sehr wichtig, die Daten für Kursbeginn und Kursende für die zu analysierenden Kurse richtig einzustellen. Wenn diese daten nicht richtig konfiguriert sind, können die Vorhersagen nicht genau sein. Da das Kursende-Datum erst in Moodle 3.2 eingeführt wurde und einige Kurse in der Vergangenheit kein Kursbeginn-Datum haben können, stellen wir ein Skript zur Verfügung:
$ admin/tool/analytics/cli/guess_course_start_and_end.php 

Dieses Skript versucht, die Kursbeginn- und Kursende-Daten vergangener Kurse abzuschätzen, indem es die Kurseinschreibungen und Teilnehmer-Logdaten der Kurse auswertet. Prüfen Sie nach der Ausführung des Skripts, ob die abgeschätzten Kursbeginn- und Kursende-Daten hinreichend korrekt sind.

Fälligkeit von Aktivitäten

Neue Funktionalität
in Moodle 3.10!

Das statische Modell Fälligkeit von Aktivitäten überprüft Aktivitäten mit anstehenden Fällligkeitsdaten und Ausgaben im persönlichen Kalender der Nutzer/innen.

Keine Lehrtätigkeit

Die Einschätzungen dieses Modells informieren Moodle-Site-Verwalter/innen, in welchen Kursen mit anstehendem Kursbeginn-Datum es keien Lehrtätigkeit gibt. Das ist ein einfaches statisches Modell, es verwendet keine Algorithmen des maschinellen Lernens, um Vorhersagen zu berechnen. Es trifft Vorhersagen auf der Basis von Annahmen, z.B. dass es keine Lehrtätigkeit gibt, wenn keine Teilnehmer/innen im Kurs eingeschrieben sind.

Creating and editing models

Vorlage:New features

New machine learning models can be created by using the Analytics API, by importing an exported model from another site, or by using the new web UI in 3.7.

If you delete a "default" model (shipped with Moodle core) you can restore it from the Create menu. (Note: "static" models cannot be created using the web UI at this time.)

There are four components of a model that can be defined through the web UI:

Target

create model 2.png

Targets represent a “known good”-- something about which we have very strong evidence of value. Targets must be designed carefully to align with the curriculum priorities of the institution. Each model has a single target. The “Analyser” (context in which targets will be evaluated) is automatically controlled by the Target selection. See Learning analytics targets for more information.

Indicators

Indicators are data points that may help to predict targets. We are free to add many indicators to a model to find out if they predict a target-- the only limit is that the data must be available within Moodle and must have a connection to the context of the model (e.g. the user, the course, etc.). The machine learning “training” process will determine how much weight to give to each indicator in the model.

We do want to make sure any indicators we include in a production model have a clear purpose and can be interpreted by participants, especially if they are used to make prescriptive or diagnostic decisions.

Indicators are constructed from data, but the data points need to be processed to make consistent, reusable indicators. In many cases, events are counted or combined in some way, though other ways of defining indicators are possible and will be discussed later. How the data points are processed involves important assumptions that affect the indicators. In particular, indicators can be absolute, meaning that the value of the indicator stays the same no matter what other samples are in the context, or relative, meaning that the indicator compares the sample to others in the context.

See Learning analytics indicators for more information.

indicators.png

Analysis intervals

Analysis intervals control how often the model will run to generate insights, and how much information will be included in each generation cycle. The two analysis intervals enabled by default for selection are “Quarters” and “Quarters accumulative.” Both options will cause models to execute four times-- after the first, second, third and fourth quarters of the course (the final execution is used to evaluate the accuracy of the predictions against the actual outcome). The difference lies in how much information will be included. “Quarters” will only include information from the most recent quarter of the course in its predictions. “Quarters accumulative” will include the most recent quarter and all previous quarters, and tends to generate more accurate predictions (though it can take more time and memory to execute). Moodle Learning Analytics also includes “Tenths” and “Tenths accumulative” options in Core, if you choose to enable them from the Analytics Settings panel. These generate predictions more frequently.

  • Single range indicates that predictions will be made once, but will take into account a range of time, e.g. one prediction at the end of a course. The prediction is made at the end of the range.
  • Upcoming... indicates that the model generates an insight based on a snapshot of data at a given moment, e.g. the "no teaching" model looks to see if there are currently any teachers or students assigned to a course one week before the start of the term, and issues one insight warning the site administrator that no teaching is likely to occur in that empty course.
  • All previous... (formerly "accumulative") and Last... methods differ in how much data is included in the prediction. Both "All previous quarters" and "Last quarter" predictions are made at the end of each quarter of a time span (e.g. a course), but in "Last quarter," only the information from the most recent quarter is included in the prediction, whereas in "All previous quarters" all information up to the present is included in the prediction.

Single range and No time splitting methods do not have time constraints. They run during the next scheduled task execution, although models apply different restrictions (e.g. require that a course is finished to use it for training or some data in the course and students to use it to get predictions...). 'Single range' and 'No splitting' are not appropriate for students at risk of dropping out of courses. They are intended to be used in models like 'No teaching' or 'Spammer user' that are designed to make only one prediction per eligible sample. To explain this with an example: 'No teaching' model uses 'Single range' analysis interval; the target class (the main PHP class of a model) only accepts courses that will start during the next week. Once we provide a 'No teaching' insight for a course we won't provide any further 'No teaching' insights for that course.

The difference between 'Single range' and 'No splitting' is that models analysed using 'Single range' will be limited to the analysable elements (the course in students at risk model) start and end dates, while 'No splitting' do not have any time contraints and all data available in the system is used to calculate the indicators.

Note: Although the examples above refer to courses, analysis intervals can be used on any analysable element. For example, enrolments can have start and end dates, so an analysis interval could be applied to generate predictions about aspects of an enrollment. For analysable elements with no start and end dates, different analysis intervals would be needed. For example, a "weekly" analysis interval could be applied to a model intended to predict whether a user is likely to log in to the system in the future, on the basis of activity in the previous week.

Predictions processor

This setting controls which machine learning backend and algorithm will be used to estimate the model. Moodle currently supports two predictions processors:

  • PHP machine learning backend - implements logistic regression using php-ml (contributed by Moodle)
  • Python machine learning backend - implements single hidden layer feed-forward neural network using TensorFlow.

You can only choose from the predictions processors enabled on your site.

regression.png
ffnn.png

Each prediction processor may support multiple algorithms in the future.

Changing the model name

The model name is used to identify insights generated by the model, and by default, is the same as the Target name. You can edit this by clicking the "pencil" icon next to the model name in the list of models:

edit model name.png

Training models

Machine-learning based models require a training process using previous data from the site. "Static" models make use of sets of pre-defined rules, and do not need to be trained.

There are two main categories of machine-learning based analytics models: supervised and unsupervised.

  • Supervised models must be trained by using a data set with the target values already identified. For example, if the model will predict course completion, the model must be trained on a set of courses and enrollments with known completion status.
  • Unsupervised models look for patterns in existing data, e.g. grouping students based on similarities in their behavior in courses.

At the present time, Moodle Learning Analytics only supports supervised models.

While we hope to include pre-trained models with the Moodle core installation in the future, at the current time we do not have large enough data sets to train a model for external use. (If you would like to help contribute data for this effort, please see the Moodle Learning Analytics Working Group.)

Training data

The model code includes criteria for "training" and "prediction" data sets. For example, only courses with enrolled students and an end date in the past can be used to train the Students at risk of dropping out model, because it is impossible to determine whether a student dropped out until a course has ended. On the other hand, for this model to make predictions, there must be a course with students enrolled that has started, but not yet ended.

The training set is defined in the php code for the Target. Models can only be trained if a site contains enough data matching the training criteria. Most models will require Moodle log data for the time period covering the events being analysed. For example, the Students at risk of dropping out model can only be trained if there is log data covering student activity in the courses that meet the training criteria. It is possible to train a model on an "archive" system and then use the model on a production system.

Triggering model evaluation

model menu evaluate.png

This is normally done in the background as a series of scheduled tasks, but you can trigger the start of the process from the model menu. This causes Moodle to assemble the training data available on the site, calculate all the indicators and the target and pass the resulting dataset to machine learning backends. This process will split the dataset into training data and testing data and calculate its accuracy. Note that the evaluation process uses all information available on the site, even if it is very old. Because of this, the accuracy returned by the evaluation process may be lower than the real model accuracy as indicators are more reliably calculated immediately after training data is available because the site state changes over time. The metric used to describe accuracy is the Matthews correlation coefficient (a metric used in machine learning for evaluating binary classifications)

You can also force the model evaluation process to run from the command line:

$ admin/tool/analytics/cli/evaluate_model.php

Review evaluation results

model menu log.png

You can review the results of the model training process by accessing the evaluation log.

model log.png
log info.png

Check for warnings about evaluation completion, model accuracy, and model variability.

invalid site elements.png

You can also check the invalid site elements list to verify which site elements were included or excluded in the analysis. If you see a large number of unexpected elements in this report, it may mean that you need to check your data. For example, if courses don't have appropriate start and end dates set, or enrolment data has been purged, the system may not be able to include data from those courses in the model training process.

Exporting and Importing models

Models can also be exported from one site and imported to another.

Exporting models

You can export the data used to train the model, or the model configuration and the weights of the trained model.

export dialogue.png

Note: the model weights are completely anonymous, containing no personally identifiable data! This means it is safe to share them with researchers without worrying about privacy regulations.

Importing models

When a model is imported with weights, the site administrator has the option to evaluate the trained model using site data, or to evaluate the model configuration by re-training it using the current site data.

import model.png
evaluate model.png