Euer KI-Modell trainieren

In dieser Lektion werdet ihr… 

  • eine Plattform für das Training eures KI-Modells festlegen. 
  • euren Datensatz erstellen und das KI-Modell für euer Projekt trainieren.

Schlüsselbegriffe

  • Plattform – eine Software oder Webseite, mit der es möglich ist, eine Aufgabe auszuführen oder ein Tool zu anzuwenden. 
  • Erweiterung – Externe Software, die sehr einfach zu bestehenden Programmen oder Plattformen hinzugefügt werden kann. Durch diese Art von Software werden besondere Funktionen oder Leistungen freigeschaltet. 
  • Klassifizierung – Modell für maschinelles Lernen, das zur Erkennung oder Kategorisierung unterschiedlicher Daten eingesetzt wird. 

An dieser Stelle solltet ihr bereits die Daten für euren Datensatz gesammelt haben. Zur Erinnerung: Die folgenden drei Methoden, helfen euch dabei, Daten für das Training eines KI-Modells zu sammeln:

  1. Sammeln von Trainingsdaten aus eurer Community 
  2. Eure App sammelt Daten mithilfe von Sensoren oder Nutzer:inneneingaben
  3. Verwendung von Daten aus öffentlichen Datensätzen für die Trainingsdaten 

Ebenso solltet ihr bereits festgelegt haben, welche Art von Daten ihr in eurem Datensatz nutzen möchtet. Das heißt: Bilder, Text, Töne oder Posen. 

Bevor ihr mit dieser Lektion fortfahrt, solltet ihr kurz überprüfen, ob euer Datensatz die folgenden Punkte erfüllt: 

  • Die richtige Art von Daten 
  • Viele Beispiele 
  • Unterschiedliche Beispiele – können verschiedene Situationen auf vielfältige Weise abbilden 

Eine geeignete Plattform auswählen 

Online findet ihr viele Plattformen, mit denen man ein KI-Modell trainieren kann. Die meisten Plattformen funktionieren auf ähnliche Weise. Entweder kann man die Daten hochladen oder für Bilder eine Webcam nutzen. In den nächsten Schritten geht es darum, das Modell zu trainieren und abschließend dessen Genauigkeit zu testen. Welche Plattform ihr letztendlich anwendet, hängt von eurem Projekt ab und welche Aufgaben ihr mit eurem trainierten KI-Modell erledigen wollt. All diese Plattformen werden auch als Klassifizierungssysteme bezeichnet, da man mit allen, Dinge oder Sachverhalte klassifizieren oder kategorisieren kann. 

Hier seht ihr die Plattformen, die wir euch für das Training eures KI-Modells empfehlen. Diese Plattformen zeichnen sich besonders durch deren hohe Nutzer:innenfreundlichkeit für Einsteiger:innen und Softwareintegration aus und ermöglichen so, dass euer KI-Modell Handlungen ausführen kann. 

Teachable Machine von Google

Teachable Machine von Google 

Art der Klassifizierung: Text, Töne, Posen

Integrationen: Scratch über das MIT Media Lab, Scratch über Stretch3, andere Integrationen 

MachineLearningForKids

MachineLearningForKids 

Art der Klassifizierung: Bilder, Töne, Texte, Zahlen

Integrationen: Scratch, App Inventor, Python 

MIT App Inventor

MIT App Inventor 

Art der Klassifizierung:Bilder, Töne

Integrationen: Mobile Apps mit App Inventor 

mblock

mblock 

Art der Klassifizierung:Text, Bilder

Integrationen: Scratch

Zwar verfügt Thunkable über KI-Funktionen, jedoch ist es nicht möglich ein eigenes KI-Modell zu trainieren und in einer App zu verwenden. Innerhalb der Kamerakomponente könnt ihr in Thunkable die Bilderkennung von Microsofts Azure (Microsoft’s Azure Image Recognition), ein vorkonfiguriertes KI-Modell, verwenden. Um euer eigenes KI-Modell in ein Thunkable-Projekt zu integrieren, könnt ihr auch die Web-API-Komponente und externe Plattformen für maschinelles Lernen nutzen. 

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

