Début des études: samedi 7 décembre
Matériel pédagogique, etc.: ・ Miyuki Oshige "Détails! Note d'introduction à Python3 »(Sotech, 2017): 12/7 (sam) -12/19 (jeu) lu ・ Progate Python course (5 cours au total): 12/19 (jeudi) -12/21 (samedi) fin ・ Andreas C. Müller, Sarah Guido "(titre japonais) Apprentissage automatique à partir de Python" (O'Reilly Japon, 2017): 21/12 (sam) -23 décembre (sam) ・ Kaggle: Real or Not? NLP with Disaster Tweets: Publié du samedi 28 décembre au vendredi 3 janvier Ajustement ・ Wes Mckinney "(titre japonais) Introduction à l'analyse de données par Python" (O'Reilly Japon, 2018): 1/4 (mercredi) à 1/13 (lundi) lire ・ ** Yasuki Saito "Deep Learning from Zero" (O'Reilly Japan, 2016): 1/15 (mercredi) ~ **
p.164 Chapitre 5 Lecture terminée jusqu'à la méthode de propagation de retour d'erreur.
・ La méthode de propagation de l'erreur en retour est une méthode pour calculer efficacement le gradient du paramètre de poids, qui est l'importance de l'élément. Le calcul du gradient par différenciation numérique effectué au chapitre 4 est simple mais prend du temps, mais il peut être calculé à grande vitesse. (Cependant, il y a des parties compliquées.) Dans ce livre, des explications sont données à l'aide de "graphes de calcul".
-Propagation avant: Procède au calcul de gauche à droite. Propagation vers l'arrière: avance le calcul de droite à gauche.
-Dans le graphique de calcul, vous pouvez sortir le résultat suivant en ne considérant que le calcul local, c'est-à-dire la petite plage qui vous concerne. Les calculs locaux sont simples, mais la propagation des résultats donne les résultats de calculs complexes qui composent le tout.
-En propagation vers l'avant, le résultat du calcul local se propage de gauche à droite comme le montre le diagramme fléché, tandis qu'en propagation arrière, le résultat de la "différenciation locale" se propage de droite à gauche. Le résultat de ce calcul est finalement propagé au premier élément (prix ou quantité), et ** indique l'ampleur de l'influence de la valeur numérique apparaissant ici sur le prix final **.
-Règle de chaîne: propriétés des fonctions synthétiques pour la différenciation ** "Si une fonction est représentée par une fonction composite, le différentiel de cette fonction composite peut être représenté par le produit des différentiels de chacune des fonctions qui composent la fonction composite." "**"
\frac{\partial_z}{\partial_x} = \frac{\partial_z}{\partial_t}\frac{\partial_t}{\partial_x}
Nous allons procéder à la rétro-propagation de la différenciation en utilisant ce principe de rapport de chaîne. Tout ce que vous avez à faire est de l'attacher à l'arrière du signal d'entrée du nœud de la même manière. Si le signal d'entrée continue de droite à gauche avec h et y, ce sera comme suit.
\frac{\partial_z}{\partial_t}\frac{\partial_t}{\partial_x}\frac{\partial_x}{\partial_h}\frac{\partial_h}{\partial_y}
-Nœud d'addition: considérez la formule z = x + y. Puisque les deux différentiels partiels sont des constantes, la rétropropagation au nœud d'addition envoie la même valeur numérique au nœud suivant (nœud précédent).
· Multiplier le nœud: considérez la formule z = x * y. La solution différentielle partielle pour x est y, et la solution différentielle partielle pour y est x Par conséquent, dans la rétro-propagation du nœud de multiplication, le signal d'entrée est multiplié par ** la valeur inversée ** et envoyé au nœud suivant (nœud précédent). Autrement dit, celui où x flux est multiplié par y, et celui où y flux est multiplié par x et renvoyé.
-En appliquant la fonction d'activation (ReLU, Sigmoid) à l'idée ci-dessus, cela devient le mécanisme du réseau neuronal réel.
-ReLU agit comme un "interrupteur" dans le circuit. Si la valeur ne répond pas aux critères, envoyez "0" comme valeur lors du passage dans le nœud. (Autrement dit, la propagation du système s'arrête là.)
・ Transformation d'affine: Calcul du produit de matrices réalisé par propagation avant d'un réseau de neurones La somme pondérée des neurones peut être exprimée par ** Y = np.dot (X, W) + B **. Lors de la propagation de cette somme pondérée, une transformation affine est effectuée.
-Utilisez la fonction softmax ou la fonction d'égalité dans le traitement final, le traitement dans la couche de sortie. Comme nous l'avons appris la dernière fois, ** la classification utilise la fonction softmax (+ erreur d'entropie croisée) et la régression utilise la fonction d'équivalence (+ erreur de somme carrée) **.
-Vérification du gradient: pour vérifier le résultat de la différenciation numérique et le résultat du gradient obtenu par la méthode de propagation des erreurs. ** Soustrayez la valeur différentielle numérique de la valeur de rétropropagation d'erreur **. Avec l'implémentation correcte, l'erreur sera aussi petite que possible, proche de zéro.
Recommended Posts