Matroids Matheplanet Forum Index
Moderiert von matroid
Mathematik » Numerik & Optimierung » Bachelorarbeit - CNN und das Einlesen handgeschriebener Ziffern aus einer MNIST Datenbank
Autor
Universität/Hochschule Bachelorarbeit - CNN und das Einlesen handgeschriebener Ziffern aus einer MNIST Datenbank
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Themenstart: 2021-06-09

Hallo zusammen, ich schreibe gerade meine Bachelorarbeit und hoffe dass einige mir dabei helfen können einige Beweise besser zu verstehen, weil ich sitze an manchen Beweisen zu lang, ohne wirklich zu verstehen, was damit gemeint ist. Mein Thema ist: CNN (Convolutional Neural Network) und das Lesen von Handgeschriebenen Ziffern aus der MNIST Datenbank mit Hilfe von Backpropagation in Python. Bei der Minimumsuche soll ich (Vorschlag des Dozenten) BFGS Verfahren anwenden und das gehört zu Quasi Newton Verfahren. Um BFGS Verfahren zu verstehen habe ich verschiedene Quellen im Netz durchsucht und bin auf ein Skript gestoßen (optimierung_hamburg_WS0607.pdf), der die Thematik "Unrestringierte Optimierung" so auch das BFGS Verfahren gut beschreibt. Quelle: https://www.eike-klima-energie.eu/2020/11/17/gibt-es-einen-treibhauseffekt/ Jetzt habe ich erstmal zwei wichtige Fragen zum Formalen: 1) Darf ich so einen öffentlichen Skript als Zitierquelle nehmen? 2) Wenn ich Beweise, Sätze zitiere, da kann ich diese nicht in eigenen Worten wiedergeben, weil sonst wären wir im Deutschunterricht, wo wir ein Satz auf mehrere Weisen formulieren können. Beweise und Sätze sind doch rein formal und da kann ich nicht diese umschreiben, also übernehme ich diese 1 zu 1 mit Beleg oder was meint ihr? Wichtig ist doch, dass ich diese Verstehe und im Zusammenhang erwähne. Um BFGS Verfahren besser zu verstehen, habe ich auf Seite 25 im Skript angefangen. Da werden unrestringierte Optimierungsprobleme behandelt, also die Grundlagen und erst später kommt BFGS Verfahren (erst auf Seite 103. Zwischendurch werden aber auch andere Verfahren erwähnt, die man überspringen kann). Also habe ich vor in meiner Bachelorarbeit die Notwendigen Bedingungen erster Ordnung und zweiter Ordnung zu erwähnen inklusive Beweis, weil darauf Baut mein BFGS Verfahren ja auf! Das Problem hier ist, dass ich mir Sorgen mache mich zu sehr im Detail zu verlieren, sodass später rauskommt, dass ich mich nicht um wichtige Dine gekümmert habe. Das also vorweg aber nun konkret zu meiner eigentlichen Frage zum Beweis: Hier ist erstmal der Beweis: https://www.matheplanet.com/matheplanet/nuke/html/uploads/b/49722_Screenshot_243_.png 1) Woher kommt die Idee mit dem d und warum ungleich 0? Die Definitheit wird doch über Hauptminorkriterium bestimmt oder durch Eigenwerte. Was hat d ungleich 0 damit zu tun und warum ist die Gleichung < 0? Ich denke, dass man hier für ein Minimum prüfen will, ob zweite Ableitung < 0 oder > 0. 2) Woher kommt dieses t beim Taylor? Ich weiß zum Beispiel, dass wegen Gradient f(x) = 0 bei der Taylorentwicklung im Beweis dieser Part wegfällt und da wir zwei mal stetig differenzierbare Funktion haben entwickeln wir bis p = 2, so zumindest kommt die Formel zustande mit der Hessematrix. Ich wäre euch sehr dankbar, wenn ihr mir bisschen Licht ins dunkle bringen könntet, weil ich investiere zu viel Zeit in das Verstehen der Beweise und komme kein Stück voran irgendwie und das ist sehr frustrierend, denn neben den Beweisen muss ich auch mit Programmieren so langsam anfangen. Auf Seite 93 im Skript geht es eigentlich los mit Quasi Newton Verfahren. Vielleicht wäre es besser, wenn ich direkt da einsteigen würde. Deswegen will ich die Ruhe bewahren und erstmal Schritt für Schritt alles abhacken. Wenn ihr anders an die Sache rangehen würdet, dann wäre ich über jeden Tipp dankbar. Übrigens, ich werde alle weitere Fragen an euch in diesem von mir eröffneten Tile posten und keine neuen Tiles erstellen, damit das Ganze schön übersichtlich bleibt, daher es werden alles Fragen sein, die sich auf das Thema meiner Bachelorarbeit beziehen. Falls jemand in Zukunft ähnliche Fragen haben sollte, dann kann man diesen Tile verlinken. Noch etwas: die Bachelorarbeit ist noch nicht angemeldet, denn wenn ich sie anmelde habe ich 12 Wochen Zeit und da will ich schon ein sicheres Gefühl bei der ganzen Sache haben und zur Zeit habe ich so ein Gefühl, dass ich noch weit entfernt davon bin. Grüße


   Profil