In diesem Video von der International Joint Conference on Artificial Intelligence 2021 (kurz: IJCAI) zeigt euch Pratham Goradia von MakerBay, wie man eine App entwickeln kann, die Korallenarten erkennen kann. Um das KI-Modell zu trainieren, nutzt Pratham Ximilar. Um das Modell in sein Projekt zu integrieren, wendet er anschließend die Web-API-Komponente in Thunkable an. 

 Natürlich gibt es auch andere, fortgeschrittener KI-Tools. Ein paar dieser Tools findet ihr im Abschnitt Zusatzmaterial. Möglicherweise ist die Nutzung komplexerer Programmiersprachen, wie bspw. Java, Python oder Swift, und höchstwahrscheinlich auch von APIs (Application Programming Interface) notwendig. 

Weitere Informationen zu jeder der empfohlenen Plattformen findet ihr unten. Damit ihr die Plattform findet, die am besten zu eurem Projekt passt, solltet ihr euch diese Informationen sorgfältig durchlesen. Welche Plattform sich am besten für euer Projekt eignet, hängt dabei auch von den Daten in eurem Datensatz ab. Nicht mit jeder Plattform lassen sich alle Arten von Daten trainieren. Solltet ihr eine mobile App entwickeln wollen, dann sind bspw. App Inventor oder MachineLearningforKids mögliche Alternativen. Plattformen wie Stretch3 und mblock sind dafür gedacht, wenn ihr die Integration von Hardware wie bspw. micro:bit oder Raspberry Pi beabsichtigt. 

Um herauszufinden, welche Plattform euch beim Erreichen eurer Projektziele unterstützen kann, empfehlen wir, dass ihr euch ein paar Tutorials zu den Plattformen anseht. 

Klickt dabei auf den entsprechenden Link, um mehr über jede Plattform zu erfahren. 

Mit Teachable Machine von Google könnt ihr ganz einfach KI-Modelle trainieren, die mit anderen Plattformen verwendet werden können. In diesem Video erhaltet ihr mehr Informationen über Teachable Machine und wie man ein KI-Modell trainiert. Man kann Teachable Machine mit zahlreichen anderen Webseiten und Tools nutzen. Die einfachste Integration mit einer blockbasierten Programmiersprache ist Stretch3, einer Version von Scratch. Solltet ihr den Einsatz externer Hardware wie micro:bit, Arduino, oder Raspberry Pi planen, empfiehlt es sich, Stretch3 mit Teachable Machine zu kombinieren. Warum? Weil Stretch3 über viele Erweiterungen verfügt, mit denen sich diese Geräte integrieren lassen. 

 In den folgenden drei Tutorials könnt ihr Teachable Machine mittels unterschiedlicher Datenarten ausprobieren. 

MachineLearningforKids ist eine vielseitige Plattform, in der man dank zahlreicher unterschiedlicher Tutorials lernt, wie man ein trainiertes KI-Modell mit Scratch, App Inventor oder Python integriert. Ein Modell könnt ihr hier mit Datensätzen aus Bildern, Tönen, Text oder Zahlen trainieren. Bitte beachtet, dass eure Lehrer:in oder Mentor:in zunächst einen Lehrer:innen-Konto anlegen muss, damit sie oder er anschließend ein Schüler:innen-Konto für euch erstellen kann. Über dieses Konto könnt ihr dann eure Projekte speichern. 

Dieses Video zeigt euch SkinClin, ein Projekt eines Technovation-Teams. Beim SkinClin handelt es sich um ein Scratch-Projekt, mit dessen Hilfe Hautkrankheiten erkannt werden können. Bei der Entwicklung dieses Projekts wurde MachineLearningforKids eingesetzt. 

Dieses Video veranschaulicht sehr gut, wie ein Technovation-Team MachineLearningforKids nutzt, um eine mobile App zur Sortierung medizinischer Abfälle zu entwickeln. Es ist eine vollständige Anleitung, die euch aufzeigt, wie man diese App erstellt. 

