III- RESEAU DE NEURONES ARTIFICIELS : UN EXEMPLE
D'APPLICATION
Les réseaux de neurones artificiels peuvent être
utilisés en matière de reconnaissance d'images. Contrairement au
cerveau humain, un ordinateur ne peut p as déterminer d'un coup d'oeil
si une photographie montre un être humain, une plante ou un objet. Il est
obligé d'examiner l'image pour en discerner les caractéristiques
individuelles. C'est l'algorithme mis en place qui lui permet de savoir quelles
caractéristiques sont pertinentes ; à défaut, il peut le
découvrir par lui-même grâce à l'analyse des
données. Au sein de chaque couche du réseau de neurones, le
système vérifie les signaux d'entrée, c'est-à-dire
les images, décomposées en critères individuels tels que
la couleur, les angles ou les formes. Chaque nouveau teste permet à
l'ordinateur de déterminer avec
|
Mémoire de Master option Bases de Données
et Génie Logiciel
|
|
27
28
29
plus de justesse ce que montre l'image. Initialement, les
résultats sont nécessairement sujets à un certain nombre
d'erreurs. Si le réseau de neurones reçoit un retour
d'information d'origine humaine qui lui permet ainsi Figure 10 : Fonctionnent
des réseaux de neurone Figure 9 : Couche de réseau de neurone
d'adapter son algorithme, on parle d'apprentissage machine. Le concept
d'apprentissage profond a pour but d'éliminer le besoin en intervention
humaine. Le système apprend alors de sa propre expérience ; il
s'améliore à chaque fois qu'une image lui est soumise. En
théorie, on obtient à l'arrivée un algorithme capable
d'identifier sans erreur le contenu d'une photographie, qu'elle soit en
couleurs ou en noir et blanc, quelle que soit la position du sujet ou l'angle
sous lequel il est représenté.
1- Les différents types de réseaux de
neurones artificiels
On fait appel à différentes structures de
réseaux de neurones artificiels en fonction de la méthode
d'apprentissage utilisée et de l'objectif recherché.
2- Apprentissage par renforcement
Le Renforcement Learning est une méthode
d'apprentissage pour les modèles de Machine Learning. Pour faire simple,
cette méthode consiste à laisser l'algorithme apprendre de ses
propres erreurs. Afin d'apprendre à prendre les bonnes décisions,
l'intelligence artificielle se retrouve directement confrontée à
des choix. Si elle se trompe, elle est » pénalisée «.
Au contraire, si elle prend la bonne décision, elle est »
récompensée «. Afin d'obtenir toujours plus de
récompenses, l'IA va donc faire de son mieux pour optimiser sa prise de
décisions. Le développeur du modèle de Machine Learning se
contente de fixer les règles qui déterminent si l'IA sera punie
ou récompensée. Cependant, elle ne donne à cette
dernière aucun indice ni aucune suggestion pour l'aider à prendre
les bonnes décisions. Une équipe de recherche de
l'université de Tokyo a mis au point un système de reconnaissance
de signature manuscrite ayant un taux de réussite de 98,2 %. Ce
système est le seul à tenir compte de l'angle d'inclinaison du
stylo, en plus du style d'écriture et de la pression comme c'est le cas
dans les systèmes traditionnels qui ont un taux de reconnaissance de 95
%. L'équipe de chercheurs, dirigée par Seiichiro Hangai et Fumio
Mizoguchi, a développé ce système après avoir
constaté que l'angle d'inclinaison du stylo est un trait personnel
déterminé par la taille de la main et la façon dont la
personne tient et fait bouger un stylo. Ce système est également
capable de détecter une signature contrefaite par recopie d'une
signature originale. Les chercheurs pensent que cette technique pourra
améliorer la sécurité des
|
Mémoire de Master option Bases de Données
et Génie Logiciel
|
|
cartes à puces puisque la signature d'un titulaire
d'une telle carte Mémoire de Master option Bases de Données et
Génie Logiciel 34 peut être stockée dans sa puce et
utilisée pour comparaison avec la signature du possesseur de la carte au
moment de son utilisation. Cette technique, indépendante de la langue
employée, fait l'objet d'une demande de brevet.
3- Quelques algorithmes du deepLearning
Grid Search est un algorithme d'optimisation
.le but est de déterminer méthodiquement la meilleure combinaison
d'hyper paramètres pour optimiser une métrique de
précision d'un modèle, tout en minimisant le nombre de
simulations effectuées.
K fold
K-fold est une méthode de validation dont le principe
est le suivant: Sur la figure ci-dessous, on peut remarquer que le da taset
ayant 20 points a été divisé en 4 folds, chaque fold
contenant 5 points ou observations. Lors de la première
itération, le premier fold sert de données de Test, pendant qu'un
modèle est entrainé sur le reste des folds. A la seconde
itération, le modèle est de nouveau entrainé, mais cette
fois-ci, sur les données des folds 1, 3 et 4, le second fold servant de
données de Test, et ainsi de suite ... Avec cette méthode, on
s'assure que chaque point de notre dataset a servi une fois au moins au Test et
à l'entrainement, tout en respectant le principe selon lequel on ne fait
pas de Test que des données qui ont servi à l'entrainement.
Figure 1.23 : La méthode de k-fold
Support Vector Machine (SVM)
SVM est un algorithme utilisant la composante vectorielle des
éléments du jeu de données d'apprentissage afin d'en
déterminer une orientation préférentielle. Ainsi selon que
l'on se place dans un contexte de régression ou de classification, il va
être possible de ? soit définir une droite
|
Mémoire de Master option Bases de Données
et Génie Logiciel
|
|
porté par cette orientation donnée par la
composante vectorielle ? soit de construire une droite perpendiculaire à
ce même vecteur.
Figure 1.24 : Support SVM Gradient
descent
L'algorithme du gradient désigne un algorithme
d'optimisation différentiable. Il est par conséquent
destiné à minimiser une fonction réelle
différentiable définie sur un espace euclidien (par exemple, R n
{\displaystyle \mathbb {R} ^{n}} , l'espace des n-uplets de nombres
réels, muni d'un produit scalaire) ou, plus g énéralement,
sur un espace hilbertien. L'algorithme est itératif et procède
donc par améliorations successives. Au point courant, un
déplacement est effectué dans la direction opposée au
gradient, de manière à faire décroître la fonction.
Le déplacement le long de cette direction est déterminé
par la technique numérique connue sous le nom de recherche
linéaire. Cette description montre que l'algorithme fait partie de la
famille des algorithmes à directions de descente.
|
Mémoire de Master option Bases de Données
et Génie Logiciel
|
|
30
Figure 1.25: Schéma de l'algorithme de
gradient FORET ALEATOIRE
Algorithme de classification composé de nombreux arbres
de décisions. Formellement proposé en 2001 par Leo Breiman et
Adèle Cutler, il fait partie des techniques d'apprentissage automatique.
Cet algorithme combine les concepts de sous-espaces aléatoires et de
ré-échantillonnage avec remise ensembliste (bagging).
L'algorithme des forêts d'arbres décisionnels effectue un
apprentissage sur de multiples arbres de décision entraînés
sur des sous-ensembles de données légèrement
différents. Principe du foret aléatoire
Figure 1.26: Schema forêt
aléatoire
|
Mémoire de Master option Bases de Données
et Génie Logiciel
|
|
MATERIELS ET METHODES
31
|
Mémoire de Master option Bases de Données
et Génie Logiciel
|
|
32
|