Étude de cas : Mise en place de réseaux neuraux pour la reconnaissance de l'image avec des calculs détaillés
Les réseaux neuraux sont largement utilisés dans les tâches de reconnaissance d'images en raison de leur capacité à apprendre des modèles complexes.Cette étude de cas explore le processus de mise en oeuvre, y compris des calculs détaillés impliqués dans la formation d'un réseau neural pour la classification d'images.
Conception du réseau neuronal
Le réseau se compose d'une couche d'entrée, d'une couche cachée et d'une couche de sortie. Pour plus de simplicité, considérez un petit ensemble de données avec des images représentées par 4 pixels chacune. La couche d'entrée a 4 neurones, la couche cachée a 3 neurones, et la couche de sortie a 2 neurones représentant deux classes.
Poids et anomalies initiaux
Les poids sont initialisés au hasard. Par exemple, les poids entre entrée et couche cachée sont:
- W11 = 0,2
- W12 = -0,3
- W13 = 0,4
- W21 = -0,5
- W22 = 0,1
- W23 = -0,2
- W31 = 0,3
- W32 = -0,4
- W33 = 0,2
Les anomalies sont initialement réglées à zéro pour une simplicité.
Propagation et calculs vers l'avant
Compte tenu d'une image d'entrée avec des valeurs de pixel [0,5, 0,2, 0,1, 0,7], les entrées de couche cachées sont calculées comme suit:
H1 = (0,5)(0,2) + (0,2)(-0,3) + (0,1)(0,4) = 0,1 - 0,06 + 0,04 = 0,08
H2 = (0,5)(-0,5) + (0,2)(0,1) + (0,1)(-0,2) = -0,2 + 0,02 - 0,02 = -0,25
H3 = (0,5)(0,3) + (0,2)(-0,4) + (0,1)(0,2) = 0,15 - 0,08 + 0,02 = 0,09
En appliquant une fonction d'activation, comme sigmoïde, les sorties de calques cachés sont :
OH1 = 1 / (1 + e-0,08) --0,52
OH2 = 1 / (1 + e]0.25 -
OH3 = 1 / (1 + e-0,09) --0,52
Les sorties sont ensuite utilisées comme entrées dans la couche de sortie, où les poids sont appliqués de la même façon pour calculer les probabilités de classe.
Calcul de l'erreur et mise à jour des poids
Supposons que la classe vraie soit la classe 1, représentée par [1, 0]. La couche de sortie calcule:
1 = 1 / (1 + e-z1
Lorsque z1 est la somme pondérée des sorties cachées. L'erreur est calculée comme suit:
Perte = 0,5 * (cible - sortie)2
En utilisant la descente en gradient, les pondérations sont mises à jour en fonction de l'erreur et du taux d'apprentissage, par exemple 0,1.
Résumé des calculs
Ce processus se répète pour plusieurs époques, ajustant les poids pour améliorer la précision. Les calculs détaillés impliquent des multiplications de matrices, des fonctions d'activation et des dérivés d'erreurs, qui sont essentiels pour la formation efficace des réseaux neuraux.