In diesem Video, solltet ihr das Beispiel aus der Lektion Künstliche Intelligenz 3 für einen öffentlichen Datensatz nutzen, um anschließend ein KI-Modell so zu trainieren, dass es Bilder von Schwertlilien klassifizieren kann. Dies sollt ihr mit MachineLearningforKids tun. 

Mit App Inventor können mobile Apps entwickelt werden. Zudem ist es eine der in diesem Curriculum empfohlenen Programmiersprachen für Einsteiger:innen. App Inventor hat mit seiner eigenen Trainingsplattform für KI-Modelle die Integration von Bild- und Tonklassifizierung hinzugefügt. Dies stellt eine interessante Möglichkeit dar, falls zu eurem Projekt eine mobile App gehört. 

Wie ihr mithilfe des App Inventor Image Classifier einen Datensatz trainieren könnt, der Bilder beinhaltet, seht ihr in diesem Video. Dieser Datensatz unterscheidet zwischen gesunden und kranken Obstsorten. 

Probiert doch einfach mal in App Inventor die KI-Funktionen Audioklassifizierung, Posenerkennung oder Face Mesh aus. 

Lasst euch vom verspielten Panda nicht täuschen. Auch in mblock, einer weiteren Scratch-Version, sind dank der Erweiterungen der Plattform viele anspruchsvolle KI-Tools integriert. mblock arbeitet beim Training von KI-Modellen mit Teachable Machine. Zeitgleich ist Letzteres direkt in die mblock-Plattform integriert. Hier könnt ihr lediglich Bilder über die Webcam trainieren. Bilder können im mblock nicht hochgeladen werden. Durch die Erweiterung „Cognitive Services“ enthält mblock integrierte KI-Modelle zur Erkennung von handgeschriebenem Text, Sprache, Gegenständen und Gefühlen. 

Ein kurzes Tutorial darüber, wie ihr Teachable Machine in mblock verwendet, findet ihr hier. 

Wenn ihr externe Hardware wie micro:bit, Arduino oder Raspberry Pi nutzen möchtet, dann ist mblock eine gute Option. Darüber hinaus bietet die Plattform eine umfangreiche Unterstützung für das Hinzufügen von Hardware, was für euer KI-Projekt von Nutzen sein kann, falls ihr Sensordaten sammelt. 

Ihr könnt in mblock zwischen blockbasierter Programmierung oder Python wählen. So habt ihr die Chance, den Übergang von der blockbasierten Programmierung zu Python zu erlernen. 

  

Aktivität: Trainiert euer KI-Modell 

Aufgabe:

1. Geht die unterschiedlichen Plattformen durch und schaut euch mehrere Tutorials an, um die Plattformen auszuprobieren. Die Plattform sollte… 

  • den Datensatz (Bilder, Töne, Text, usw.) trainieren können, den ihr verwendet. 
  • euch ermöglichen, das Modell in eure geplante KI-Lösung zu integrieren. Eure Möglichkeiten dafür sind u.a.: 
    • Eine mobile App 
    • Eine KI-Lösung mit Sensoren 
    • Ein physisches System mit Hardware 

2. Entscheidet, nachdem ihr mehrere Plattformen bzw. Tools getestet habt, welche euer Team für das KI-Projekt für Technovation einsetzen wird.

3. Trainiert euer KI-Modell mit dem Datensatz. Solltet ihr noch nicht alle Beispieldaten für euren Datensatz gesammelt haben, könnt ihr Beispiele hinzufügen und den Datensatz im Laufe des Projekts immer weiter ausbauen. Bitte achtet unbedingt darauf, euer Projekt/Modell zu speichern, damit ihr später immer wieder daran arbeiten könnt!

4. Sobald das KI-Modell trainiert wurde, gilt es dieses mithilfe von weiteren Beispieldaten zu testen. Diese Beispieldaten sollten sich von den Daten unterscheiden, die ihr für das Training des KI-Modells genutzt habt. 

