Neuronale Netze: Wie lernt ein neuronales Netz? Daniel Janssen https://www.youtube.com/watch?v=fNa2wjVUHq4 Transkript (automatisch erstellt) 0:00 bisher haben wir unsere künstlichen neuronen immer so zusammen gebaut dass die funktion abgebildet worden sind die wir abbilden wollten und zwar indem wir 0:09 unsere schwellwerte und gewichte einfach so gewählt haben dass das ganze schon irgendwie gepasst hat aber im normalfall ist das nicht so im normalfall lernen 0:19 auch größere künstliche neuronale netze von alleine die frage ist aber wie passiert das wie lernt ein neuronales netz eigentlich und 0:26 da steckt keine magie dahinter da steckt ein simpler algorithmus dahinter so neuronale netze werden immer mit zufälligen werten initialisiert mit 0:35 zufälligen schwellwerten oder mit zufälligen gewichten und jetzt gibt es einen ganz stumpfen algorithmus der dafür sorgt dass die tabelle am ende 0:42 auch vernünftig abgebildet wird dass also die wahrheit' tafel hier zeile für zeile passt bei größeren neuronalen netzen funktioniert das ähnlich der 0:52 grundgedanke ist immer noch der gleiche natürlich sind die formen der komplizierter die werte bereiche sind anders es hängt viel mehr neuronen 0:59 zusammen es können auch nicht alle daten setzt zu 100 prozent richtig gelernt werden aber der kerngedanke ist immer noch der gleiche 1:07 der kerngedanke ist nämlich wenn zwei neuronen in verbindung stehen dann wird der weg dazwischen ausgebaut von daten fällt sich zur datenautobahn 1:15 könnte man sagen und wenn zwei verbindung wenig genutzt werden dann sorgt das vielleicht dafür dass diese verbindung eher hemmen wird 1:25 ok also ich habe jetzt ein beispiel gewählt wo die gerichte zufällig und der schwellwert gewählt worden sind ja es soll die funktion für x16 200 für y 1:40 06.11.2010 on 14 x1 x2 10 mit y 0 und für x1 und x3 11 für y eins gelernt werden unser künstliches neuronales netz hat 1:55 die werte 0,6 für das gewicht 1 und minus 0,4 für das gewicht 2 und 0,15 für den schwellwert was unser künstliches netz am ende 2:06 können soll ist die roten bullen von den blauen ein hin zu trennen also quasi 00 und 10 als ein muster zu kategorisieren und 0 1 und 1 1 als das andere muster zu 2:22 kategorisieren und dafür gibt es eine lern regel die natürlich jetzt für diesen einfachen fall sehr einfach ist komplizierter netzen sie die durchaus 2:32 komplizierte aus aber von kerngedanken das gleiche und zwar geht jetzt in jedem schritt jedes gewicht nach dieser formel geändert und zwar basierend darauf 2:42 welche tatsächlich ausgabe es gab und welche gewünschte ausgabe es eigentlich hätte sein sollen und zwar sieht die formel kompliziert aus ist aber ganz 2:51 einfach das gewicht kriegt einen neuen wert das steht links von gleichheitszeichen in dem schwarzen und zwar ist es der alte wert also dass 3:00 blaues plus irgend etwas rotes ja also das neue gewicht ist das alte gewicht plus irgend etwas rotes dort in der formel und das rote ist nichts anderes 3:10 als eine feste lern rate hier der einfachheit halber normalerweise änderte sich im laufe des trainings prozesses aber hier lassen wir sie mal bei 0,5 mal 3:20 und jetzt die gewünschte ausgabe - die tatsächliche ausgabe in klammern und jetzt mal der eingabe an den dendriten ja also wenn das gewicht 1 geändert wird 3:32 wird hier die eingabe x1 betrachtet wenn das gewicht 2 geändert wird dann wird die eingabe x2 betrachtet ja also das gewicht bekommt einfach einen neuen wert 3:42 den alten plus 0,5 x y - zumal die machen das nah an einem beispiel denken wir dass auch deutlicher also für die erste zeile und das ist jetzt 3:58 der trick tabelle so lange immer von oben durchgehend bis die ganzen werte passen für die erste zeile ergibt sich also null 0,69 bei minus 0,4 macht 0 ist 4:10 kleiner als der schwellwert die tatsächliche ausgabe ist null die gewünschte ausgabe ist null wenn man das jetzt in die formel 1 setzt erstellt man 4:17 relativ schnell fest durch dieses mal xn da hinten ja wird also der ganze term was dazukommt dieser teilte jedenfalls der wirt 010 dazu zur w2 kommt null dazu 4:32 okay gut passt also lassen wir so bei der zweiten zeile haben wir jetzt folgendes 0 0,6 plus einmal minus 0,4 ist minus 0,4 die tatsächliche ausgabe 4:48 ist dementsprechend 0 minus 0,4 kleiner ist als der schwer wird die gewünschte ausgabe ist aber ein okay was bedeutet das das bedeutet jetzt greift die formel 4:59 für das erste gewicht kann man das eigentlich auch schon wieder sein lassen denn da steht ja mal tick cent berechnen es trotzdem mal also gewünschte ausgabe 5:07 science tatsächlich ist 0 1 - 0 das ist dass in den klammern macht 1 x die lern ratte 0,580 fünf mal die eingabe die war 0 also das obere gewicht ändert sich 5:20 nicht aber das untere gewicht das ändert sich zu 0,1 die man in der gelten teile der tabelle sieht denn einmal oder 35 mal 5:31 und jetzt haben wir 1 - 0 also 10 5 x 1 x 1 das ist die eingabe also einmal oder 0 5 x 10.1 macht 0,5 und das ist der rote teil der zu dem alten gewicht hinzu 5:49 kommt deswegen wird aus minus 0,4 0,105 hinzugekommen sind okay es geht aber auch anders rum das sehen wir in der nächsten zeile und zwar kann es auch 6:01 sein dass ein gewicht wieder etwas verliert es geht immer 05 hoch oder 0 fünf runter das liegt daran ja wie die tatsächliche und die gewünschte ausgabe 6:10 sind schauen wir jetzt mal in ruhe also einmal 0,6 bis 0,8 0,6 das ist größer als der schwellwert die tatsächliche ausgabe ist null die gewünschte ist aber 6:19 eher die tatsächliche ausgaben science die gewünschte ausgabe ist aber 0 dementsprechend rechnen wir 0 5 x 0 - 1 also -0 5 mal 1 für das obergericht und 6:37 -0 5 x 0 für das untere gewicht damit ist klar nur das obere gewicht die 0,6 daher rechnen wir jetzt minus 0,5 drauf also 0,6 minus 0,5 macht 0,1 man er kann 6:54 schon erkennen eigentlich ändert ein gewicht sein wird immer nur wenn die eingabe auch eins ist nicht wenn sie nur lässt 7:01 dementsprechend kommt jetzt hier minus 0,5 herunter oder werden abgezogen von den 0,6 die das gewicht vorher hatte und das gewicht ändert sich zu 0,1 gut 7:15 einmal 0,1 plus einmal 0,1 ist in der vierten zeile 0,2 das ist größer als der schwellwert die tatsächlich ungewünschte ausgabe stimmen überein es muss nichts 7:25 getan werden genau so ist das wenn beide eingaben wieder 0 sind stimmen auch gewünschte und tatsächliche ausgabe über ein 7:33 nichts muss getan werden und im nächsten schritt schauen wir mal was da passiert 0 und 1 führt dazu dass die tatsächliche ausgabe 0 ist die gewünschte ausgabe 7:48 aber eins ist okay jetzt passiert folgendes in der regel 1 - 0 0 5 mal 1 ist 0,5 und diese 0,5 kommen auch das gericht b2 zusätzlich drauf deswegen ist 8:07 dann den wert 0,6 bekommt also haben wir jetzt die gewichte wie 1 0,1 und b2 0,6 und weiter geht's 0,1 ist kleiner als der schweiz 8:19 er hat tatsächlich und gewünschte ausgabe stimmen überein und so ist es auch wenn beide eingaben 1 sind der 0,7 ist größer und die tatsächliche und die 8:30 gewünschte ausgabe sind jeweils 1 jetzt kann man noch weitermachen so lange bis das ganze passt aber an der stelle passt es bereits denn für 00 wird die richtige 8:42 ausgabe geliefert für 01 wird die richtige ausgabe geliefert für 10 wird die richtige ausgabe beliefert und für 11 wird auch die richtige ausgabe 8:56 geliefert also der trick ist immer die wahrheit' tafel von oben nach unten so oft zu wiederholen dass es passt und wenn man einen durchgang hat so wie 9:07 jetzt unten in der tabelle der grüne durchgang wo es für jede zeile passt dann ist man fertig und dann hat man die endgültigen gewichte gefunden 9:15 so wird also aus 0,6 und minus 0,4 für den schwellwert 0,15 ganz am ende 0,1 und 0,6 für den stellwert 0,15 für einen anderen stellt wird es wieder 9:30 anders aussehen aber so haben wir jetzt die richtigen werte automatisch mit der lern regel gefunden diese lern regelt ist im kern immer noch aktuell auch für 9:41 ganz moderne künstliche neuronale netze nur in etwas komplizierter reform aber mit demselben gedanken präsentiere dem netz so lange die eingabe muster bis die 9:53 ausgabe stimmt jetzt muss man bei komplizierteren neuronalen netzen sehen das kann nicht so sein dass jede zeile und bestimmt sonst würde das training 10:02 ewig lange dauern dann bricht dann halt irgendwann ab wenn es einigermaßen okay ist manchmal reichen 90 prozent erkennung 10:10 vielleicht gerade manchmal auch 80 prozent manchmal möchte man aber auch 99 haben das liegt dann sozusagen im auge des betrachters irgendwann passend 10:18 abzubrechen bevor man sozusagen das netz zu lange trainieren dass das bringt dann eventuell noch andere probleme mit sich 10:26 die wir aber irgendwann noch im folgenden gesprächen werden das soll es an der stelle so weit gewesen lang zu der frage wie lernt ein 10:34 neuronales netz eigentlich