Apprentissage Machine
par Mme EL KHATTABI
2019-2020
• L'apprentissage automatique (machine
learning en anglais), un des champs d'étude de
l'intelligence artificielle, est la discipline
scientifique concernée par le développement,
l'analyse et l'implémentation de méthodes
automatisables qui permettent à une machine
(au sens large) d'évoluer grâce à un processus
d'apprentissage, et ainsi de remplir des tâches
qu'il est difficile ou impossible de remplir par
des moyens algorithmiques plus classiques.
• Applications
• L'apprentissage automatique est utilisé pour doter
des ordinateurs ou des machines de systèmes de :
perception de leur environnement (vision,
reconnaissance d'objets, langages naturels,
caractères manuscrits) ; moteurs de recherche ; aide
aux diagnostics médical; détection de fraudes à la
carte de crédit ; classification des séquences d'ADN ;
jeu ; locomotion de robots ;
• Étapes d'un projet d'apprentissage automatique
• L'acquisition de données : L'algorithme se nourrissant des
données en entrée, c'est une étape importante: récolter des
données pertinentes et en quantité suffisante.
• La préparation, et le nettoyage de la donnée : Il peut arriver
que la donnée recueillie à l'étape précédente ne soit pas
pleinement pertinente, ou contienne du bruit, ou ne soit pas
assez structurée. Un opérateur humain va donc optimiser la
donnée pour que l'algorithme puisse mieux la traiter, ou
arriver plus rapidement à son but.
• La création du modèle
• L'évaluation :
• Le déploiement : Le modèle va être déployé en production
pour faire des prédictions, et potentiellement utiliser les
nouvelles données en entrée pour se ré-entrainer et
améliorer son modèle.
Introduction générale
L’informatique est la science du traitement
automatique de l’information. Son développement
est confondu avec celui des machines de traitement :
les ordinateurs. Depuis les débuts jusqu’à aujourd’hui,
les ordinateurs sont devenus de plus en plus puissants.
• Malgré cette puissance ,on ne peut toujours
pas résoudre les problèmes d’une application
informatique dans certains domaines.
• La construction de logiciels s'appuie sur
plusieurs approches. Deux parmi les plus
utilisées sont l'approche algorithmique et
l'approche basée sur la connaissance.
• Une approche algorithmique nécessite l’écriture
du processus à suivre pour résoudre le problème.
• La seconde approche possible est celle de
l’intelligence artificielle ( IA), avec pour
applications les plus connues les systèmes experts.
Ici, la résolution du problème est confiée à un
ensemble de règles données par l’expert humain
du domaine. Les cas qui n’ont pas été prévus par
l’expert ne seront pas correctement traités.
• l’approche basée sur la connaissance se limite à
des domaines d’application où la modélisation
de la connaissance, par exemple sous forme de
règles, est possible.
• Ces deux approches ne suffisent pas à répondre
à tous les problèmes existants. Citons les
domaines de la reconnaissance de formes
(images ou signaux), du diagnostic, du contrôle
moteur, de la traduction automatique, de la
compréhension du langage.
• Pourtant, des êtres vivants relativement simples
sont capables de réaliser certaines de ces
opérations apparemment sans difficulté ( la
mouche , la chauve souris, etc).
• Une troisième approche au traitement
automatique de l’information, où l’on cherche
à s’inspirer du traitement de l'information
effectué par le cerveau, s’offre à nous.
• Le comportement intelligent est résultat d’un
ensemble de mécanismes mentaux. Ces
mécanismes étant basés sur des processus
neurophysiologiques, on suppose que la
structure du système nerveux central est à la
base du développement d’un comportement
intelligent.
L’Intelligence Artificielle
• Qu’est-ce que l’Intelligence ?
• Faculté de comprendre, de saisir par la pensée.
• Aptitude à s’adapter à une situation, à choisir en
fonction des circonstances.
• Il est difficile de donner une définition précise :
• la difficulté à définir l’Intelligence
• de nombreux domaines sont concernés par
l’IA
• Une définition approximative :
• "Reproduire le comportement humain "
• La préhistoire (1945-1955)
• Premier problème étudié : Traduction
automatique
• Résultat : un échec
• Mais, on en tira des points importants :
• importance des connaissances non exprimées,
• étude de la représentation des connaissances,
• impossibilité de représenter toutes les
connaissances,
• nécessité de les rédiger sous forme générique.
• De nombreuses ramifications vont se créer :
• compréhension du langage naturel,
• démonstration automatique de théorèmes,
• représentation des connaissances,
• programmation des jeux,
• résolution de problèmes,
• 1956 :
• – Naissance du terme : Intelligence Artificielle
(IA)
• – Premiers programmes financés par les
militaires
• • Machines de traduction pour faciliter l’espionnage
• • Échec
• 1980..
• Avancée technologique de l’informatique
• Exemples :
• Les systèmes experts deviennent
opérationnels en chimie, en médecine, en
géologie ou dans l’industrie.
• Deep Blue bat Kasparov (1997).
• La recherche publique ou privée se développe.
• Une avancée majeure dans le secteur de
l'intelligence machine est le succès de
l'ordinateur développé par IBM, Deep Blue,
qui est le premier à vaincre le champion
mondial d'échecs Garry Kasparov en 1997.
• IBM Watson, l'ordinateur dont le but est de
gagner au jeu Jeopardy. Ce but est atteint en
2011, quand Watson gagne à Jeopardy, en
répondant aux questions par traitement de
langage naturel
• En 2012, un réseau neuronal développé par
Google parvient à reconnaître des visages
humains ainsi que des chats dans des vidéos
YouTube
• En 2014, 64 ans après la prédiction d'Alan
Turing, le dialogueur Eugene Goostman est le
premier à réussir le test de Turing en
parvenant à convaincre 33 % des juges
humains au bout de cinq minutes de
conversation qu'il n’est pas un ordinateur,
mais un garçon ukrainien de 13 ans
L’approche cognitive
• Une approche pluridisciplinaire mêlant
linguistes, informaticiens et psychologues
• Etude des processus du raisonnement humain
• L’IA est la réalisation des programmes imitant
dans leur fonctionnement l’esprit humain.
Une définition générale
• L’IA vise à faire exécuter par l’ordinateur des
tâches pour lesquelles l’Homme est
actuellement meilleur que la machine.
Les domaines concernés par l’IA
• L’informatique
• Algorithmique
• Théorie de la complexité
• Imagerie Numérique
• Logique
• Langage naturel
• ...
• Les mathématiques
• Outils mathématiques
• Logique
• Preuve de théorèmes
• ...
• Les sciences humaines
• Langage naturel
• Fonctionnement du raisonnement humain
• ...
• Autres domaines intéressants pour l’IA
• La médecine
• La biologie
• La physique et la chimie
• ...
Quelques difficultés rencontrées en IA
• Difficultés de modélisation :
• les problèmes ne sont pas toujours
parfaitement définis
• certaines notions sont difficiles à exprimer :
possibilité, probabilité, préférence, . . .
• Difficultés de résolution :
• Difficultés de conception des algorithmes
• Espaces de recherche très vastes
• Problèmes de temps de réponse
Systèmes Experts (1969-1979)
• Le premier système expert, appelé DENDRAL, fut crée
en 1969 pour la tâche spécialisée consistant à déterminer
la formule développée d’un corps organique à partir de la
formule brute et du spectrogramme de masse du corps
considéré.
• Apres le succès du DENDRAL, d'autres systèmes d'experts
furent crées, notamment le système MYCIN, qui réalisait
un diagnostic des infections sanguines. Avec 450 règles,
MYCIN réussissait a diagnostiquer à un niveau proches
des experts humains et considérablement meilleur que
celui des jeunes médecins.
Systèmes experts.
• Définition
• Un système expert est un ensemble de
programmes avec lequel on peut représenter de la
connaissance d’un expert humain dans un domaine
donné
et qui est capable d’opérer un certain nombre de
raisonnements dans le but de participer à la résolution de
problèmes lié à ce domaine.
• On parle aussi de Systèmes à Bases de Connaissance
(ou KBS, knowledge-based system).
Architecture d ’un système expert
Base de connaissance (BC)
mémoire à long terme
Moteur
d’inférence
Base de faits (BF) (MI)
mémoire de travail
• L'interface qui permet au monde extérieur d'avoir
accès aux services du système.
• Principaux types de données rencontrées.
• Symboliques
• Numériques
• La Base de Règles
• Elle rassemble les connaissances de l’expert.
• Elle n’évolue pas d’une situation à l’autre
• Une règle est de la forme
SI prémisse ALORS conclusion
Principes généraux de
fonctionnement
• 1. Sélection des règles applicables
• 2. Résolution des conflits (choix des règles à
appliquer)
• 3. Action : déclenchement de la (ou les) règle
choisie.
Les principaux modes.
• Chaînage avant
• Calcul des conclusions à partir des faits et des
règles.
• Chaînage arrière
• On part d’une conclusion et on cherche à
vérifier si elle est vérifiée («guidé par les buts»).
• Chaînage mixte
• Combinaison des deux précédents.
• A titre d'exemple considérons la base de connaissances constituée
de trois règles:
REGLE r1
SI animal vole ET
animal pond des œufs
ALORS animal est un oiseau
REGLE r2
SI animal a des plumes
ALORS animal est un oiseau
REGLE r3
SI animal est un oiseau ET
animal a un long cou ET
animal a de longues pattes
ALORS animal est une autruche
•
Par ailleurs on suppose que la base de faits est
constituée de:
F1 : animal a des plumes
F2 : animal a un long cou
F3 : animal a de longues pattes
En chaînage avant, le moteur sélectionnera et
déclenchera les règles dont les prémisses sont
satisfaites:
En chaînage arrière, le système part sur un but à démontrer: par exemple F5: "animal
est une autruche". Il sélectionnera alors, de proche en proche les règles qui permettent
de prouver ce fait.
On notera par "ok" toutes les recherches qui aboutissent et par échec les autres.
• Approches adoptée en recherche en Intelligence
Artificielle
• procéder d'abord à l'analyse logique des tâches relevant
de la cognition humaine et tenter de les reconstituer par
programme. C'est cette approche qui a été privilégiée
par l'Intelligence Artificielle symbolique.
• La cognition est le terme scientifique pour désigner les
mécanismes de la pensée.
• le mot cognition est utilisé pour désigner les processus
de traitement de l’information tels que le raisonnement,
la mémoire et la prise de décision.
• Qu’est ce que l’intelligence ?
• => Percevoir/Raisonner/Agir/Communiquer
• Evaluation: capable de passer le test de Turing,
• Système passant le test de Turing(1950)
• Apprendre (s’adapter)
• Représenter (mémoriser)
• Résoudre des Pb. (raisonner)
• Comprendre (communiquer)
• Les domaines privilégiés de l'IA : là où il n’y a pas
d’algorithme à la portée des machines.
• • Comme les problèmes qui ont une combinatoire trop
importante (les jeux,…)
• concrètement
• 1)Rechercher (analyser, résoudre des problèmes, trouver des
méthodes de résolution)
• 2)Représenter des connaissances (logique, règles, mémoire,
langue naturelle, etc.)
• 3)Mettre en application les idées 1) et 2) (Systèmes
• Experts, etc.)
Introduction au réseaux
de neurones
• 1 Définition
• dans la littérature, on utilise des termes pour désigner
le domaine des réseaux de neurones artificiels (RNA),
comme connexionnisme ou neuromimétique.
• Les réseaux de neurones artificiels ne désignent que les
modèles manipulés ;
• Connexionnisme et neuromimétique sont tous deux des
domaines de recherche à part entière, qui manipulent
chacun des modèles de RNA, mais avec des objectifs
différents.
• Les chercheurs connexionnistes ont pour but
d’améliorer les capacités de l’informatique en utilisant
des modèles aux composants fortement connectés.
• les neuromiméticiens manipulent des modèles de RNA
dans le but de vérifier des théories biologiques du
fonctionnement du système nerveux central.
Historique
• - 1890 : W. James, célèbre psychologue américain introduit le
concept de mémoire associative
• - 1943 : J. Mc Culloch et W. Pitts donnent une modélisation
du neurone biologique (un neurone au comportement
binaire). Ce sont les premiers à montrer que des réseaux de
neurones formels (RNF) simples peuvent réaliser des
fonctions logiques,
• - 1949 : D. Hebb, physiologiste américain explique le
conditionnement chez l’animal par les propriétés des
neurones eux-mêmes. Ainsi, nourrir tous les jours à la même
heure un chien, entraîne chez cet animal la sécrétion de
salive à cette heure précise même en l’absence de
nourriture. La loi de modification des propriétés des
connexions entre neurones qu’il propose explique en partie
• Les premiers succès
• 1958: F. Rosenblatt développe le modèle du
Perceptron. C'est un réseau de neurones inspiré du
système visuel. C'est le premier système artificiel
capable d'apprendre par expérience.
• 1960 : B. Widrow, un automaticien, développe le
modèle Adaline (Adaptative Linear Element). Dans
sa structure, le modèle ressemble au Perceptron,
cependant la loi d’apprentissage est différente.
Celle-ci est à l’origine de l’algorithme de
rétropropagation de gradient très utilisé aujourd’hui
avec les Perceptrons multicouches. Les réseaux de
type Adaline restent utilisés de nos jours pour
certaines applications particulières.
• 1969 : M. Minsky et S. Papert publient les limitations
théoriques du perceptron. Limitations concernant
l’impossibilité de traiter par ce modèle des problèmes
non linéaires. Ils étendent implicitement ces
limitations à tous modèles de réseaux de neurones
artificiels.
• La recherche dans ce domaine, va fortement diminuer,
les chercheurs se tournent principalement vers l’IA et
les systèmes à bases de règles.
• L’ombre
• - 1969-1982 : Toutes les recherches ne sont pas
interrompues: le traitement adaptatif du signal, la
reconnaissance de formes, la modélisation en
neurobiologie, etc. De grands noms travaillent durant
cette période tels : S. Grossberg, T. Kohonen, ...
• Le renouveau
• - 1982 : J. J. Hopfield est un physicien reconnu à
qui l’on doit le renouveau d’intérêt pour les RNA.
il présente une théorie du fonctionnement et
des possibilités des réseaux de neurones.
J. J. Hopfield fixe préalablement le comportement
à atteindre pour son modèle et construit à partir de
là, la structure et la loi d’apprentissage
correspondant au résultat escompté. Ce modèle est
aujourd’hui encore très utilisé pour des problèmes
d'optimisation.
Son modèle est inspiré du modèle d’Ising (modèle
des verres de spins).
• La levée des limitations
• - 1985 : La rétropropagation de gradient
apparaît. C’est un algorithme d‘apprentissage
adapté aux réseaux de neurones multicouches
(aussi appelés Perceptrons multicouches). De
nos jours, les réseaux multicouches et la
rétropropagation de gradient reste le modèle
le plus étudié et le plus productif au niveau
des applications.