Wie vergleichen Sie Perceptron und Bachpropgation-Technik? Bitte erklären Sie mir, da ich kein Wissen darüber habe.
user
Im Allgemeinen ist die Backpropagation ein fundamentaler Algorithmus in Perceptronen und anderen künstlichen neuronalen Netzwerken (ANN), also können wir vielleicht nicht sagen, dass die Perceptron- und Backpropagation-Technik vergleichbar ist. Aber ich werde mein Bestes versuchen, sie zu erklären. Das Perceptron kann eine komplexe Funktion zwischen Eingang und Ausgang ungefähren. Zum Beispiel kann ein Perceptron trainiert werden, um handgeschriebene Zahlen zu identifizieren, und der Eingang wird der Wert jedes Pixels des Fotos sein, wobei der Ausgang einer von 0-9 ist, und wasEs basiert auf der Idee eines künstlichen Neurons, das einen $N$-Dimensions-Input-Vektor $\{ x_0, x_1,...,x_{N-1} \}$ einnimmt. Es führt dann eine gewichtete Summe mit einer Voreingenommenheit auf dem Eingang durch und gewinnt $x_0 w_0 + x_1 w_1 +...+x_{N-1} w_{N-1} + b$. Die Summe wird dann einer Aktivierungsfunktion zugeführt, die normalerweise nicht-linear ist, um die endgültige Ausgabe $y$ zu erhalten. Um eine $M$-Dimensionsausgabe zu erhalten, können wir eine Schicht aus $M$-Separaten Neuronen aufbauen und dieselbe einspeisen.$N$-Dimensionseingabe zu jedem von ihnen, dann sammeln Sie jede einzelne Ausgabe, um einen neuen Vektor $\{ y_0, y_1,..., y_{M-1} \}$ zu bilden. Die Eingabe, Ausgabe und die Neuronenschicht bilden ein einschichtiges Perceptron. Durch die Kombination mehrerer Schichten von Neuronen zusammen, wo die Ausgabe einer Ebene die nächste Ebene ist, erhalten wir ein mehrschichtiges Perceptron. Dies erklärt auch, warum die Aktivierungsfunktion normalerweise nicht-linear ist - wenn wir eine lineare Funktion verwenden, und da der voreingenommene gewichtete Summenteil auch linear ist, ist die gesamte Mehrschicht-FunktionPerceptron führt nur eine lineare Berechnung an die Eingabe, die die gleiche ist wie eine einfache voreingenommene gewichtete Summe. Mit der Leistung von nicht-linearen Aktivierungsfunktionen, stattdessen können wir ungefähr komplexe Funktionen durch mehrschichtige Perceptronen. Also, wie können wir die Gewichte und Voreingenommenheiten in den Neuronen anpassen, um die Annäherung der erwarteten Funktion zu erhalten? Wir benötigen zunächst einige - in der Regel eine Menge - vorhandene Ein- und Ausgänge, um es durch Minimierung des Fehlers zwischen der erwarteten und tatsächlichen Ausgabe zu trainieren.Die Methode wird die Backward Stage genannt, im Gegensatz zur Forward Stage, die von der Eingabe, bis hin zu den gewichteten Summen und Aktivierungsfunktionen des Perceptrons, bis zur Ausgabe beginnt. Dieser Teil ist schwieriger und erfordert etwas Kalkül, also bereiten Sie sich vor: Bei einem $L$-Schichtperceptron, lassen Sie $C$ der Fehler sein $z^l_j$ die $j$ gewichtete Summe der $l$-Schicht, $w^l_{jk}$ und $b^l_j$ die Gewichte und Voreingenommenheit sein, und $a^l_j =f^l(z^l_j)$ ist die entsprechende Ausgabe. Wir erhalten $z^l_j = \sum ^{m^l} _{k=1} w^l_{jk} a^{l-1}_k + b^l_j$. Um $C$ zu minimieren, verwenden wir immer wieder Gradientenabwärts, um jedes Gewicht und jede Bias zu aktualisieren: $w = w - \epsilon \frac{\partial C}{\partial w}$, $b = b - \epsilon\frac{\partial C}{\partial b}$, wobei $\epsilon$ die Lernrate ist. Nun besteht die Aufgabe darin, den partiellen Derivat oder den lokalen Gradienten für jede Gewichtsbias zu finden, indem die Kettenregel verwendet wird: $\frac{\partial C}{\partial w^l_{jk}} = \frac{partialTeil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil J : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C : Teil C :\frac{\partial C}{\partial z^{l+1}_k$ So können wir zuerst eine Forward Stage ausführen, um die $a$ und $z$ zu erhalten. Als nächstes beginnen wir mit den endgültigen Ausgängen $a^{L-1}_j$ bei Layer $L-1$, berechnen $\frac{\partial C}{\partial a^{L-1}_j$ und $\frac{\partial C}{{\partial z^{L-1}_j$, dann verwenden Sie sie, um $\frac{\partial C}{\partial a^{L-2}_j}$ und $\frac{\partial c}{{L-2}_j}$ zu berechnen, und dann wiederholen Sie dies bis zur ersten Ebene zurück. Mit diesen zwei teilweisen Ableitungen jeder Ebene können wir bestimmen, dass wirBerechnung des lokalen Gradienten für jede Gewichtsneigung jeder Schicht. Durch wiederholtes Forward Stage - Backward Stage für viele Male, kann der Fehler minimiert werden. Da die Berechnung der lokalen Gradienten geht von der letzten Ebene auf die erste, nennen wir es die Backpropagation. Ich hoffe, dies kann Ihnen helfen, diese Konzepte besser zu verstehen.
assistant