sonnenschein96
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 26.04.2020
Mitteilungen: 555
  Beitrag No.1, eingetragen 2021-06-09

Hallo Wunderkind89, \quoteon(2021-06-09 15:42 - Wunderkind89 im Themenstart) 1) Darf ich so einen öffentlichen Skript als Zitierquelle nehmen? \quoteoff Frag am Besten Deinen Prof, meiner wollte das damals nicht. \quoteon(2021-06-09 15:42 - Wunderkind89 im Themenstart) 2) Wenn ich Beweise, Sätze zitiere, da kann ich diese nicht in eigenen Worten wiedergeben, weil sonst wären wir im Deutschunterricht, wo wir ein Satz auf mehrere Weisen formulieren können. Beweise und Sätze sind doch rein formal und da kann ich nicht diese umschreiben, also übernehme ich diese 1 zu 1 mit Beleg oder was meint ihr? Wichtig ist doch, dass ich diese Verstehe und im Zusammenhang erwähne. \quoteoff Es wäre denke ich gut, wenn Du die Sachen nicht Wort für Wort abschreibst. Zumindest die Formulierungen kann man ändern (die Formeln natürlich eher nicht). Außerdem sind meiner Erfahrung nach Beweise oft nur sehr grob aufgeschrieben, da besteht dann die Möglichkeit, die fehlenden Schritte zu ergänzen. Das zeigt dann auch, dass Du die Beweise wirklich verstanden und nicht nur blind abgeschrieben hast. Die Beweise in meinen Abschlussarbeiten waren oft doppelt oder dreimal so lang wie in der Quelle, welche ich verwendet habe. \quoteon(2021-06-09 15:42 - Wunderkind89 im Themenstart) 1) Woher kommt die Idee mit dem d und warum ungleich 0? Die Definitheit wird doch über Hauptminorkriterium bestimmt oder durch Eigenwerte. Was hat d ungleich 0 damit zu tun und warum ist die Gleichung < 0? \quoteoff Eine symmetrische Matrix \(A\in\mathbb{R}^{n\times n}\) heißt positiv semidefinit, falls \(x^TAx\geq0\) für alle \(x\in\mathbb{R}^n\). Es gibt auch andere äquivalent Charakterisierungen, etwa über Eigenwerte oder Hauptminoren, siehe hier. Wenn \(A\) also nicht positiv semidefinit ist, gibt es ein \(x\in\mathbb{R}^n\) mit \(x^TAx<0\). Es gilt \(x\neq0\), da \(0^TA0=0\) ist. \quoteon(2021-06-09 15:42 - Wunderkind89 im Themenstart) 2) Woher kommt dieses t beim Taylor? Ich weiß zum Beispiel, dass wegen Gradient f(x) = 0 bei der Taylorentwicklung im Beweis dieser Part wegfällt und da wir zwei mal stetig differenzierbare Funktion haben entwickeln wir bis p = 2, so zumindest kommt die Formel zustande mit der Hessematrix. \quoteoff Das \(t\) "kommt nirgendwo her", Du betrachtest Vektoren mit der selben Richtung wie \(d\), die unterschiedliche Längen besitzen. Schau Dir am Besten nochmal Restglieddarstellungen an. Sei \(\varepsilon>0\) so gewählt, dass \(B_\varepsilon(\hat{x})\subseteq D\). Zu \(y\in B_\varepsilon(0)\) gibt es nach Taylor ein \(\theta\in(0,1)\) mit \[f(\hat{x}+y)=f(\hat{x})+\nabla f(\hat{x})y+\frac{1}{2}y^T\nabla^2 f(\hat{x}+\theta y)y.\] Dort setzt Du \(y=td\) mit \(t>0\) ein (es sollte \(t<\frac{\varepsilon}{\|d\|}\) sein) und definierst \(\xi_t:=\theta t\in(0,t)\). Die Aussage, dass die Hessematrix in lokalen Minima positiv semidefinit ist, solltet Ihr aber eigentlich auch schon in einer Vorlesung wie Analysis 2 oder so bewiesen haben. Ist dies der Fall, dann gehört dieser Beweis meiner Meinung nach nicht in Deine Arbeit (es sei denn, Du musst Dich später explizit auf diesen Beweis beziehen und nicht nur auf das Resultat).


   Profil
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Beitrag No.2, vom Themenstarter, eingetragen 2021-06-12

