0

Hallo zusammen!
Im Rahmen meiner Studienarbeit beschäftige ich mich Neuronalen Netzen. Das Grundprinzip ist mir bereits klar. Probleme hab ich aber mit dem mathematischen Verständnis der entstehenden Entscheidungsgrenze.

Hierfür würde ich gerne ein Beispiel nennen:
Mal angenommen ein sehr simples Neuronales Netz bestehend aus 2 Eingabe Neuronen, 1 Hidden Layer Neuron und 1 Ausgabe Neuron und soll anhand der Eingabe von Größe und Gewicht erkennen ob ein Tier ein Hund oder eine Katze ist.(Bild 1)

Durch die Eingabe entsteht ja eine Entscheidungsgrenze der Form y= ax+b, also eine lineare Entscheidungsgrenze. Für die Aufgabe umgewandelt ergibt sich: Tier = (a1 *Größe+ a2*Gewicht) + Bias.

Durch diese Entscheidungsgrenze werden aber auch kleine und leichte Hunde als Katzen erkannt. Man braucht also eine nicht-lineare Entscheidungsgrenzen.



Und genau hier versteh ich es dann nicht mehr wirklich. Würde man jetzt immer mehr Hidden Layer Neuronen dran packen würde das doch nur die Zahlen a, x und b verändern, die Funktion bleibt doch weiterhin linear, oder?

Laut meiner Recherche ist die Aktivierungsfunktion also z.B. die ReLu oder Sigmoidfunktion dafür verantwortlich, dass die Entscheidungsgrenze nicht-linear wird. Ich versteh aber nicht wie das funktionieren soll.

Wie wird aus einer linearen Entscheidungsgrenze eine nicht-lineare durch die Aktivierungsfunktion? Wird die lineare Funktion verändert oder was passiert da genau?

gefragt

 

1
crosspost mit mathelounge. Lies im dortigen FAQ, warum das nicht erwünscht ist.
  ─   mikn 16.02.2024 um 11:44

1
Mit neuronalen Netzen kenne ich mich nur marginal aus. Was ich aber sagen kann, ist: Wenn ich lineare Funktionen (also Funktionen der Form f(x)=ax+b) miteinander verkette, kommen immer nur lineare Funkionen heraus.

Wenn ich das aber richtig verstanden habe, hat der "Hidden Layer" ebenfalls Schwellwerte. Wenn ich aber Schwellwertfunktionen dazwischenschalte, erhalte ich natürlich nichtlineare Funktionen, denn die Schwellwertfunktion ist nicht linear.

Außerdem: Wenn das neuronale Netz als Input nur Gewicht und Größe hat, kann es so nichtlinear sein wie es will: Es wird nur unzuverlässig zwischen Hund und Katze unterscheiden können. Da muss einfach mehr Input her: Ein Bild, oder ein Laut, oder Teile des Genoms, oder Fußspuren etc.

  ─   m.simon.539 18.02.2024 um 22:08

@mikn vielen Dank für den Hinweis. Das war mir nicht bewusst. Kommt nicht wieder vor!

@m.simon.539 Vielen Dank für die Antwort!!! Ich glaub ich check's jetzt langsam. Ich hätte noch eine Rückfrage: Wenn ich da dann eine nicht-lineare Funktion dazwischen schalte addiere ich die oder multipliziere ich die dann dazu?
  ─   nichterfolgreich 19.02.2024 um 09:14

Hat sich erledigt, ich stand auf dem Schlauch und hab's jetzt verstanden. Vielen Dank für deine Hilfe!   ─   nichterfolgreich 19.02.2024 um 09:41
Kommentar schreiben
0 Antworten