5 Punkte von GN⁺ 2024-01-08 | 1 Kommentare | Auf WhatsApp teilen
  • Teachable Machine ist ein Tool, mit dem sich Machine-Learning-Modelle direkt im Web erstellen lassen; auch die erste Version von 2017 ist noch auf einer separaten Seite verfügbar
  • Nutzer können Trainingsdaten per Dateiupload oder Live-Erfassung eingeben, und für Webcam- bzw. Mikrofondaten kann auch eine Variante ohne Übertragung außerhalb des Computers gewählt werden
  • Die unterstützten Modelle sind in Bild, auf kurzen Klangbeispielen basierendes Audio sowie auf Webcam- bzw. Dateien basierende Körperhaltungs-Klassifikation unterteilt
  • Es werden außerdem experimentelle Beispiele bereitgestellt, etwa die Anbindung an Arduino, das Auslösen von Tönen per Gesichtsbewegung oder ein Game-Controller mit Papier und Webcam
  • Die Unterrichtsmaterialien umfassen AI + Ethics und Ready AI Lesson und sind so aufgebaut, dass sie sowohl das Klassifikationskonzept des Machine Learning als auch dessen gesellschaftliche Auswirkungen behandeln

Teachable-Machine-Modelle im Web erstellen

  • Teachable Machine ist ein webbasiertes Tool, das dafür entwickelt wurde, Machine-Learning-Modelle schnell und einfach zu erstellen
  • Die erste Version aus dem Jahr 2017 kann auf einer separaten Seite geöffnet werden
  • Trainingsbeispiele können auf zwei Arten hinzugefügt werden
    • Dateien verwenden
    • Live erfassen
  • Webcam- oder Mikrofondaten können auch ausschließlich on-device genutzt werden, sodass sie den Computer nicht verlassen
  • Es gibt drei Arten von Modellen, die erstellt werden können
    • Images: Training eines Bildklassifikationsmodells mit Dateien oder Webcam
    • Sounds: Training eines Audioklassifikationsmodells durch Aufnahme kurzer Klangbeispiele
    • Poses: Training eines Modells zur Klassifikation von Körperpositionen anhand von Dateien oder Haltungen vor der Webcam
  • Ein Modell zur Erkennung der Richtung einer Kopfneigung lässt sich im Tutorial Pose: Head Tilt nachbauen

Experimentbeispiele und Unterrichtsmaterialien

  • Die mit Teachable Machine erstellten Experimente reichen von Hardware über Accessibility bis hin zu Spiele-Eingabegeräten
    • Tiny Sorter: DIY-Experiment, das Arduino mit Teachable Machine verbindet
    • Video von Steve Saling: Einsatz von Teachable Machine für neue Kommunikationsformen, etwa zum Auslösen von Tönen per Gesichtsbewegung
    • Teachable Snake: Experiment von Vince MingPu Shao, das Webcam und Papier in einen Game-Controller verwandelt
  • Weitere Projekte finden sich auf der Experiments-Seite mit dem Tag Teachable Machine
  • Wenn du ein eigenes Projekt teilen möchtest, kannst du eine E-Mail an teachablemachine-support@google.com senden
  • Die Unterrichtsmaterialien behandeln auch Bias in algorithmischen Systemen und die gesellschaftlichen Auswirkungen von Machine Learning
    • AI + Ethics: Ein K-8-Common-Core-Technikkurs von Blakeley H. Payne aus der MIT Media Lab Personal Robots Group, der Schülern einen ersten Zugang zum Verständnis von Bias in algorithmischen Systemen vermittelt
    • Ready AI Lesson: K-12-Unterrichtseinheit zum Erkunden von Teachable Machine sowie zum Lernen über Machine Learning, Klassifikation und gesellschaftliche Auswirkungen
  • Weitere Fragen können in den FAQ nachgelesen werden