Vielen Dank für deine ausführliche Antwort :) Ja, ich werde mich lieber als Literatur an den Büchern orientieren und habe jetzt schon drei Quellen zu BFGS gefunden. Mit einem Buch hab ich schon angefangen Quasi Newton Verfahren zu beschreiben und einzuleiten und bin über diesen Beweis hier gestolpert: https://matheplanet.de/matheplanet/nuke/html/uploads/b/49722_Screenshot_250_.png Das ist ein Beweis zu: die Funktion ist genau dann streng konvex, wenn (∇f(y)−∇f(x))^T *(y − x) > 0 1) Warum steht am Ende 1/t bzw. woher kommt es? 2) Zweite Zeile im Beweis: Warum wird ein Gradient f(x) eingeführt? Ich weiß dass es sich hier um folgenden Zusammenhang aus dem Mittelwert Satz handelt: f ' (Xo) = f(b) - f(a) / b - a <=> f'(Xo)* (b-a) = f(b) - f(a), wobei Xo ein Element aus (a,b). In dem Beweis so wie ich das verstehe wird f'(Xo) umgeschrieben nur ich kann es nicht nachvollziehen wieso man es auf diese Art schreibt. Das, was da steht ist: Gradient f(x + t(y-x)) was nichts anderes heißt, dass ich mich ein stückchen weiter nach rechts von x bewege und mir da die Ableitung anschaue. Grüße


   Profil
sonnenschein96
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 26.04.2020
Mitteilungen: 555
  Beitrag No.3, eingetragen 2021-06-12

\quoteon(2021-06-12 01:58 - Wunderkind89 in Beitrag No. 2) 1) Warum steht am Ende 1/t bzw. woher kommt es? \quoteoff Man verwendet einfach, dass \(y-x=\frac{1}{t}(x+t(y-x)-x)\) ist. Man möchte irgendwo den Term \(x+t(y-x)\) stehen haben, da man \(\nabla f(x+t(y-x))\) aus dem Mittelwertsatz bekommen hat. \quoteon(2021-06-12 01:58 - Wunderkind89 in Beitrag No. 2) Ich weiß dass es sich hier um folgenden Zusammenhang aus dem Mittelwert Satz handelt: f ' (Xo) = f(b) - f(a) / b - a <=> f'(Xo)* (b-a) = f(b) - f(a), wobei Xo ein Element aus (a,b). \quoteoff Dies ist nicht richtig. Beachte, dass wir hier im \(\mathbb{R}^n\) unterwegs sind und man gar nicht durch \(b-a\) teilen kann. Siehe hier.


   Profil
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Beitrag No.4, vom Themenstarter, eingetragen 2021-06-12

