La reconnaissance de formes est très utilisée dans différents domaines :
On va réaliser un réseau effectuant la reconnaissance de caractères non manuscrits.
Ce réseau ne comporte qu'une seule couche, avec autant de neurones que de formes à reconnaître.
L’apprentissage, issu de la règle du delta, est de type supervisé :
Tous les poids sont des réels entre -1 et 1.
Les valeurs des entrées sont simplement l’intensité du pixel en niveaux de gris (de 0 à 255), ramenée à un réel entre 0 et 1.
La fonction d’entrée appliquée et une somme pondérée des entrées.
La fonction de transfert appliquée est une sigmoïde ( $f(x) = \frac{1}{1 + e^{-x}}$ ) qui se charge de ramener la sortie à un réel entre 0 et 1, qui représente la probabilité que ce soit la forme correspondante.
Chaque neurone doit affecter un poids important aux pixels activés de sa forme
Ce poids sera d’autant plus important que le pixel est discriminant (i.e. il n’est pas activé pour les autres formes).
Il doit encore affecteur un poids beaucoup plus faible aux autres.
L'apprentissage est donc constitué de correction et de renforcement.
On modifie les poids proportionnellement au complémentaire de la différence entre les probabilités de la forme trouvée (et réelle) et de la forme arrivant en seconde position, en augmentant le poids des entrées activées pour la forme trouvée.
Un ajustement soigné (et expérimental) des coefficients de proportionnalité est nécessaire afin d’obtenir de bons résultats.
Programmez cette reconnaissance de formes.