Hund, Katze, Maus…, Muffin? – Eine Einführung in das Machine Learning

By appsoluts 2 Jahren agoNo Comments

Was ist ein neuronales Netzwerk?

Ganz abstrakt gesprochen, das hier: 👇

Die Abbildung zeigt eine verknüpfte Struktur aus verschiedenen Ebenen (schwarz, grün, grau, gelb), durch die gleich der bereits beschriebene Machine Learning Algorithmus laufen gelassen wird. Ganz links, auf Ebene 1 (schwarz), ist der Input abgebildet. Rechts (gelb) befindet sich der Output.

Das nächste Beispiel soll dann zeigen, welcher Output generiert wird und welches Tier erkannt wird.

Hund, Katze, Maus…, Muffin?

Zunächst gehen wir davon aus, dass unsere KI bereits mit Informationen gespeist wurde, sodass ihr sämtliche Informationen zu beispielsweisen Hunden vorliegen. Das heißt, unsere KI weiß bereits, was einen Hund in den meisten Fällen zum Hund macht: Dunkle, bis schwarze Augen, lange Schnauze, große Ohren, Tatzen, Fell, etc.

Süß, oder? Und wunderbar für unsere KI. Man kann direkt auf den ersten Blick anhand einiger Indikatoren fest machen, dass es sich offensichtlich um einen Hund handelt.

Geben wir also den Hund in die KI, so wird der Algorithmus zunächst mal jeden Pixel abgehen, und dann langsam verschiedene Teile zusammen setzen, die wiedererkannt werden.

Ok cool, die KI hat alle ihr vorliegenden Informationen zusammen gesetzt und ist zu einem Ergebnis gekommen! Die Spannung steigt… Hund🐾! Wer hätte es gedacht.

Wenn es da nicht Gegenstände gäbe, die sich nur ganz knapp unterscheiden. Was für uns klar erscheint, kann für die KI schon zur Herausforderung werden. Hier kommt auch direkt das Stichwort “Big Data” ins Spiel. KIs benötigen, eigentlich genau wie wir Menschen, riesige Datenmengen an Beispielen, die zur Identifizierung verschiedener Objekte verhelfen.

Neuronen

Zum Schluss wollen wir noch mal einen etwas genaueren Blick auf jedes einzelne Neuron (Kreise in der Darstellung (hier: grün)) werfen, und uns derer Funktionen bewusst werden.

Okay, wenn wir hier mal von links nach rechts durchgehen, kann man erkennen, dass wir aus der vorherigen Ebene genau drei Inputs bekommen (x1, x2, x3). Jedes dieser Neuronen bringt ein spezifisches “Gewicht” (w1, w2, w3) mit sich. Dieses wird, bevor es unser aktuelles Neuron erreicht, mit dem eigenen Wert multipliziert.

Das aktuelle Neuron summiert nun alle eintreffenden Werte und stellt somit den eigenen Wert fest. Ein sog. “Bias” (weiterer Wert (hier: 0,5)) kann unabhängig von vorherigen Neuronen initialisiert werden und beeinflusst somit natürlich das “Gewicht”, indem er addiert wird. Wenden wir das auf unser Beispiel an, so können wir feststellen, dass die Schnauze ein “Gewicht” von 1,63 und die Pfote dagegen nur 0,25 bekäme, weil anhand der Schnauze klarer festzustellen ist, dass es sich um einen Hund handelt.

Nach all den Additionen erreichen wir die “Activation Function”, welche den schlussendlich errechneten Wert nun auf eine Zahl zwischen 0 und 1 herunter skaliert, um mit möglichst einheitlichen Zahlenwerten auf die nächste Ebene zu springen. Und so geht es dann weiter, bis der Algorithmus die letzte Ebene erreicht und anhand der höchsten Wahrscheinlichkeit das Ergebnis verkündet → Hund!

Perfekt. Wir hoffen, dass dir dieser Artikel geholfen, und dich vielleicht sogar inspiriert hat, deinen ersten, eigenen Algorithmus zu schreiben!

Categories:
  Allgemein, Android, App, App Entwicklung, Digitalisierung, Entwicklung, ios
this post was shared 0 times
 600

Leave a Reply

Your email address will not be published.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.