• Aucun résultat trouvé

Pour Cornuéjols et al. [16] l’apprentissage artificiel (AA) "consiste à construire une re-

présentation du monde en adéquation avec les observations disponibles et permettant de prendre des décisions."

L’apprentissage artificiel peut avoir comme objectif la prédiction ou la compréhension d’un comportement (dans une moindre mesure).

Les techniques d’AA sont particulièrement intéressantes lorsqu’un grand nombre de don- nées (fouilles de données) sont à analyser ou bien lorsque les algorithmes ne peuvent être créés manuellement.

CHAPITRE 4. TECHNIQUES D’INTELLIGENCE ARTIFICIELLE

Autre technique, la fouille de données (Data Mining) [57] trouve des applications comme par exemple la recherche d’informations sur internet, la recherche d’informations ban- caires ou à des fins commerciales, l’aide au diagnostic médical, la reconnaissance de formes ou d’écriture, ainsi que la recherche en biologie ou en ingénierie.

Concernant l’aide à la création d’algorithmes, on retrouve des applications dans de nom- breux domaines tels que par exemple : le traitement du langage, la commande de robots ou d’engins de transport ainsi que la vision par ordinateur.

L’apprentissage artificiel peut être supervisé lorsque l’on cherche à prédire la valeur d’une variable de sortie, ou non supervisé. Dans ce dernier cas, les exemples sont regroupés se- lon leur similarité formant des groupes homogènes. La prédiction consiste alors à identi- fier le groupe auquel appartient le nouveau cas.

4.2.1 Apprentissage supervisé

Dans le cas de l’apprentissage supervisé, on dispose de N instances i constituées d’un même nombre de variables explicatives en entrée (généralement modélisées par un vec- teur x(i )) associées à une ou plusieurs variables de sortie y(i ). L’apprentissage supervisé recherche une hypothèse h (fonction ou distribution de probabilité) entre les variables explicatives et de sortie dans le but de prédire pour une nouvelle instance x(k)la valeur de sortie y(k)(figure 4.2). Cette hypothèse h permet de généraliser une fonction à partir des données d’apprentissage.

Les objectifs de l’apprentissage supervisé peuvent être la classification ou la régression. Dans le cas de la classification, les variables de sorties se répartissent dans un nombre fini de classes. Les principaux algorithmes de classification sont :

— les arbres de décision (figure 4.3 (a)) qui représentent le problème par un arbre modélisé par la hiérarchisation de tests sur les variables explicatives et dont les ex- trémités (feuilles) donnent les valeurs de la variable de sortie y1, cette technique est

présentée dans la section 4.4.3 ;

— les réseaux de neurones (figure 4.3 (b)) constitués de neurones formels organisés en couches, les valeurs d’entrée de la première couche correspondent aux valeurs des variables explicatives, la valeur de la variable à prédire est donnée en sortie du neurone de la dernière couche, cette technique est présentée dans la section 4.4.1 ; — les machines à vecteurs de support (ou Support Vector Machine "SVM") qui sé- parent l’espace des instances par des hyperplans (figure 4.3 (c)) en optimisant les marges (distance entre les instances les plus proches appelées vecteurs supports et l’hyperplan), cette technique est présentée dans la section 4.4.2 ;

CHAPITRE 4. TECHNIQUES D’INTELLIGENCE ARTIFICIELLE

FIGURE4.2 – Apprentissage supervisé. Prédiction d’une variable de sortie pour une nouvelle ins-

tance à l’aide d’une hypothèse obtenue par apprentissage.

— la classification naïve bayésienne qui s’appuie sur la théorie de Bayes pour déter- miner la probabilité d’appartenance d’une instance à une classe, l’instance testée sera classée dans le groupe dont la probabilité est maximale, cette technique traite les différentes variables indépendamment les unes des autres.

Dans le cas de la régression, les variables de sorties peuvent prendre n’importe quelle valeur réelle. Les principaux algorithmes de régression sont basés sur les méthodes sta- tistiques (régression linéaire, polynomiale ou logistique). Les machines à vecteurs de sup- port peuvent également résoudre un problème de régression.