1 Kommentare

 
GN⁺ 2024-01-08
Hacker-News-Kommentare
  • Gutes Timing, weil es dafür einen perfekten Anwendungsfall für Hobbyprojekte gibt
    Ich hatte mir auch die frühere Version angesehen, aber sie war ziemlich eingeschränkt: „Die bisherige Teachable Machine konnte nur 3 Klassen trainieren, jetzt kann man so viele Klassen hinzufügen, wie man möchte“
    Ich frage mich, wie weit sich das skalieren lässt. Zum Beispiel, ob Hunderttausende von Klassen möglich sind und, falls ja, welche Auswirkungen das hätte
    • v1 war sehr eingeschränkt, aber extrem einfach und nutzte bereits eine ziemlich beeindruckende Form von Transfer Learning
      Man nahm zum Beispiel die 1000-dimensionale Vektorausgabe eines vortrainierten Netzwerks für Bilder aus drei Mengen, und weil das ursprüngliche Modell mit Imagenet trainiert worden war, sagte man danach mit K-Nearest Neighbors voraus, zu welcher Menge ein „neues“ Bild gehört
      v2 feinjustiert tatsächlich die Gewichte des vortrainierten Netzwerks. Damals war das ein gutes Beispiel dafür, wie schnell sich JavaScript-Machine-Learning-Bibliotheken entwickelten
  • Ich habe ein altes Video zu Teachable Machine von vor 6 Jahren gefunden
    https://www.youtube.com/watch?v=3BhkeY974Rg&ab_channel=Googl...
    Und 2019 hat Google v2 veröffentlicht: https://blog.google/technology/ai/teachable-machine/
    Die möglichen Aufgaben sind begrenzt, daher ist es gut als Einstiegspunkt für Anfänger, aber ich bin mir nicht sicher, ob die Plattform schnell weiterentwickelt wird
  • Cool. Genau die richtige Aktivität für einen Schneetag mit Kindern
  • Ich habe mir MediaPipe[1] ziemlich gründlich angesehen, aber von Teachable Machine hatte ich noch nie gehört
    Es wirkt so, als wären die beiden Produkte dafür gedacht, zusammen verwendet zu werden, deshalb frage ich mich, ob es da einen Zusammenhang gibt
    Es ist erfreulich, dass Google besonders im Browser in mehr Anwendungsfälle für Edge Machine Learning investiert. Wenn dir das hier aufgefallen ist, ohne dass du MediaPipe kennst, solltest du es dir unbedingt ansehen. In der VTubing-Community wird es besonders häufig genutzt, und die auf BlazePose basierende Umsetzung von Körper-, Gesichts- und Hand-Posen-Tracking ist leistungsstark
    1: https://developers.google.com/mediapipe
  • Zur Einordnung: Das ist kein neues Projekt. Es gibt dazu eine HN-Diskussion von vor 6 Jahren: https://news.ycombinator.com/item?id=15399132
    • Im neuen Link steht „erste Version 2017“, daher scheint Google diesen Release als Version 2 zu betrachten
  • Das wurde damals ebenfalls diskutiert
    Teachable Machine: einer Maschine im Browser mit einer Kamera in Echtzeit etwas beibringen - https://news.ycombinator.com/item?id=15399132 - Oktober 2017, 90 Kommentare
  • Das war vor ein paar Jahren ein interessanter Redesign-Versuch
    https://fairpixels.pro/work1/index.html
  • Ich habe den Eindruck, dass das im Grunde dem ähnelt, was ein multimodales LLM macht. Es kann ja spontan alles Mögliche mit dem machen, was es versteht
    Was ist hier der Unterschied?
    • Das ist ein kleineres Modell, das man exportieren und überall ausführen kann
      Selbst das kleinste multimodale LLM dürfte deutlich größer sein als ein hier exportiertes Modell
    • Der Kern ist der Teil mit dem „Beibringen“. Man verwendet nicht einfach ein bereits trainiertes Modell für Inferenz, sondern trainiert bzw. tunt das Modell hier
      Man liefert neue Daten, und diese Daten werden verwendet, um das Modell zu aktualisieren. Wenn man mit einem bestehenden multimodalen Modell nur Inferenz macht, ändert sich die Klassifizierungsweise überhaupt nicht
    • Das scheint eher darauf hinauszulaufen, ein bestehendes Modell feinzutunen, damit es die von mir beabsichtigten Merkmale erkennt, und es leicht genug zu machen, um lokal im Browser zu laufen
  • Gibt es dafür eine ähnliche Open-Source-Alternative zum Selbsthosten?
    • Das kann man selbst hosten
      Die Trainingsdaten werden lokal im Browser ausgeführt und nicht an irgendeinen Server gesendet
      Es sei denn, man entscheidet sich dafür, sie in Google Drive zu speichern, und wenn man Google zum Hosten des Modells nutzt, erhält Google eine Kopie der Gewichte, sieht aber trotzdem nicht die Trainingsdaten
      Alternativ kann man es auch direkt mit tensorflow.js selbst hosten
      Man kann alles einschließlich Trainingsdaten und Gewichten als ZIP-Datei herunterladen, dann bekommt Google überhaupt nichts zu sehen
      Falls du den Quellcode brauchst, hier ist er -> https://github.com/googlecreativelab/teachablemachine-commun...