5. Falls das KI-Modell nicht richtig funktioniert, solltet ihr weitere Beispiele zu den Trainingsdaten hinzufügen. Habt ihr ausreichend Beispiele eingegeben? Bilden die Beispiele verschiedene Situationen auf vielfältige Weise ab?

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Falls eure Lehrer:in oder Mentor:in ein Konto für euch bei MachineLearningForKids angelegt hat, wird euer Projekt, das auch das KI-Modell beinhaltet, gespeichert. Auf diese Weise könnt immer wieder an eurem Projekt arbeiten. Allerdings könnt ihr das Scratch-Projekt nicht speichern. Damit ihr eine Kopie speichern könnt (falls ihr mit Scratch 3 von MachineLearningForKids aus arbeitet), solltet ihr das Projekt auf eurem PC speichern. Wenn ihr MachineLearningForKids beim nächsten Mal öffnet und ihr das Scratch-Projekt benötigt, könnt ihr es dann einfach auf eurem PC laden. 

document

Reflexion

Ihr habt euch nun hoffentlich für die Plattform entschieden, auf der ihr euer KI-Modell trainieren und durch die ihr anschließend euer KI-Projekt umsetzen möchtet. Versucht jetzt, euch die folgenden Fragen zu beantworten. Anhand der Antworten könnt ihr besser begründen, warum ihr euch für KI entschieden habt und warum ihr diese bestimmte Technologie für euer Technovation-Projekt ausgesucht habt. 

  • Welche Arten von Daten befinden sich in eurem Datensatz? 
  • Inwiefern ist die von euch gewählte Plattform für diese Art von Daten besonders geeignet? 
  • Welches Ziel möchtet ihr mit eurem KI-Modell erreichen, nachdem ihr es erstellt habt? 
  • Seid ihr davon überzeugt, dass die von euch gewählte Plattform euch helfen wird, eure Ziele zu erreichen? 

Zusatzmaterial

Fortgeschrittene KI-Integrationen

Um mehr über die Integration von externen Diensten in eure App zu erfahren, solltet ihr euch unbedingt die Coding-Lektion „Cloud-Speicher und APIs“ durcharbeiten. Von diesen Integrationen sind manche nur mit komplexeren Programmiersprachen, (wie bspw. Java oder Swift) kompatibel. Allerdings lohnt es sich auf jeden Fall, sich mit ihnen auseinanderzusetzen, wenn ihr sie in eurer App verwenden möchtet. 

  • Dialogflow 
    • Eignet sich hervorragend für die Entwicklung von KI-Apps für Gespräche 
  • TensorFlow 
    • Verfügt über jede Menge Tools. Dazu gehört die Verschriftlichung handgeschriebener Zahlen, das Erraten von Posen und vieles mehr! 
  • Google 
    • Google bietet euch eine große Sammlung an KI-Tools. In diesem Video findet ihr eine gute Zusammenfassung. Hinweis: Wenn ihr euch für die Nutzung dieser Tools entscheidet, solltet ihr unbedingt vorher die Kosten beachten. Ein paar dieser Tools sind kostenlos. Dies hängt aber davon, von wie vielen Nutzer:innen die Tools benutzt werden. 

 VianAI 

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Hier erfahrt ihr von den Entwickler:innen von VianAI, wie man in Python mit der Colab-Plattform von Google programmiert, um ein KI-Tool zu entwickeln, das Menschen dabei hilft, Suchergebnisse zu finden, die ihnen helfen, ihre Träume zu verwirklichen. 

Schaut euch auch mal Dialogflow mit Google-Enwickler:innen an:

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Technovation Challenge

Bewertungskriterien für den internationalen Wettbewerb

Am Ende der Technovation-Saison wird die App oder das KI-Projekt anhand von bestimmten Kriterien in verschiedenen Kategorien von einer Jury bewertet. Diese Lektion hilft euch, Punkte für die Erklärung eures KI-Modells im Abschnitt „Demo-Video“ zu sammeln. Hier könnt ihr den Bewertungsbogen einsehen.