Kontakt

    Diverse Lerntypen bei ML erforschen: Kein Skynet in absehbarer Zeit?

    30. Juni 2023 von Steffen Temme

    Einführung

    Es gibt diverse Lerntypen bei Machine Learning | Als Datenwissenschaftler, der seit fast sechs Jahren bei LINDERA arbeitet, stoße ich regelmäßig auf Fragen und Bedenken zum Thema „KI (Künstliche Intelligenz)“, sei es von Familie, Freunden oder manchmal auch Kunden.

    Dies ist mit dem Aufkommen von ChatGPT, Dall.E 2 und ähnlichen Programmen, die menschenähnliche Inhalte erzeugen können, explodiert. Sogar die Frage des Selbstbewusstseins wurde aufgeworfen, als ein Google-Forscher, der an einem Sprachmodell gearbeitet hatte, behauptete, dass dieses möglicherweise selbstbewusst geworden sei. 

    Um einige Missverständnisse darüber auszuräumen, was „KI“ kann und was nicht, habe ich einen kurzen Überblick über die verschiedenen Lernmethoden zusammengestellt, die heute verwendet werden, und zeige warum sie für diese Frage wichtig sind. Zunächst einmal sollte die Namensgebung geklärt werden, denn das, woran ein Datenwissenschaftler arbeitet, ist keine künstliche Intelligenz, sondern maschinelles Lernen.

    Der Unterschied besteht darin, dass es einerseits breiter angelegt und andererseits spezifischer ist. Das maschinelle Lernen beschränkt sich auf, nun ja, Maschinen, künstliche biologische Gehirne sind also ausgeschlossen, dafür muss das maschinelle Lernen nicht etwas schaffen, das tatsächlich als intelligent eingestuft werden könnte. Welche Lerntypen bei Machine Learning gibt?; Welche Unterschiede es bereits gibt? oder wie sich all die verschiedenen Lerntypen voneinander unterscheiden?, wird in diesem Artikel erklärt.

    Was ist maschinelles Lernen? – Machine learning Definition

    Beim maschinellen Lernen werden im Allgemeinen Probleme gelöst, bei denen eine Funktion gesucht wird, die eine komplexe Eingabe annimmt und eine gewünschte Ausgabe erzeugt. Sobald diese Funktionen gefunden sind, können sie immer wieder verwendet werden, wobei nur ein Bruchteil der Berechnungen erforderlich ist, der aufgewandt werden musste um sie ursprünglich zu finden. ChatGPT und die meisten anderen Systeme, die derzeit verwendet werden, sind im Kern genau solche Funktionen. Sie sind zwar komplex, aber sie ändern sich nicht und lernen nicht, während sie benutzt werden.

    Um solche Funktionen zu finden, beginnt man immer mit der Definition des Eingabe- und des Ausgabeformats. Zum Beispiel im Falle des in LINDERA verwendeten Systems nehmen wir als Eingabe ein Video und wollen als Ausgabe die 3D-Positionen der Gelenke der Zielperson. Dann folgt eine Definition der Struktur der zu verwendenden Funktion. Mit den aktuellen Werkzeugen wird dies meist in Form von neuronalen Netzen gemacht, aber es gibt auch andere Formen. Und schließlich braucht man Daten, viele, viele Daten. Genauer gesagt, man braucht Paare von Eingaben und Zielwerten.

    Überwachtes Lernen (Supervised learning)

    Anhand dieser Entscheidungen über Eingabe, Ausgabe und auch darüber, woher die Daten stammen, kann man verschiedene Arten des Lernens klassifizieren. Die gebräuchlichste ist das überwachte Lernen, bei dem die Daten von einem anderen System aufbereitet werden müssen, entweder von Menschen, die die Ausgabe erzeugen, zum Beispiel durch Captchas, oder von einem anderen Messsystem.

    In unserem Fall, um das Beispiel fortzusetzen, stammen die Daten für die 3D-Gelenke von einem 3D-Bewegungserfassungssystem, das eine wesentlich aufwändigere und teurere Methode verwendet als eine einfache Smartphone-Kamera. Diese Lernmethode wird als überwacht bezeichnet, weil sie im Grunde genommen von dem System „überwacht“ wird, das die Daten erzeugt hat, denn dieses System hat anhand der Daten definiert, was richtig und was falsch ist.

    Eigenständiges Lernen (Unsupervised learning)

    Auf der anderen Seite steht das eigenständiges Lernen, bei dem entweder die gewünschte Ausgabe direkt aus der Eingabe abgeleitet werden kann, oder es ein dynamisches System gibt, das sofort eine Rückmeldung für die Ausgabe geben kann, die das Netz beim Training erzeugt hat.

    Man könnte sich fragen, welchen Nutzen die erste dieser Optionen hat, wenn wir doch die gewünschte Ausgabe schon mit anderen Mitteln ableiten können, aber diese neuronalen Netze werden in der Regel nicht für ihre Ausgabe trainiert, sondern dafür, was mit der Eingabe geschieht, um die Ausgabe zu erreichen. Autoencoder haben beispielsweise die Aufgabe, ihre Eingabe als Ausgabe zu reproduzieren, wobei die Datenmenge, die sie durchlassen können, begrenzt ist und sie dadurch irgendwo in ihrem Inneren eine Kompressionsfunktion lernen müssen.

    Diese Komprimierung wird dann in der Regel als Ausgangspunkt für andere Aufgaben verwendet, die denselben Input verwenden.

    Verstärktes Lernen (Reinforcement learning)

    Der zweite dieser eigenständigen Lernansätze kann wiederum in Verstärkungslernen und generative Netze unterteilt werden. Beim Verstärkungslernen wird der Ziel-Output durch eine interaktive Umgebung vorgegeben, die in den meisten Fällen simuliert wird, aber auch in der realen Welt möglich wäre. Grundsätzlich erhält das Netz Informationen über den aktuellen Zustand der Umgebung und muss dann innerhalb dieser Umgebung eine Aktion ausführen.

    Sobald es dies tut, verändert sich die Umgebung und gibt dem Netz eine Rückmeldung, die dann dazu verwendet werden kann, das Netz so zu verbessern, dass es beim nächsten Mal eine bessere Aktion ausführt. Obwohl in den meisten Anwendungsfällen die Funktion oder das Netzwerk einmal trainiert und dann unverändert verwendet wird, könnte diese Methode das Potenzial haben, kontinuierlich zu lernen.

    Jüngste Versuche zeigen jedoch, dass unsere reale Umgebung immer noch zu komplex ist, wie der von Microsoft im Jahr 2016 eingesetzte Twitter-Bot Tay zeigt, der bösartig rassistisch wurde, nachdem sie ruchlosen Nutzern ausgesetzt war.

    Generative Netzwerke (Generative networks)

    Schließlich gibt es noch die generativen Netze, die eine Mischung aus überwachtem und selbstständigem Lernen darstellen, wobei der Großteil der Aufgabe im selstständigem Teil bewältigt wird. Beim generativen Lernen wird ein Netz unter Aufsicht trainiert (die sogenannte Generator & Discriminator), um die Zielausgaben zu klassifizieren. Es soll zum Beispiel die Wahrscheinlichkeit angeben, dass ein gegebenes Bild von Van Gogh stammt.

    Dann wird ein zweites neuronales Netz trainiert, indem man Zufallszahlen als Eingabe gibt und Ausgabe weiterreicht an das erste Netzwerk zu bewertung. In unserem Beispiel würde das zweite Netz also Bilder produzieren und als Rückmeldung erhalten, wie sehr diese aussehen als seien sie von Van Gogh gemacht worden. Im Laufe der Zeit wird das zweite Netz also Bilder produzieren, die mehr und mehr wie von Van Gogh gemacht aussehen, bis wir mit dem Ergebnis zufrieden sind und das trainieren des Netzes abschalten.

    Lerntypen bei Machine Learning
    Generative Bilderstellung mit Midjourney

    Fazit zu den Lerntypen bei Machine learning

    ChatGPT und Dall.E 2 gehören zu dieser letzten Kategorie von Lernern und werden sich daher nicht mehr verbessern, bis sie mit mehr Daten neu trainiert werden. Es findet also kein unmittelbarer permanenter Lernprozess statt.

    Nun könnten eifrige Benutzer sagen: „Moment mal, aber ChatGPT hat doch auf etwas verwiesen, was es selbst in dieser Konversation geschrieben hat, wie kann das funktionieren, wenn es nicht lernt?“, und die Antwort darauf ist, dass ChatGPT den Verlauf der aktuellen Konversation als Teil der Eingabe verwendet und daher weiß, wie die Konversation fortgesetzt werden soll.

    Aber bis jetzt lernt es noch nicht daraus. Es ändert nicht seine Funktion, nur die Eingaben und wird daher nur das tun, wofür es trainiert wurde und keine Terminatoren in die Vergangenheit schicken.

    Für uns bei LINDERA bedeutet das, dass wir die Qualität der Ergebnisse unserer neuronalen Netze sicherstellen können, indem wir ihre Ergebnisse während unseres Qualitätsicherungs-Prozesses testen, da sich die Funktion unserer Netze nicht ändert, nur weil wir sie benutzen. Und da nur die Eingaben von Bedeutung sind, müssen diese Tests auch Videos umfassen, die „in freier Wildbahn“ aufgenommen wurden, d. h. in der vorgesehenen Benutzerumgebung. Das ist ein zusätzlicher Schritt, den wir gerne machen, da er die Sicherheit unserer Nutzer gewährleistet und ihnen hilft, mobil zu bleiben.

    Vielen Dank fürs Lesen!

    Und da dies mein erster Blogbeitrag dieser Art ist, bin ich natürlich offen für Fragen und konstruktive Kritik.