1) Wenn y - x = 1/t (x+ t(y-x) - x) sein soll, dann ist y = 1/t (x+ t(y-x)) Nur, laut dem Mittelwertsatz (Link den du mir geschickt hast) gilt: f(x^>_2) - f(x^>_1) = grad(f(x^>_0))*(x^>_2 - x^>_1), (x^>_0) != (x^>_2) In anderen Worten: y != 1/t (x+ t(y-x)) 2) Und warum hat man in der letzten Gleichung grad(f(x^>)^T*(y^> - x^>) das y - x nicht mit 1/t (x+ t(y-x) - x) ersetzt?


   Profil
zippy
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 24.10.2018
Mitteilungen: 2660
  Beitrag No.5, eingetragen 2021-06-12

\quoteon(2021-06-12 19:10 - Wunderkind89 in Beitrag No. 4) Wenn y - x = 1/t (x+ t(y-x) - x) sein soll, dann ist y = 1/t (x+ t(y-x)) \quoteoff Wie kommst du auf diese Idee?


   Profil
sonnenschein96
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 26.04.2020
Mitteilungen: 555
  Beitrag No.6, eingetragen 2021-06-12

\quoteon(2021-06-12 19:10 - Wunderkind89 in Beitrag No. 4) Wenn y - x = 1/t (x+ t(y-x) - x) sein soll, dann ist y = 1/t (x+ t(y-x)) \quoteoff Nein, die Gleichung gilt trivialerweise wegen \(x-x=0\) und \(\frac{1}{t}\cdot t=1\). Du hast falsch umgestellt, wobei sich mir nicht erschließt, wieso Du diese Gleichung überhaupt umstellen möchtest. Nach dem Mittelwertsatz gibt es ein \(z\) auf der Verbindungsstrecke von \(x\) und \(y\) mit \[f(y)-f(x)=\nabla f(z)^T(y-x).\] Dieses \(z\) können wir als \(z=x+t(y-x)\) mit \(t\in(0,1)\) schreiben, siehe hier. [Die Antwort wurde vor Beitrag No.1 begonnen.]


   Profil
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Beitrag No.7, vom Themenstarter, eingetragen 2021-06-22

Ich bedanke mich für eure Antworten. Bin gerade beim Kapitel Schrittweitenstrategien und dazu steht folgendes im Skript: Im folgenden wird vorausgesetzt, dass wir im Punkt x_i bereits eine Richtung d_i mit \Nabla\ f(x_i)^T*d_i < 0 gefunden haben. Nach Hilfssatz 3.5.2 ist d_i somit eine Abstiegsrichtung von f in x_i. Um das allgemeine Abstiegsverfahren durchführen zu können, muss also nur noch die Schrittweite \alpha_i bestimmt werden. Zur Bestimmung der Schrittweite genügt es, für \alpha >= 0 die Funktion \phi : \IR ->\IR mit (1) \phi(\alpha) := f(x_i + \alpha * d_i) zu betrachten. Aus (2) \phi^'(0) = \Nabla\f(x_i)^T *d_i < 0 => \phi(\alpha) < \phi(0) Könnt ihr mir helfen und sagen, warum in der zweiten Gleichung \alpha = 0? ich nehme an das hat etwas mit dem Limes zu tun bei dem Differentialquotienten. Ich verstehe irgendwie auch die erste Gleichung nicht. Was macht es für ein Sinn die Gleichung so zu setzen? Demnach wäre doch \alpha = x_i + \alpha * d_i was keinen Sinn macht. Grüße


   Profil
sonnenschein96
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 26.04.2020
Mitteilungen: 555
  Beitrag No.8, eingetragen 2021-06-22

Deine Rechnung ergibt keinen Sinn, unter anderem da durch \(d_i\) teilst, was ein Vektor ist... Nach der Kettenregel gilt \(\varphi'(\alpha)=\nabla f(x_i+\alpha d_i)^T\cdot d_i\), also \(\varphi'(0)=\nabla f(x_i)^T\cdot d_i\). Wegen \(0>\varphi'(0)=\lim_{\alpha\to0}\frac{\varphi(\alpha)-\varphi(0)}{\alpha-0}\) gibt es ein \(\alpha_0>0\) mit \(\varphi(\alpha)<\varphi(0)\) für alle \(\alpha\in(0,\alpha_0]\). Man definiert \(\varphi\), um zu schauen für welchen Streckungsfaktor \(\alpha\) sich bei fest gewählter Richtung \(d_i\) ein möglichst kleiner Wert von \(f\) ergibt, wenn man in \(x_i\) startet. Edit: Du hast Recht damit, dass die Gleichung \(\alpha=x_i+\alpha d_i\) keinen Sinn ergibt, allein schon aus Dimensionsgründen. Ich habe allerdings auch keine Ahnung, wieso Du denkst, dass diese Gleichung gelten sollte...


   Profil
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Beitrag No.9, vom Themenstarter, eingetragen 2021-06-22

Danke, dass du mir hilfst und die Zeit dazu findest. Anscheinend verstehe ich deinen Ansatz der Kettenregel nicht. Kettenregel: f(x) = u(v(x)) f'(x) = u'(v(x))*v'(x) oder gesprochen: äußere Ableitung * die innere Ableitung Beispiel: f(x)=e^x^2 f'(x) = e^x^2 * 2x Und genau da habe ich ein Problem, denn ich habe doch \phi(\alpha) = f(x + \alpha * d_i) und ich hab keine Ahnung, wie die Funktion selbst aussieht, daher f(x + \alpha * d_i) = ? . Ich sehe nur die Argumente, die eine Funktion aufnimmt: x + \alpha * d_i. Wie kann ich da also eine Kettenregel anwenden? Beispiel zum Verständnis, was ich meine: f(x + \alpha * d_i ) = e^(x + \alpha * d_i) + (x + \alpha * d_i) g(\alpha) = \alpha * d_i => f(x + g(\alpha)) = e^(x + g(\alpha)) + (x + g(\alpha)) pdiff(f,\alpha) = e^(x + g(\alpha)) * g'(\alpha) + g'(\alpha) pdiff(f,\alpha) = e^(x + g(\alpha)) * d_i + d_i und wie man sieht kommt bei dem letzten Term folgendes raus: f_2(x + \alpha * d_i) = (x + \alpha * d_i) (so ähnlich wie f(b) = b) pdiff(f_2,\alpha) = d_i also nichts mit Kettenregel. Deswegen hängen diese Regeln doch davon ab, wie meine Funktion aussieht und nicht davon, welche Argumente sie kriegt? Das verwirrt mich an der Stelle. Wenn ich so etwas hier sehe: f(blablub) und diese Funktion ableiten möchte, dann kann ich doch nur folgendes sagen f'(blablub). Ob da eine Kettenregel, Produktregel oder Quotientenregel genommen werden muss kann ich nicht sagen, denn ich muss die Funktion genau kennen. Grüße


   Profil
sonnenschein96
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 26.04.2020
Mitteilungen: 555
  Beitrag No.10, eingetragen 2021-06-22

Es gilt \(\varphi=f\circ g\) mit \(g\colon\mathbb{R}\to\mathbb{R}^n, g(\alpha)=x_i+\alpha d_i\). Damit ist \(\varphi'(\alpha)=\nabla f(g(\alpha))\cdot g'(\alpha)=\nabla f(x_i+\alpha d_i)\cdot d_i\).


   Profil
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Beitrag No.11, vom Themenstarter, eingetragen 2021-06-23

Hey, ich hab eine Frage zu Armijo Regel und zwar: Zu vorgegebenen Zahlen: \beta \el\ intervalloo(0,1) und \sigma \el\ intervalloo(0,1) bestimme \alpha_i = max menge(\beta^j | j = 0,1,2,...) sodass folgendes gilt: \phi(\alpha_i) <= \phi(0) + \sigma * \alpha_i * \phi^'(0) Ich verstehe das so: ich hab eine Zahl \beta und diese Zahl muss zwischen 0 und 1 liegen, also zum Beispiel \beta = 0,5 und ist vorgegeben. Das Gleiche gilt für \sigma. Das j kann ich selbst festlegen und sagen j = 2. Also wird das Maximum von \beta^0 \beta^1 \beta^2 bestimmt (so verstehe ich das). Aber das macht doch irgendwie keinen Sinn, weil ich etwas in Potenz hoch 0 nehme? Das Ergibt immer 1 und ist das Maximum? Selbst, wenn die 0 falsch ist und es eigentlich j = 1,2,3 heißen müsste, wäre die erste Potenz bereits das Maximum? Beispiel: x = 0,5 also 0,5^1 > 0,5^2 usw. Ein Minimum würde genauso wenig Sinn machen, denn letzte Zahl j würde analog das Minimum festlegen. Ich gehe stark davon aus, dass ich hier diese math. Schreibweise nicht richtig verstanden habe. Ein Tipp vielleicht? Achja nochwas das \sigma * \alpha_i * \phi^'(0) ist ein Punkt zwischen \phi(0) und \phi(\alpha_i). Da für ein Abstieg \phi'(0) < 0 gelten muss ist diese Zahl, die dort steht negativ. Wenn ich aber von \phi(0) das \phi(alpha_i) erreichen will, muss ich mich doch stückweise in die positive Richtung bewegen? Grüße


   Profil
sonnenschein96
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 26.04.2020
Mitteilungen: 555
  Beitrag No.12, eingetragen 2021-06-23

Es ist etwas komisch formuliert, das stimmt. Wegen \(\beta\in(0,1)\) ist \((\beta^j)_j\) streng monoton fallend und \(\max\{\beta^j\,|\,j=0,1,2,\ldots\}=\beta^0=1\). Das ist wohl aber nicht gemeint. Ich denke man muss noch den Halbsatz danach mit einbeziehen, also \(\varphi(\alpha_i)\leq\varphi(0)+\sigma\alpha_i\varphi'(0)\). Du suchst also das größte \(\beta^j\), sodass die Bedingung \(\varphi(\beta^j)\leq\varphi(0)+\sigma\beta^j\varphi'(0)\) erfüllt ist. Äquivalent suchst Du also das kleinste \(j\in\mathbb{N}_0\) mit \(\varphi(\beta^j)\leq\varphi(0)+\sigma\beta^j\varphi'(0)\). Dann setzt Du \(\alpha_i:=\beta^j\), wobei in der Notation unterdrückt wird, dass \(\varphi\) eigentlich von \(i\) abhängig ist.


   Profil
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Beitrag No.13, vom Themenstarter, eingetragen 2021-06-23

Ich meine jetzt die Vorgehensweise verstanden zu haben. Zuerst wird \beta^0 gesetzt, dann wird überprüft, ob die Gleichung \phi(\alpha_i) <= \phi(0) + \sigma * \alpha_i * \phi^'(0) erfüllt wird. Wenn nein, dann wird \beta^1 gesetzt und erneut wird geschaut, ob die Gleichung erfüllt wird usw. Das beudetet, sobald die Gleichung erfüllt ist, hat man sein max Wert bestimmt, weil z.B. \beta^1 ist größer als \beta^2, \beta^3 usw. Ich hoffe, dass dies so richtig ist. Grüße


   Profil
Wunderkind89
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 15.03.2018
Mitteilungen: 97
  Beitrag No.14, vom Themenstarter, eingetragen 2021-07-28

Hey, ich melde mich mal wieder, denn ich hab eine neue Frage und zwar: in meinem Buch "Einführung in Data Science" von Joel Grus steht zu der Sigmoid Aktivierungsfunktion folgendes: "Die Sigmoid Funktion ist aus einer Reihe von Gründen nicht mehr der Liebling der Entwickler. Einer ist, dass sigmoid(0) = 0.5 ist [...]" Dann wird in diesem Buch als "beliebter Ersatz für Sigmoid" die Funktion tanh(x) (Tangenss Hyperbolicus) erwähnt, weil tanh(0) = 0 Das ist mir irgendwie zu schwammig und unklar, denn warum sollte sigmoid(0) = 0.5 so problematisch sein? Meine Vermutung: Es geht hier konkret um die Verlustfunktion und deren Ableitung mit Kettenregel nach den Gewichten. So, wie ich das verstehe ist das Problem, dass wenn nur Sigmoid verwendet wird im neuronalen Netz, ALLE Gewichte pro Gradientenupdate entweder positiv oder negativ sind aber warum ist das jetzt ein Problem? Bitte um Hilfe hier


   Profil
Wunderkind89 hat die Antworten auf ihre/seine Frage gesehen.

Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2021 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]