Apprentissage automatique
L'apprentissage automatique[1],[2] (en anglais : machine learning, litt. « apprentissage machine[1],[2] »), apprentissage artificiel[1] ou apprentissage statistique est un champ d'étude de l'intelligence artificielle qui se fonde sur des approches mathématiques et statistiques pour donner aux ordinateurs la capacité d'« apprendre » à partir de données, c'est-à-dire d'améliorer leurs performances à résoudre des tâches sans être explicitement programmés pour chacune. Plus largement, il concerne la conception, l'analyse, l'optimisation, le développement et l'implémentation de telles méthodes.
« Machine Learning » redirige ici. Pour la revue scientifique, voir Machine Learning (revue).
L'apprentissage automatique comporte généralement deux phases. La première consiste à estimer un modèle à partir de données, appelées observations, qui sont disponibles et en nombre fini, lors de la phase de conception du système. L'estimation du modèle consiste à résoudre une tâche pratique, telle que traduire un discours, estimer une densité de probabilité, reconnaître la présence d'un chat dans une photographie ou participer à la conduite d'un véhicule autonome. Cette phase dite « d'apprentissage » ou « d'entraînement » est généralement réalisée préalablement à l'utilisation pratique du modèle. La seconde phase correspond à la mise en production : le modèle étant déterminé, de nouvelles données peuvent alors être soumises afin d'obtenir le résultat correspondant à la tâche souhaitée. En pratique, certains systèmes peuvent poursuivre leur apprentissage une fois en production, pour peu qu'ils aient un moyen d'obtenir un retour sur la qualité des résultats produits.
Selon les informations disponibles durant la phase d'apprentissage, l'apprentissage est qualifié de différentes manières. Si les données sont étiquetées (c'est-à-dire que la réponse à la tâche est connue pour ces données), il s'agit d'un apprentissage supervisé. On parle de classification ou de classement[3] si les étiquettes sont discrètes, ou de régression si elles sont continues. Si le modèle est appris de manière incrémentale en fonction d'une récompense reçue par le programme pour chacune des actions entreprises, on parle d'apprentissage par renforcement. Dans le cas le plus général, sans étiquette, on cherche à déterminer la structure sous-jacente des données (qui peuvent être une densité de probabilité) et il s'agit alors d'apprentissage non supervisé. L'apprentissage automatique peut être appliqué à différents types de données, tels des graphes, des arbres, des courbes, ou plus simplement des vecteurs de caractéristiques, qui peuvent être des variables qualitatives ou quantitatives continues ou discrètes.
Historique
Depuis l'antiquité, le sujet des machines pensantes préoccupe les esprits. Ce concept est la base de pensées pour ce qui deviendra ensuite l'intelligence artificielle, ainsi qu'une de ses sous-branches : l'apprentissage automatique.
La concrétisation de cette idée est principalement due à Alan Turing (mathématicien et cryptologue britannique) et à son concept de la « machine universelle » en 1936[4], qui est à la base des ordinateurs d'aujourd'hui. Il continuera à poser les bases de l'apprentissage automatique, avec son article sur « L'ordinateur et l'intelligence » en 1950[5], dans lequel il développe, entre autres, le test de Turing.
En 1943, le neurophysiologiste Warren McCulloch et le mathématicien Walter Pitts publient un article décrivant le fonctionnement de neurones en les représentant à l'aide de circuits électriques. Cette représentation sera la base théorique des réseaux neuronaux[6].
Arthur Samuel, informaticien américain pionnier dans le secteur de l'intelligence artificielle, est le premier à faire usage de l'expression machine learning (en français, « apprentissage automatique ») en 1959 à la suite de la création de son programme pour IBM en 1952. Le programme jouait au Jeu de Dames et s'améliorait en jouant. À terme, il parvint à battre le 4e meilleur joueur des États-Unis[7],[8].
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. Le projet Deep Blue en inspirera nombre d'autres dans le cadre de l'intelligence artificielle, particulièrement un autre grand défi : IBM Watson, l'ordinateur dont le but est de gagner au jeu Jeopardy![9]. Ce but est atteint en 2011, quand Watson gagne à Jeopardy! en répondant aux questions par traitement de langage naturel[10].
Durant les années suivantes, les applications de l'apprentissage automatique médiatisées se succèdent bien plus rapidement qu'auparavant.
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[11],[12].
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 est non pas un ordinateur, mais un garçon ukrainien de 13 ans[13].
En 2015, une nouvelle étape importante est atteinte lorsque l'ordinateur « AlphaGo » de Google gagne contre un des meilleurs joueurs au jeu de Go, jeu de plateau considéré comme le plus dur du monde[14].
En 2016, un système d'intelligence artificielle à base d'apprentissage automatique nommé LipNet parvient à lire sur les lèvres avec un grand taux de succès[15],[16].
Principes
L'apprentissage automatique (AA) permet à un système piloté ou assisté par ordinateur comme un programme, une IA ou un robot, d'adapter ses réponses ou comportements aux situations rencontrées, en se fondant sur l'analyse de données empiriques passées issues de bases de données, de capteurs, ou du web.
L'AA permet de surmonter la difficulté qui réside dans le fait que l'ensemble de tous les comportements possibles compte tenu de toutes les entrées possibles devient rapidement trop complexe à décrire et programmer de manière classique (on parle d'explosion combinatoire). On confie donc à des programmes d'AA le soin d'ajuster un modèle pour simplifier cette complexité et de l'utiliser de manière opérationnelle. Idéalement, l'apprentissage visera à être non supervisé, c'est-à-dire que les réponses aux données d’entraînement ne sont pas fournies au modèle[17].
Ces programmes, selon leur degré de perfectionnement, intègrent éventuellement des capacités de traitement probabiliste des données, d'analyse de données issues de capteurs, de reconnaissance (reconnaissance vocale, de forme, d'écriture…), de fouille de données, d'informatique théorique…
Applications
L'apprentissage automatique est utilisé dans un large spectre d'applications pour doter des ordinateurs ou des machines de capacité d'analyser des données d'entrée comme : perception de leur environnement (vision, Reconnaissance de formes tels des visages, schémas, segmentation d'image, langages naturels, caractères dactylographiés ou manuscrits ; moteurs de recherche, analyse et indexation d'images et de vidéo, en particulier pour la recherche d'image par le contenu ; aide aux diagnostics, médical notamment, bio-informatique, chémoinformatique ; interfaces cerveau-machine ; détection de fraudes à la carte de crédit, cybersécurité, analyse financière, dont analyse du marché boursier ; classification des séquences d'ADN ; jeu ; génie logiciel ; adaptation de sites Web ; robotique (locomotion de robots, etc.) ; analyse prédictive dans de nombreux domaines (financière, médicale, juridique, judiciaire).
Exemples :
- un système d'apprentissage automatique peut permettre à un robot ayant la capacité de bouger ses membres, mais ne sachant initialement rien de la coordination des mouvements permettant la marche, d'apprendre à marcher. Le robot commencera par effectuer des mouvements aléatoires, puis, en sélectionnant et privilégiant les mouvements lui permettant d'avancer, mettra peu à peu en place une marche de plus en plus efficace[réf. nécessaire] ;
- la reconnaissance de caractères manuscrits est une tâche complexe car deux caractères similaires ne sont jamais exactement identiques. Il existe des systèmes d'apprentissage automatique qui apprennent à reconnaître des caractères en observant des « exemples », c'est-à-dire des caractères connus. Un des premiers système de ce type est celui de reconnaissance des codes postaux US manuscrits issu des travaux de recherche de Yann Le Cun, un des pionniers du domaine [18],[19], et ceux utilisés pour la reconnaissance d'écriture ou OCR.
Types d'apprentissage
Les algorithmes d'apprentissage peuvent se catégoriser selon le mode d'apprentissage qu'ils emploient.
- Apprentissage supervisé
- Si les classes sont prédéterminées et les exemples connus, le système apprend à classer selon un modèle de classification ou de classement ; on parle alors d'apprentissage supervisé (ou d'analyse discriminante). Un expert (ou oracle) doit préalablement étiqueter des exemples. Le processus se passe en deux phases. Lors de la première phase (hors ligne, dite d'apprentissage), il s'agit de déterminer un modèle à partir des données étiquetées. La seconde phase (en ligne, dite de test) consiste à prédire l'étiquette d'une nouvelle donnée, connaissant le modèle préalablement appris. Parfois il est préférable d'associer une donnée non pas à une classe unique, mais une probabilité d'appartenance à chacune des classes prédéterminées (on parle alors d'apprentissage supervisé probabiliste). ex. : L'analyse discriminante linéaire ou les SVM en sont des exemples typiques. Autre exemple : en fonction de points communs détectés avec les symptômes d'autres patients connus (les exemples), le système peut catégoriser de nouveaux patients au vu de leurs analyses médicales en risque estimé (probabilité) de développer telle ou telle maladie.
- Apprentissage non supervisé
- Quand le système ou l'opérateur ne dispose que d'exemples, mais non d'étiquette, et que le nombre de classes et leur nature n'ont pas été prédéterminées, on parle d'apprentissage non supervisé ou clustering en anglais. Aucun expert n'est requis. L'algorithme doit découvrir par lui-même la structure plus ou moins cachée des données. Le partitionnement de données, data clustering en anglais, est un algorithme d'apprentissage non supervisé.
- Le système doit ici — dans l'espace de description (l'ensemble des données) — cibler les données selon leurs attributs disponibles, pour les classer en groupes homogènes d'exemples. La similarité est généralement calculée selon une fonction de distance entre paires d'exemples. C'est ensuite à l'opérateur d'associer ou déduire du sens pour chaque groupe et pour les motifs (patterns en anglais) d'apparition de groupes, ou de groupes de groupes, dans leur « espace ». Divers outils mathématiques et logiciels peuvent l'aider. On parle aussi d'analyse des données en régression (ajustement d'un modèle par une procédure de type moindres carrés ou autre optimisation d'une fonction de coût). Si l'approche est probabiliste (c'est-à-dire que chaque exemple, au lieu d'être classé dans une seule classe, est caractérisé par un jeu de probabilités d'appartenance à chacune des classes), on parle alors de « soft clustering » (par opposition au « hard clustering »).
- Cette méthode est souvent source de sérendipité. ex. : Pour un épidémiologiste qui voudrait dans un ensemble assez large de victimes de cancer du foie tenter de faire émerger des hypothèses explicatives, l'ordinateur pourrait différencier différents groupes, que l'épidémiologiste chercherait ensuite à associer à divers facteurs explicatifs, origines géographique, génétique, habitudes ou pratiques de consommation, expositions à divers agents potentiellement ou effectivement toxiques (métaux lourds, toxines telle que l'aflatoxine, etc.).
- Apprentissage semi-supervisé
- Effectué de manière probabiliste ou non, il vise à faire apparaître la distribution sous-jacente des exemples dans leur espace de description. Il est mis en œuvre quand des données (ou « étiquettes ») manquent… Le modèle doit utiliser des exemples non étiquetés pouvant néanmoins renseigner. ex. : En médecine, il peut constituer une aide au diagnostic ou au choix des moyens les moins onéreux de tests de diagnostic.
- Apprentissage partiellement supervisé
- Probabiliste ou non, quand l'étiquetage des données est partiel[20]. C'est le cas quand un modèle énonce qu'une donnée n'appartient pas à une classe A, mais peut-être à une classe B ou C (A, B et C étant trois maladies par exemple évoquées dans le cadre d'un diagnostic différentiel).:
- Apprentissage par renforcement[21]
- l'algorithme apprend un comportement étant donné une observation. L'action de l'algorithme sur l'environnement produit une valeur de retour qui guide l'algorithme d'apprentissage. ex. : L'algorithme de Q-Learning[22] est un exemple classique.
- Apprentissage par transfert[23]
- L’apprentissage par transfert peut être vu comme la capacité d’un système à reconnaître et appliquer des connaissances et des compétences, apprises à partir de tâches antérieures, sur de nouvelles tâches ou domaines partageant des similitudes. La question qui se pose est : comment identifier les similitudes entre la ou les tâche(s) cible(s) et la ou les tâche(s) source(s), puis comment transférer la connaissance de la ou des tâche(s) source(s) vers la ou les tâche(s) cible(s) ?
Algorithmes utilisés
Les algorithmes se classent en quatre familles ou types principaux[24] :
- régression
- classification
- partitionnement de données
- réduction de dimensions.
Plus précisément[24] :
- la régression linéaire ;
- la régression logistique ;
- les machines à vecteur de support ;
- les réseaux de neurones[25], dont les méthodes d'apprentissage profond (deep learning en anglais) pour un apprentissage supervisé ou non-supervisé ;
- la méthode des k plus proches voisins pour un apprentissage supervisé ;
- les arbres de décision[26], méthodes à l'origine des Random Forest, par extension également du boosting (notamment xgboost) ;
- les méthodes statistiques comme le modèle de mixture gaussienne ;
- l'analyse discriminante linéaire ;
- les algorithmes génétiques[27] et la programmation génétique ;
- le boosting ;
- le bagging ;
- l'analyse en composantes principales .
Ces méthodes sont souvent combinées pour obtenir diverses variantes d'apprentissage. Le choix d'un algorithme dépend fortement de la tâche à résoudre (classification, estimation de valeurs…), du volume et de la nature des données. Ces modèles reposent souvent sur des modèles statistiques.
Facteurs de pertinence et d'efficacité
La qualité de l'apprentissage et de l'analyse dépendent du besoin en amont et a priori de la compétence de l'opérateur pour préparer l'analyse. Elle dépend aussi de la complexité du modèle (spécifique ou généraliste), de son adéquation et de son adaptation au sujet à traiter. In fine, la qualité du travail dépendra aussi du mode (de mise en évidence visuelle) des résultats pour l'utilisateur final (un résultat pertinent pourrait être caché dans un schéma trop complexe, ou mal mis en évidence par une représentation graphique inappropriée).
Avant cela, la qualité du travail dépendra de facteurs initiaux contraignants, liées à la base de données :
- nombre d'exemples (moins il y en a, plus l'analyse est difficile, mais plus il y en a, plus le besoin de mémoire informatique est élevé et plus longue est l'analyse) ;
- nombre et qualité des attributs décrivant ces exemples. La distance entre deux « exemples » numériques (prix, taille, poids, intensité lumineuse, intensité de bruit, etc.) est facile à établir, celle entre deux attributs catégoriels (couleur, beauté, utilité…) est plus délicate ;
- pourcentage de données renseignées et manquantes ;
- bruit : le nombre et la « localisation » des valeurs douteuses (erreurs potentielles, valeurs aberrantes…) ou naturellement non-conformes au pattern de distribution générale des « exemples » sur leur espace de distribution impacteront sur la qualité de l'analyse.
Étapes d'un projet d'apprentissage automatique
L'apprentissage automatique ne se résume pas à un ensemble d'algorithmes, mais suit une succession d'étapes[28],[29].
- Définir le problème à résoudre
- Acquérir des données : l'algorithme se nourrissant des données en entrée, c'est une étape importante. Il en va de la réussite du projet, de récolter des données pertinentes et en quantité et qualité suffisantes, et en évitant tout biais dans leur représentativité.
- Analyser et explorer les données
- Préparer et nettoyer les données : les données recueillies doivent être retouchées avant utilisation. En effet, certains attributs sont inutiles, d’autre doivent être modifiés afin d’être compris par l’algorithme, et certains éléments sont inutilisables car leurs données sont incomplètes. Plusieurs techniques telles que la visualisation de données, la transformation de données (en) ou encore la normalisation sont alors employées.
- Ingénierie ou extraction de caractéristiques: les attributs peuvent être combinés entre eux pour en créer de nouveaux plus pertinents et efficaces pour l'entrainement du modèle.
- Choisir ou construire un modèle d’apprentissage: un large choix d'algorithmes existe, et il faut en choisir un adapté au problème et aux données.
- Entrainer, évaluer et optimiser : l'algorithme d'apprentissage automatique est entraîné et validé sur un premier jeu de données pour optimiser ses hyperparamètres.
- Test: puis il est évalué sur un deuxième ensemble de données de test afin de vérifier qu'il est efficace avec un jeu de donnée indépendant des données d'entrainement, et pour vérifier qu'il ne fasse pas de surapprentissage.
- Déployer : le modèle est alors déployé en production pour faire des prédictions, et potentiellement utiliser les nouvelles données en entrée pour se ré-entraîner et être amélioré.
La plupart de ces étapes se retrouvent dans les méthodes et processus de projet KDD, CRISP-DM et SEMMA[30], qui concernent les projets d'exploration de données.
Application à la voiture autonome
La voiture autonome paraît en 2016 réalisable grâce à l’apprentissage automatique et les énormes quantités de données générées par la flotte automobile, de plus en plus connectée. Contrairement aux algorithmes classiques (qui suivent un ensemble de règles prédéterminées), l’apprentissage automatique apprend ses propres règles[31].
Les principaux innovateurs dans le domaine insistent sur le fait que le progrès provient de l’automatisation des processus. Ceci présente le défaut que le processus d’apprentissage automatique devient privatisé et obscur. Privatisé, car les algorithmes d’AA constituent des gigantesques opportunités économiques, et obscurs car leur compréhension passe derrière leur optimisation. Cette évolution peut potentiellement nuire à la confiance du public envers l’apprentissage automatique, mais surtout au potentiel à long terme de techniques très prometteuses[32].
La voiture autonome présente un cadre test pour confronter l’apprentissage automatique à la société. En effet, ce n’est pas seulement l’algorithme qui se forme à la circulation routière et ses règles, mais aussi l’inverse. Le principe de responsabilité est remis en cause par l’apprentissage automatique, car l’algorithme n’est plus écrit mais apprend et développe une sorte d’intuition numérique. Les créateurs d’algorithmes ne sont plus en mesure de comprendre les « décisions » prises par leurs algorithmes, ceci par construction mathématique même de l’algorithme d’apprentissage automatique[33].
Dans le cas de l’AA et les voitures autonomes, la question de la responsabilité en cas d’accident se pose. La société doit apporter une réponse à cette question, avec différentes approches possibles. Aux États-Unis, il existe la tendance à juger une technologie par la qualité du résultat qu’elle produit, alors qu’en Europe le principe de précaution est appliqué, et on y a plus tendance à juger une nouvelle technologie par rapport aux précédentes, en évaluant les différences par rapport à ce qui est déjà connu. Des processus d’évaluation de risques sont en cours en Europe et aux États-Unis[32].
La question de responsabilité est d’autant plus compliquée que la priorité chez les concepteurs réside en la conception d’un algorithme optimal, et non pas de le comprendre. L’interprétabilité des algorithmes est nécessaire pour en comprendre les décisions, notamment lorsque ces décisions ont un impact profond sur la vie des individus. Cette notion d’interprétabilité, c’est-à-dire de la capacité de comprendre pourquoi et comment un algorithme agit, est aussi sujette à interprétation.
La question de l’accessibilité des données est sujette à controverse : dans le cas des voitures autonomes, certains défendent l’accès public aux données, ce qui permettrait un meilleur apprentissage aux algorithmes et ne concentrerait pas cet « or numérique » dans les mains d’une poignée d’individus, de plus d’autres militent pour la privatisation des données au nom du libre marché, sans négliger le fait que des bonnes données constituent un avantage compétitif et donc économique[32],[34].
La question des choix moraux liés aux décisions laissées aux algorithmes d'AA et aux voitures autonomes en cas de situations dangereuses ou mortelles se pose aussi. Par exemple en cas de défaillance des freins du véhicule, et d'accident inévitable, quelles vies sont à sauver en priorité: celle des passagers ou bien celle des piétons traversant la rue[35] ?
Prospective
Dans les années 2000-2010, l'apprentissage automatique est encore une technologie émergente, mais polyvalente, qui est par nature théoriquement capable d'accélérer le rythme de l'automatisation et de l'autoaprentissage lui-même. Combiné à l'apparition de nouveaux moyens de produire, stocker et faire circuler l'énergie, ainsi qu'à l'informatique ubiquiste, il pourrait bouleverser les technologies et la société (comme l'ont fait la machine à vapeur et l'électricité, puis le pétrole et l'informatique lors des révolutions industrielles précédentes.
L'apprentissage automatique pourrait générer des innovations et des capacités inattendues, mais avec un risque selon certains observateurs de perte de maitrise de la part des humains sur de nombreuses tâches qu'ils ne pourront plus comprendre et qui seront faites en routine par des entités informatiques et robotisées. Ceci laisse envisager des impacts spécifiques complexes et encore impossibles à évaluer sur l'emploi, le travail et plus largement l'économie et les inégalités.
Selon le journal Science fin 2017 : « Les effets sur l'emploi sont plus complexes que la simple question du remplacement et des substitutions soulignées par certains. Bien que les effets économiques du BA soient relativement limités aujourd'hui et que nous ne soyons pas confrontés à une « fin du travail » imminente comme cela est parfois proclamé, les implications pour l'économie et la main-d'œuvre sont profondes »[36].
Il est tentant de s'inspirer des êtres vivants sans les copier naïvement[37] pour concevoir des machines capables d'apprendre. Les notions de percept et de concept comme phénomènes neuronaux physiques ont d'ailleurs été popularisés dans le monde francophone par Jean-Pierre Changeux. L'apprentissage automatique reste avant tout un sous-domaine de l'informatique, mais il est étroitement lié opérationnellement aux sciences cognitives, aux neurosciences, à la biologie et à la psychologie, et pourrait à la croisée de ces domaines, nanotechnologies, biotechnologies, informatique et sciences cognitives, aboutir à des systèmes d'intelligence artificielle ayant une assise plus vaste. Des enseignements publics ont notamment été dispensés au Collège de France, l'un par Stanislas Dehaene[38] orienté sur l'aspect bayésien des neurosciences, et l'autre par Yann LeCun[39] sur les aspects théoriques et pratiques de l'apprentissage profond.
Enjeux et limites
Quantité et qualité des données
L’apprentissage automatique demande de grandes quantités de données pour fonctionner correctement. Il peut s’avérer difficile de contrôler l’intégrité des jeux de données, notamment dans le cas de données générées par les réseaux sociaux[40].
La qualité des « décisions » prises par un algorithme d’AA dépend non seulement de la qualité (donc de leur homogénéité, fiabilité, etc.) des données utilisées pour l’entrainement mais surtout de leur quantité. Donc, pour un jeu de données sociales collecté sans attention particulière à la représentation des minorités, l’AA est statistiquement injuste vis-à-vis de celles-ci. En effet, la capacité à prendre de « bonnes » décisions dépend de la taille des données, or celle-ci sera proportionnellement inférieure pour les minorités.
L’AA ne distingue actuellement pas cause et corrélation de par sa construction mathématique, et est incapable d’aller au-delà du cadre imposé par ses données, il n’a donc pas de capacité d’extrapolation.[réf. nécessaire]
L’utilisation d’algorithmes d’apprentissage automatique demande donc d’avoir conscience du cadre de données que l’on a utilisé pour l’apprentissage lors de leur utilisation. Il est donc prétentieux d’attribuer des vertus trop grandes aux algorithmes d’apprentissage automatique[41].
Biais des algorithmes et des données
Un algorithme peut être biaisé lorsque son résultat dévie par rapport à un résultat neutre, loyal ou équitable. Dans certains cas, les biais algorithmiques peuvent conduire à des situations de discrimination[42].
Les données peuvent aussi être biaisées, si l'échantillon de données utilisées pour l'apprentissage du modèle n'est pas neutre et représentatif de la réalité ou déséquilibré. Ce biais est alors appris et reproduit par le modèle[43],[44].
Explicabilité et explications des décisions
Les algorithmes d'apprentissage automatique posent des problèmes d'explicabilité globale du système. Si certains modèles comme la régression linéaire ou la régression logistique ont un nombre de paramètres limité et peuvent être interprétés, d'autres types de modèle comme les réseaux de neurones artificiels n'ont pas d'interprétation évidente[45].
Notes et références
- « apprentissage automatique », Le Grand Dictionnaire terminologique, Office québécois de la langue française (consulté le ).
- Commission d'enrichissement de la langue française, « Vocabulaire de l’intelligence artificielle (liste de termes, expressions et définitions adoptés) », Journal officiel de la République française no 0285 du [lire en ligne] [PDF].
- « classement » est la traduction correcte du terme anglais classification ; la « classification » française correspond plutôt au clustering en anglais. Voir par exemple la BDL québecoise.
- https://www.cs.virginia.edu/~robins/Turing_Paper_1936.pdf
- https://www.csee.umbc.edu/courses/471/papers/turing.pdf
- (en) « Neural Networks », sur standford.edu (consulté le ).
- (en) « Arthur Lee Samuel », sur history.computer.org (consulté le ).
- (en) « Arthur Samuel: Pioneer in Machine Learning », sur standford.edu (consulté le ).
- (en-US) « IBM100 - Deep Blue », sur www-03.ibm.com, (consulté le ).
- (en-US) John Markoff, « On ‘Jeopardy!’ Watson Win Is All but Trivial », The New York Times, (ISSN 0362-4331, lire en ligne, consulté le ).
- (en) « Google's Artificial Brain Learns to Find Cat Videos », sur wired.com, (consulté le ).
- (en) Jamie Condliffe, « Google's Artificial Brain Loves to Watch Cat Videos », sur gizmodo.com, (consulté le ).
- (en) Doug Aamoth, « Interview with Eugene Goostman, the Fake Kid Who Passed the Turing Test », sur time.com, (consulté le ).
- (en) Christof Koch, « How the Computer Beat the Go Master », sur scientificamerican.com, (consulté le ).
- (en) Jamie Condliffe, « AI Has Beaten Humans at Lip-reading », sur technologyreview.com, (consulté le ).
- (en) « A history of machine learning », sur cloud.withgoogle.com (consulté le ).
- Yann Le Cun sur l'apprentissage prédictif, 2016.
- « Retour d'expérience sur l'étude de la base MNIST pour la reconnaissance de chiffres manuscrits | Connect - Editions Diamond », sur connect.ed-diamond.com (consulté le ).
- Y. LeCun, B. Boser, J. S. Denker et D. Henderson, « Backpropagation Applied to Handwritten Zip Code Recognition », Neural Computation, vol. 1, no 4, , p. 541–551 (ISSN 0899-7667, DOI 10.1162/neco.1989.1.4.541, lire en ligne, consulté le ).
- Ambroise et Govaert, 2000.
- Voir Machine Learning, chap. 13 Reinforcement Learning, p. 367-390.
- Voir Machine Learning, p. 373-380.
- (en) Sinno Jialin Pan et Qiang Yang, « A Survey on Transfer Learning », IEEE Transactions on Knowledge and Data Engineering, vol. 22, no 10, , p. 1345-1359 (ISSN 1041-4347, e-ISSN 1558-2191, DOI 10.1109/TKDE.2009.191, lire en ligne [PDF]).
- « Choosing the right estimator — scikit-learn 0.24.2 documentation », sur scikit-learn.org (consulté le ).
- Voir Machine Learning, chap. 4 Artificial Neural Networks, p. 81-127.
- Voir Machine Learning, chap. 3 Decision Tree Learning, p. 52-80.
- Voir Machine Learning, chap. 9 Genetic Algorithms, p. 249-273.
- « Machine Learning : retour aux sources », sur Nexworld, (consulté le ).
- « Intelligence artificielle vulgarisée - Les étapes à réaliser pour mener à bien un projet de Machine Learning - Editions ENI - Extrait gratuit », sur www.editions-eni.fr (consulté le ).
- (en) « A Comparative Study of Data Mining Process Models (KDD, CRISP-DM and SEMMA) », sur CiteSeerX (consulté le ).
- (en) Hod Lipson et Melba Kurman, Driverless: Intelligent Cars and the Road Ahead, MIT Press, .
- (en) Jack Stilgoe, « Machine learning, social learning and the governance of self-driving cars », Social Studies of Science, (lire en ligne).
- (en) Finn, Ed., What algorithms want : imagination in the age of computing, Cambridge, Massachusetts, The MIT press, 257 p. (ISBN 978-0-262-03592-7 et 0262035928, OCLC 958795990, notice BnF no FRBNF45476175, lire en ligne).
- (en) Andrew J. Hawkins, « Self-driving car makers don't sound super excited to share data with the federal government », The Verge, (lire en ligne, consulté le ).
- « Moral Machine », sur Moral Machine (consulté le ).
- Erik Brynjolfsson & Tom Mitchell (2017 What can machine learning do? Workforce implications, Science, 22 décembre 2017, vol. 358, n°6370, p. 1530-1534, DOI: 10.1126/science.aap8062 résumé
- Computer Science Colloquium - March 28, 2013, Anne Menendez & Guy Paillet].
- http://www.college-de-france.fr/site/stanislas-dehaene/_course.htm.
- https://www.college-de-france.fr/site/yann-lecun/Recherches-sur-l-intelligence-artificielle.htm.
- (en) Danah Boyd et Kate Crawford, « Critical Questions for Big Data : Provocations for a cultural, technological, and scholarly phenomenon », Information, Communication & Society, .
- (en) Gary Marcus, Deep Learning, a Critical Appraisal, New York University (lire en ligne [PDF]).
- Patrice Bertail, David Bounie, Stephan Clémençon et Patrick Waelbroeck, « Algorithmes : biais, discrimination et équité », sur https://www.telecom-paris.fr (consulté le ).
- James J. Heckman, « Sample Selection Bias as a Specification Error », Econometrica, vol. 47, no 1, , p. 153–161 (ISSN 0012-9682, DOI 10.2307/1912352, lire en ligne, consulté le ).
- Byungju Kim, Hyunwoo Kim, Kyungsu Kim et Sungjin Kim, « Learning Not to Learn: Training Deep Neural Networks With Biased Data », IEEE/CVF Conference on Computer Vision and Pattern Recognition (conférence), , p. 9012–9020 (lire en ligne, consulté le ).
- (en) Miller, Tim, « Explanation in Artificial Intelligence: Insights from the Social Sciences », arxiv.org, (lire en ligne).
Bibliographie
- (en) Trevor Hastie, Robert Tibshirani et Jerome Friedman, The Elements of Statistical Learning : Data Mining, Inference, and Prediction, , 2e éd.
- (en) Bishop, C. M. (1995). Neural Networks for Pattern Recognition, Oxford University Press. (ISBN 0-19853-864-2)
- (en) Richard O. Duda, Peter E. Hart, David G. Stork, Pattern Classification, Wiley-interscience, (ISBN 0-471-05669-3) [détail des éditions]
- Antoine Cornuéjols, Laurent Miclet, Yves Kodratoff, Apprentissage Artificiel : Concepts et algorithmes, Eyrolles, (ISBN 2-212-11020-0) [détail des éditions]
- (en) David MacKay, Information Theory, Inference, and Learning Algorithms, Cambridge University Press, (ISBN 0-521-64298-1) [détail des éditions]
- (en) Tom M. Mitchell, Machine Learning, [détail des éditions]
- (en) Christopher M. Bishop, Pattern Recognition And Machine Learning, Springer, (ISBN 0-387-31073-8) [détail des éditions]
- (en) Huang T.-M., Kecman V., Kopriva I. (2006), Kernel Based Algorithms for Mining Huge Data Sets, Supervised, Semi-supervised, and Unsupervised Learning, Springer-Verlag, Berlin, Heidelberg, 260 p. 96 illus., Hardcover, (ISBN 3-54031-681-7) (learning-from-data.com)
- (en) KECMAN Vojislav (2001), LEARNING AND SOFT COMPUTING, Support Vector Machines, Neural Networks and Fuzzy Logic Models, The MIT Press, Cambridge, MA, 608 pp., 268 illus., (ISBN 0-26211-255-8) (support-vector.ws)
- (en) Sholom Weiss and Casimir Kulikowski (1991). Computer Systems That Learn, Morgan Kaufmann. (ISBN 1-55860-065-5)
- (en) Krzysztof Wołk, Machine learning in translation corpora processing, Boca Raton, FL, Taylor & Francis, , 264 p. (ISBN 978-0-367-18673-9)
Voir aussi
Articles connexes
- Algorithme
- Algorithme espérance-maximisation
- Analyse en composantes principales
- Apprentissage profond
- Apprentissage supervisé
- Carte auto-adaptative
- Extraction de connaissances
- Intelligence artificielle
- Méthode des nuées dynamiques
- Partitionnement de données
- Régression logistique
- Regroupement hiérarchique
- Réseau de neurones
- Science des données
- Théorème de Cox-Jaynes
- Théorie de l'apprentissage statistique
- Apprentissage fédéré
- Réduction de la dimensionnalité
- Biais algorithmique
- John Giannandrea
Liens externes
- Machine learning : décryptage d'une technologie qui monte, Alain Clapaud, Le Journal du Net,
- Le « machine learning » – quand les données remplacent les algorithmes, Pirmin Lemberger, Le Journal du Net, .
- Portail de l’informatique
- Portail de l'informatique théorique
- Portail des probabilités et de la statistique