4.2.2 Apprentissage non supervisé

Dans le cas de l’apprentissage non supervisé (ou Clustering), les instances les plus si- milaires entre elles sont associées dans des groupes homogènes (figure 4.4). Il n’y a pas de variables de sortie imposées. Cette technique est utilisée principalement en fouille de données. La prédiction sur une nouvelle instance consiste à identifier le groupe auquel elle appartient. Contrairement à l’apprentissage supervisé, l’ensemble des données d’ap- prentissage est nécessaire lors du test sur une nouvelle instance.

CHAPITRE 4. TECHNIQUES D’INTELLIGENCE ARTIFICIELLE

FIGURE4.3 – Algorithmes de classifications. (a) Arbre de décision. (b) Réseau de neurones. (c)

Machine à support de vecteurs.

FIGURE4.4 – Apprentissage non supervisé. Regroupement d’instances proches dans un cluster.

— l’algorithme "espérance-maximisation" qui assigne une distribution de probabi- lité pour chaque instance indiquant la probabilité d’appartenance à chacun des groupes ;

— l’algorithme des "K-moyennes" qui partitionne les instances dans k groupes consi- dérant la distance d’une instance à la moyenne des instances d’un même groupe ; — les algorithmes "DBSCAN" et "OPTICS" qui regroupent des instances en fonction

CHAPITRE 4. TECHNIQUES D’INTELLIGENCE ARTIFICIELLE de leur densité ;

4.2.3 Logiciels de création d’algorithmes d’apprentissage

Les logiciels d’aide à la création d’algorithmes d’apprentissage artificiels sont nombreux. Les logiciels commerciaux et libres de droit les plus utilisés sont listés ci-dessous.

les logiciels commerciaux tels que SPSS1(Statistical Package for the Social Sciences) sont souvent destinés à l’analyse statistique ou à une application particulière (par exemple la fouille de données pour l’analyse du web). Quelques logiciels commerciaux proposent des algorithmes de classification (Statistica Data Miner152). Ces logiciels ont une inter- face facile à prendre en main et proposent un rendu esthétique.

Des langages de programmation destinés au calcul numérique tels que Matlab3intègrent des algorithmes d’apprentissage supervisé et non supervisé.

Les logiciels libres sous licence GNU sont nombreux. Certains tels que R4sont des lan- gages associés à un environnement. Leur principe de fonctionnement à base d’interpré- teur de commandes les rendent peu pratiques. Par contre, la qualité du graphisme facilite l’analyse des variables et les rendent intéressant pour présenter des données et des résul- tats.

Plusieurs logiciels libres proposent les principaux algorithmes d’apprentissage supervisé et non supervisé tels que Rapidminer5ou Tanagra6qui est destiné à l’enseignement et à la recherche.

Weka7(Waikato Environment for Knowledge Analysis) est développé par l’université de Waikato en Nouvelle-Zélande. Il intègre des outils de visualisation de données, de traite- ment, des classifieurs et du clustering. Weka dispose d’une interface aisée et d’un grand nombre d’algorithmes ce qui rend son utilisation intéressante pour la sélection et la confi- guration d’algorithmes. C’est ce dernier qui a été utilisé dans le cadre de cette thèse.

1. SPSS, SPSS Inc, http ://www-01.ibm.com/software/analytics/spss/products/statistics/index.html 2. Statistica, StatSoft Inc.,http ://www.statsoft.fr

3. Matlab, MathWorks, http ://fr.mathworks.com/products/matlab/ 4. R,http ://www.r-project.org

5. Rapidminer,https ://rapidminer.com

6. Tanagra, http ://eric.univ-lyon2.fr/ ricco/tanagra/fr/tanagra.html 7. WEKA, University of Waikato, http ://www.cs.waikato.ac.nz/ml/weka/

CHAPITRE 4. TECHNIQUES D’INTELLIGENCE ARTIFICIELLE

4.3 Techniques d’intelligence artificielle utilisées en ingé-