Jump to contentJump to search

KI mit Scratch

Ein visueller Chatbot

Im Folgenden berichtet Lilli Frenk darüber, wie sie einen Charakter, der unterschiedlich auf freundliche und gemeine Eingaben reagiert, selbstständig in Scratch programmiert hat. Hier ist der Link zum externen Lernangebot "Unterrichtsmaterial Künstliche Intelligenz" des KI-Campus und hier die Webseite von AppCamps, auf der man sich registrieren und auf die Materialien zugreifen kann.

Mit Machine Learning for Kids UK und Scratch 3 kann man sehr einfach seinen eigenen Chatbot programmieren, der auf positive und negative Aussagen reagiert. Zunächst wird ein Projekt angelegt, man klickt dann auf „machen“ und öffnet Scratch 3. Da malt man erstmal eine eigene Figur, die den Chatbot bildlich darstellen soll. Damit der Chatbot unterschiedliche Gesichtsausdrücke machen kann, kopiert man das Gesicht zweimal und macht jeweils eins von ihnen neutral, glücklich oder traurig. Dementsprechend benennt man die Kostüme, wie sie von Scratch genannt werden, auch danach. Das ist wichtig, damit man dem Bot später genau vorschreiben kann, wann er welches Gesicht zeigen muss. Danach wechselt man in die Rubrik "Skripte". Hier kann man, durch das Zusammensetzen von verschiedenen Bausteinen, den Chatbot programmieren und Befehle geben. Am linken Rand gibt es verschiedene Kategorien, worunter man Bausteine mit verschiedenen Befehlen findet. Wenn man einen bestimmten Baustein nutzen möchte, dann zieht man diesen einfach nach rechts in das Feld zwischen dem Chatbot- Gesicht und der Bausteinauswahl. Dort wird nachher eine Kette von Bausteinen sein.

Somit reiht man Bausteine aneinander, die dem Chatbot genau sagen wie er auf was zu reagieren hat. Die Ausgangssituation soll zum Beispiel das neutrale Gesicht sein, das der Chatbot zeigen soll, wenn die grüne Flagge oben rechts geklickt wird. Damit der Bot das macht, verbindet man einfach die passenden Bausteine miteinander. Anschließend wählt man zusätzlich den Baustein "frage (...)" aus, gibt in das Eingabefeld "Schreibe etwas..." ein und hängt ihn an die anderen Bausteine. Um dem Chatbot zu sagen, wie er auf nette und gemeine Aussagen zu reagieren hat, sagt man ihm mit Hilfe der passenden Bausteine, dass, falls jemand mit "Du bist toll" antwortet, er das Kostüm "happy" zeigen soll. Genau das gleiche macht man nochmal und gibt dieses Mal an auf "Du bist doof" mit dem "sad" Kostüm zu reagieren. Der Chatbot soll dann noch drei Sekunden warten, damit man sich die Reaktion genau ansehen kann. Dafür sucht man wieder den passenden Baustein und setzt ihn ans Ende. Damit der Bot danach wieder in die Ausgangsposition versetzt wird, muss man alles was nach dem Flaggen-Befehl kommt mit einem "wiederhole fortlaufend" Baustein einklammern. Somit steht die Grundlage für den Chatbot.

Allerdings kann er bisher nur auf "Du bist toll" oder "Du bist doof" antworten. Deswegen kann man ihm dann noch mit Hilfe von Machine Learning antrainieren auch auf andere Phrasen zu antworten. Dafür erstellt man unter der Rubrik "Lernen und Testen" vom Anfang "Labels" für die Arten der Phrasen. Zum Beispiel erstellt man ein Label für "Nett" und eins für "Gemein", wo man dann jeweils passende Phrasen reinschreibt. Dann initiiert man den Trainingsvorgang. Der Trainingsvorgang ist bei der Programmierung von Künstlicher Intelligenz sehr wichtig, da sie durch ihn die Informationen miteinander verbindet und lernt sie zu kategorisieren. Wenn der Vorgang beendet ist, fügt man die Trainingsdaten in Form eines passenden Bausteins zwischen die Bausteine bei Scratch ein. Nun kann der Chatbot auf diese Phrasen reagieren und auch neue und ähnliche Phrasen erkennen und einordnen. Wenn doch noch viele Fehler passieren, kann man zu den Labels noch mehr Phrasen hinzufügen, welche dann wiederum nochmal trainiert werden müssen, oder den Bot nachfragen lassen, ob die Aussage nett gemeint war, wenn er sich mal nicht sicher ist.

Jetzt kann man sagen, dass man seinen eigenen Chatbot programmiert hat! Natürlich kann man den Bot auch noch mehr Sachen machen lassen, wie zum Beispiel sich für Komplimente zu bedanken oder bei bestimmten Interaktionen Geräusche zu machen. Der Schüssel dafür ist die Variation an Bausteinen, die einem zur Verfügung stehen!

Responsible for the content: