Guten Morgen zusammen. Ich würde gerne anfangen mit einer kurzen Wiederholung von dem Stoff von
gestern, also dem reinen mathematischen Teil. Und die Idee hier dabei ist zu sagen, was ist das
Kernkonzept hierbei. Ich will nicht auf die einzelnen Indizes in den Formeln eingehen.
Legen wir mal los. Also ich hatte angefangen, die Mathematik genauer Netze zu erklären über
zwei Gesichtspunkte. Das eine ist eine Designfrage. Was ist der Reiz dabei, Funktionen dieses Typs zu
betrachten? Das zweite ist die operationale Frage, wie kann man Algorithmen hier einbetten? Und das
hängt natürlich zusammen. Ich spreche hier über Funktionen, die die Eigenschaft haben, dass sie als
hintereinander Schaltung von einfachen Funktionen gebaut sind, nämlich immer einen Schritt linearer
Algebra, um die Multidimensionalität zu beschreiben und dann eine dimensionale nicht-linäre Funktion.
Diese Geschichte zieht natürlich nach sich, wenn ich Differentialrechner mache, dass dann die
hintereinander Schaltung von Funktionen in Produktdarstellung führt, zu einer Produktdarstellung
führt, die man eben schön objektorientiert abarbeiten kann. Also so gesehen hängen diese
beiden Seiten hier zusammen, aber wir werden sehen in diesem Semester und im nächsten Semester, dass
die grafische Darstellung über Architekturen eigentlich viel einsichtiger ist wie Formeln.
Also was ist die Übersetzung in die Transformation von Formeln in Grafik? Naja, immer wenn ein Vektor
vorkommt, male ich den als Ellipsoid und also wie zum Beispiel der Input Vektor, der Hidden Vektor
und der Output Vektor. Und immer wenn ich einen Pfeil male, heißt das für mich, hier wird eine
Matrix-Multiplikation ausgeführt. Also x wird multipliziert mit w1 und in den Vektor, der dabei
rauskommt, werde ich dann die Nicht-Linerität-Komponentenweise anwenden, multipliziere
wieder und kriege einen Output Vektor. Soweit so gut. Das ist die Berechnung von der Funktion und
dann ärgere ich mich eben, dass meine Output-Werte hier nicht gleich den gewünschten Targetwerten
sind und dieser außerhalb gemessene Fehler wird dann zurückgerechnet Schritt für Schritt. Und
dann kann man eben aus den beiden Informationsflüssen, die hochgehen und die runtergehen,
ein Produkt ableiten, was einem erlaubt, genau die ersten Ableitungen der Error-Funktion hier
nach allen Parameter in dieser Lokalität in der Architektur auszurechnen. Und wenn das Ding 3000
mal größer ist, wie dieses Bild hier, dann ist es immer noch genauso. Das heißt, alle Berechnungen
laufen lokal und das hat die Konsequenz, dass ich diese Betrachtungsweise sehr gut hochskalieren kann.
Ja, und dann haben wir eben gesagt, haben wir eben gesagt, ich den Beweis, dass das eben wirklich
geht mit nur drei Layern, also einmal Linear Algebra, dann eine Schicht Tangentz-H Funktion
und dann wieder Linear Algebra. Der Beweis funktioniert halt, wie er hier aufgeschrieben ist.
Kann man in einer Folie zusammenfassen. Der ist im Original viel länger. Und dann haben wir gesagt,
na ja, aber wenn ich verstehen will, wie Neuronen wirklich funktionieren, muss ich mir die lieber
geometrisch anschauen. Und der Reiz dabei ist eben, dass die Lineare Algebra innerhalb von einem
Tangentz-H eigentlich eine Hyper-Ebene beschreibt im Inputraum. Und diese Hyper-Ebene im Inputraum
schneidet den Inputraum in zwei Teile, nämlich den Teil, der weiter weg vom Ursprung ist und
der näher dran ist. Und die Hyper-Ebene selber ist so eine Art neutrales Element für den Tangentz-H,
weil auf der Hyper-Ebene ist der interne Teil hier ja von der Gleichungsbeschreibung gleich null.
Und da Tangentz-H von null wieder null ist, habe ich hier sozusagen ein neutrales Element. Wenn ich
weiter weg jenseits von der Hyper-Ebene bin, dann ist die Innerei hier eine positive Zahl.
Das kann man über die hessische Normalform zeigen. Und diese positive Zahl wird dann wieder in eine
positive Zahl umgewandelt. Während, wenn ich also näher dran am Ursprung bin, ist die Zahl,
die hier innen drin steht, negativ. Und Tangentz-H von negativ ist wieder negativ. Also das ist so eine
Art Entscheidungsebene, um den Inputraum aufzuteilen. Ja, und dann haben wir uns diesen
Error-Beg-Propagation-Kalkül angeguckt. Das ist eine vielfache Anwendung der Kettenregel,
wenn man so will. Und einmal im Leben muss man die halt auch mit Indizes hinschreiben, damit man dann
eben wirklich die Ableitungen im Detail sieht. Aber für das drüber Nachdenken ist es viel schöner,
das in Form von Vektoren und Matrizen hinzuschreiben. Also ich habe hier unten einen Input-Vektor.
Das, was in ein solches Cluster von Neuronen reingeht, nenne ich immer Netto-Input-Null. Das ist
hier unten dasselbe wie der Input-Vektor selber. Was da rauskommt aus solch einem Cluster, nenne
ich Output auf Level Null. Na gut, und dann wird das halt mit der nächsten Matrix multipliziert.
Presenters
Zugänglich über
Offener Zugang
Dauer
00:59:04 Min
Aufnahmedatum
2020-10-28
Hochgeladen am
2020-10-28 13:16:58
Sprache
de-DE