Highlight

Những điều thú vị khi dùng Trí tuệ nhân tạo của Viettel

Những người dùng Internet tại Việt Nam thường lấy “chị Google” ra để… giải trí. Khi “chị” đọc văn bản hay chỉ đường cho người tham gia gi...

Friday, March 4, 2016

Marvin Minsky, pionnier de l’intelligence artificielle, est mort


Le test de Turing, qui consiste à voir si une machine peut se faire passer de façon crédible pour un humain ? « Une blague ! » Dans un entretien vidéo mis en ligne en 2013, Marvin Minsky, lui-même prix Turing (1969), qualifiait de plaisanterie ce qui passe souvent pour l’épreuve définitive qui permettrait de qualifier d’intelligent un artefact créé par l’homme. Telle n’était pas l’intention d’Alan Turing, poursuivait le chercheur américain, dans ce blog consacré à la « singularité », ce point où les machines prendront définitivement l’ascendant sur Homo sapiens. L’intelligence, artificielle ou non, ne se laisserait pas enfermer dans un simple test, suggérait Minsky, après avoir passé l’essentiel de sa carrière à tenter d’en saisir l’essence pour la transmettre aux automates – et à constater qu’elle se dérobait en partie à ses efforts.

Marvin Minsky, né le 9 août 1927 à New York, est mort d’une hémorragie cérébrale, dimanche 24 janvier à Boston (Massachusetts). « C’était le dernier des pères de l’intelligence artificielle, un maître », estime Raja Chatila (Institut des systèmes intelligents et de robotique). Mais son éclectisme scientifique l’avait aussi conduit à inventer le microscope confocal et à proposer, avec d’autres, un concept de fontaine spatiale qui offrirait un accès permanent à l’espace.
Au sortir de la seconde guerre mondiale, où il sert dans la Navy, il entreprend des études de mathématiques à l’université Harvard puis à Princeton, où il soutient sa thèse. Ces années d’apprentissage, racontait-il, le mirent en contact avec de nombreux chercheurs ayant fui l’Europe pendant la montée du nazisme et la guerre, qu’il pouvait croiser sur le campus – tels Albert Einstein ou Kurt Gödel.
« Concevoir une discipline nouvelle »
Outre ses lectures d’enfance de Jules Verne, de H.G. Wells ou plus tard d’Asimov, qui devaient influencer son choix d’une carrière scientifique – il était aussi excellent pianiste – Minsky citait parmi les ouvrages l’ayant marqué Mathematical Biophysics, de Nicolas Rashevsky (1938). Ce texte devait le mettre sur la voie de la modélisation mathématique de phénomènes biologiques, notamment la façon dont les neurones peuvent apprendre. En 1951, il propose ainsi le stochastic neural analog reinforcement calculator (SNARC), le premier simulateur de réseau neuronal. Pour mieux saisir le fonctionnement des vrais neurones, il entreprend de mettre au point un nouveau type de microscope, dit confocal (1953), dont des versions améliorées sont toujours utilisées dans les laboratoires de biomédecine.
En 1956, il fait partie des organisateurs d’une école d’été au Dartmouth College (Hanover, New Hampshire), avec Claude Shannon (le père de la théorie de l’information) Nathaniel Rochester (directeur scientifique d’IBM) et John McCarthy, jeune chercheur crédité de l’invention du terme « intelligence artificielle ». « Leur idée était de concevoir une discipline nouvelle, et Minsky a eu un apport majeur », souligne Jean-Gabriel Ganascia du laboratoire d’informatique de Paris-6.
En 1959, il fonde avec McCarthy le laboratoire d’intelligence artificielle du Massachusetts Institute of Technology (MIT). Avec Seymour Papert, un ami d’enfance, il développe des outils d’analyse des performances des réseaux neuronaux artificiels. Dans leur livre commun, Perceptrons (1969), « il montre les limites de l’apprentissage machine, ce qui va mettre un coup d’arrêt temporaire aux recherches dans ce domaine », note Jean-Gabriel Ganascia. Sa responsabilité dans ce « premier hiver » de l’intelligence artificielle fera débat. « Il avait objectivement raison, et ses critiques ont permis de produire quelque chose de plus solide », estime Raja Chatila. Minsky se lance ensuite dans l’étude de la mémoire sémantique.

Grand amateur de science-fiction
Plusieurs de ses livres marqueront des générations de chercheurs. Il était particulièrement satisfait de The Society of Mind (1985), décrivant l’intelligence comme le résultat de la coopération de divers agents, et qui pouvait être lu sans avoir un bagage scientifique important. Il craignait en revanche d’avoir perdu ses lecteurs avec The Emotion Machine (2006), plus ardu.
Marvin Minsky, en 2012.
Il regrettait le tournant libéral pris dans les années 1980 par les Etats-Unis, qui aurait freiné la recherche fondamentale en tarissant par exemple les financements sur l’intelligence artificielle par l’Office of Naval Research, fidèle soutien de la discipline depuis les années 1940.
Il se montrait critique envers les récents mégaprogrammes de modélisation du cerveau, comme le Human Brain Project – dont il estimait « à 98 % » les chances qu’il ne permette pas de comprendrecomment l’encéphale fonctionne –, redoutant qu’ils ne pénalisent les recherches dans ce domaine.
Grand amateur du magazine de science-fiction Astounding Stories, il racontait qu’Asimov avait préféré ne pas visiter son laboratoire où il travaillait à la mise au point de robots, pour ne pas tarir son imagination à la vue des piètres performances de ses machines. Il aurait conseillé Stanley Kubrick lors de la préparation de 2001 : l’odyssée de l’espace. Ces dernières années, il s’était rapproché des thématiques de la singularité, et avait soutenu une entreprise de cryogénisation. Au regret de certains observateurs, qui y voyaient une manifestation de son goût immodéré pour la science-fiction.



L’intelligence artificielle, mythes et réalités

Lintelligence artificielle fait couler beaucoup d'encre et suscite des avis partagés, entre craintes et fascination. Il est temps de revenir sur son histoire...

cerveau© Nicolas Rougier

Les origines

Lintelligence artificielle, ou IA, est officiellement née en 1956 lors d'une conférence à Dartmouth (USA). Même si les recherches ont de fait commencé dès laprès-guerre (par exemple le « Test de Turing » en 1950), cette conférence est historique en ce quelle a rassemblé en un même lieu presque toutes les figures emblématiques de lIA, notamment John McCarthy, mathématicien, Herbert Simon, théoricien des organisations, Allen Newell, mathématicien, Claude Shannon, père de la théorie de linformation et Marvin Minsky, mathématicien. Ces pionniers rêvaient alors de construire des machines pouvant égaler voire surpasser lintelligence humaine, sur la base des nouveaux moyens de linformatique naissante. Cétait un projet dune ambition folle, puisquà cette époque tout restait à faire. Or, malgré les immenses difficultés qui se trouvaient devant eux, ces chercheurs et beaucoup dautres vont rapidement obtenir des résultats qui feront date dans l'histoire de l'informatique.
Ainsi, dès 1955, Newell et Simon conçoivent un programme (Logic theorist) qui permet de démontrer automatiquement 38 des 52 théorèmes du traité Principia Mathematica d'Alfred North Whitehead et Bertrand Russell (1913). Cest un résultat majeur et extrêmement impressionnant pour lépoque, puisque pour la première fois, une machine est capable de raisonnement. On considère légitimement ce programme comme la toute première intelligence artificielle de lhistoire. Quelques années plus tard, Newell et Simon vont généraliser cette approche et concevoir le GPS — General Problem Solver — qui permet de résoudre nimporte quel type de problème, pour peu que lon puisse le spécifier formellement à la machine. À cette même époque, dautres chercheurs vont défricher les domaines de la traduction automatique, de la robotique, de la théorie des jeux, de la vision, etc. Jusquau milieu des années 1970, lintelligence artificielle est extrêmement prolifique et engendre un nombre considérable de résultats. Mais elle va bientôt être victime de ses promesses originelles qui n'ont pas été tenues. En effet, si des avancées extraordinaires ont été réalisées, les chercheurs sont encore très loin d'avoir résolu le problème général de l'intelligence. Ils se rendent compte qu'ils ont été un peu trop optimistes, à l’exemple de  Marvin Minsky qui affirmait en 1970 que « Dans trois à huit ans nous aurons une machine avec lintelligence générale d'un être humain ordinaire ».  On parle de ce coup d'arrêt comme du premier hiver de lIA. Mais avec larrivée des systèmes experts et la résolution du problème de l'apprentissage dans les perceptrons multi-couches, lIA connaît un second souffle jusquà la fin des années 1990 où, de nouveau, tout sarrête ou presque pour à peu près les mêmes raisons.

Deep Blue vs. Kasparov

Il fallut attendre 1997, pour enfin lire ces quelques lignes dans la presse :
Kasparov mis en échec par Deep Blue. [...] le super-ordinateur d'IBM a vaincu le champion du monde [...] en gagnant dimanche soir la sixième et dernière partie de leur choc. [...] Le grand maître électronique s'impose 3-1/2 à 2-1/2 face au meilleur des humains et devient surtout le premier ordinateur à l'emporter sur un champion du monde dans une rencontre classique.
Avec presque trente ans de retard, la prophétie de Newell et Simon sest réalisée (« dici dix ans un ordinateur sera le champion du monde des échecs », 1958). Les objectifs de l'intelligence artificielle auraient-ils été finalement atteints ? Serions-nous capables de concevoir des machines intelligentes et omnipotentes ? La réponse est non. Sil est effectivement possible aujourd'hui de battre n'importe quel humain aux échecs, il reste impossible, par exemple, de faire jouer un robot au football contre un quelconque adversaire humain. Ce jeu ne peut pourtant prétendre rivaliser en finesse et en intelligence avec le jeu des échecs. Mais comment peut-on battre le champion du monde des échecs et se trouver en même temps incapable de jouer au football ?
Cette situation paradoxale s'explique par la diversité d’interprétation de la notion d'intelligence. En effet, l'intelligence que lon veut prêter à Deep Blue est ici fondée sur le calcul, l'analyse et le raisonnement. Depuis le discours de la méthode de Descartes, le courant de pensée des rationalistes, mené par Descartes, Spinoza et Leibniz, a voulu croire à cette intelligence, une intelligence fondée sur l'esprit et la raison, équivalente à lintelligence humaine. À lopposé, le courant de pensée des empiristes, parmi lesquels Bacon, Locke, Berkeley et Hume, prôna la prise en compte de l'expérience sensible du monde et rejeta l'idée de la connaissance réduite à l'esprit et à la raison.
Si la frontière entre ces deux courants de pensée nest plus aussi franche aujourdhui, lIA n'a pourtant pas su éviter cette séparation. Ainsi,  deux courants de pensée vont coexister plus ou moins pacifiquement dès la naissance de lIA. Un premier courant, symbolique, considère la machine comme un système de manipulation de symboles qui peut être utilisé pour instancier des représentations formelles du monde. Il repose sur la logique, se faisant ainsi l'héritier des rationalistes. Sa philosophie peut se résumer à la volonté de construire un esprit (« making a mind »). Mené par Allen Newell et Herbert Simon, ce courant symbolique stipule que l'intelligence repose sur la notion de symbole. Le deuxième courant, connexionniste, considère en revanche la machine comme un support de la modélisation du cerveau, offrant les capacités nécessaires pour simuler les interactions entre les neurones. Il repose sur le domaine des statistiques et sa philosophie peut se résumer à la volonté de modéliser le cerveau (« modelling the brain »). Ce courant connexionniste, mené entre autres par Frank Rosenblatt, propose une vision numérique du traitement de l'information et s'oppose en cela à l'hypothèse symboliste.
La victoire de Deep Blue sur Kasparov représente le paroxysme de l'approche symbolique. En effet, le jeu d'échecs est un très beau problème de nature symbolique, où il faut en substance déplacer des pièces sur des cases pour atteindre un but précis (échec et mat). La plus grande difficulté est l'explosion combinatoire, lorsque le programme souhaite prédire des séquences de coups. Cependant, grâce à des algorithmes très ingénieux, à la force brute, à la rapidité de calcul et une bibliothèque d'ouvertures bien fournie, Deep Blue a pu prédire plus de coups à l'avance que ce qu'il est humainement possible de faire. Deep Blue est-il intelligent au sens commun du terme ? A priori non, c'est simplement un logiciel qui joue aux échecs et ne fait que cela.

Au-delà de léchec

Certains n'ont pas été réellement surpris par ce résultat. Ainsi Rodney Brooks avait écrit dès 1990 un article au titre un peu curieux, « Les éléphants ne jouent pas aux échecs ». Ce qu'il voulait expliquer alors, c'était que les éléphants ont une certaine intelligence — ils doivent se nourrir, trouver des points d'eau, se reproduire, fuir les prédateurs, etc. — mais n'ont a priori pas besoin de manipuler des symboles abstraits pour le faire. C'est de fait une critique assez sévère du courant symbolique de l'IA, que l'on désigne aussi par le terme GOFAI (Good Old Fashion Artificial Intelligence, la bonne vieille intelligence artificielle). Or, nous savons aujourd'hui que ce courant de l'IA ne pourra pas résoudre le problème de l'intelligence générale à cause du problème de l'ancrage du symbole notamment. En effet, comment mettre en relation les symboles avec les objets qu’ils désignent ? Comment faire le lien entre un verre, le mot, et un verre, l’objet physique que je vois posé sur la table ? Autant cela est évident pour nous humains, autant cela reste un défi pour une machine qui n'a jamais soif et qui n'a pas de corps pour manipuler l'objet. C'est pourquoi l'idée de la cognition incarnée a émergé dès les années 1990, en mettant en avant le rôle du corps dans la cognition et son intelligence propre.
Aujourd'hui, en 2015, l'Intelligence Artificielle connaît un second souffle, notamment avec l'avénement du big data  et une puissance de calcul inégalée jusqu'alors. Ainsi, la redécouverte récente de l’apprentissage profond ou deep learning, qui date des années 1980, a permis de nouvelles avancées en traitement de données et reconnaissance d'images. Cet algorithme d'apprentissage est un réseau de neurones artificiel qui permet d'apprendre à partir d'exemples. De fait, la différence fondamentale entre les années 1980 et les années 2010 se situe au niveau de la puissance de calcul mise en jeu et de la masse de données qui a atteint des proportions gargantuesques. Imaginez un peu que plus d'un milliard de personnes postent leur photo sur Facebook alors qu'il y a trente ans, les chercheurs se démenaient pour constituer des échantillons de quelques dizaines de portraits. De nos jours, ils peuvent donc avoir accès à des centaines de millions de visages. C'est ainsi que Facebook possède un algorithme de reconnaissance faciale (DeepFace) qui égale statistiquement les performances humaines. Est-il besoin de préciser qu'on ne parle pas ici d'intelligence, mais bien d'algorithmes et d'apprentissage machine sur des gros volumes de données (big data) ?
Ces algorithmes restent pour le moment incapables de déchiffrer la majorité des captcha, ces mots écrits de façon bizarre qu'il faut recopier pour démontrer que l'on est humain. Néanmoins, on peut d'ores et déjà se demander quels sont les risques liés à la reconnaissance faciale de tout un chacun, que ce soit en ligne ou dans la rue. Imaginez simplement les possibilités d'un drone militaire équipé d'une caméra haute résolution à la recherche de sa cible dans une foule…
Dans le même temps, les voitures entièrement autonomes deviennent une réalité (Google), la traduction automatique à la volée devrait bientôt être opérationnelle (Skype) et les joueurs de poker ont du souci à se faire (Tartanian).
Comme le montrent ces exemples, les chercheurs en intelligence artificielle ne cherchent plus, comme aux débuts de l’IA, à créer une machine intelligente ou omnipotente. Ils cherchent avant tout à étudier des situations bien identifiées, résoudre des problèmes ouverts et répondre à des questions précises.

Faut-il avoir peur de lIntelligence Artificielle ?

Diverses interventions dans les médias soulignent les avancées extraordinaires en intelligence artificielle et ses dangers potentiels. S'il existe certainement des dangers liés à ce domaine comme à tout progrès scientifique, les vrais risques  de l’IA sont peut-être masqués par la crainte que des machines prennent le pouvoir. Faut-il s’effrayer de l’avènement futur d’une super IA ? Que signifie la notion de singularité ?
Le concept de singularité a été introduit par Vernon Vinge dans les années 1990, au travers d'unarticle assez court qui commencait par cette phrase provocante :
Within thirty years, we will have the technological means to create superhuman intelligence. Shortly after, the human era will be ended.
(Dans 30 ans, nous disposerons de la technologie adéquate pour créer une super-intelligence. Peu de temps après, l'humanité s'éteindra.)
homo disparitus700
Illustration de la couverture du livre Homo Disparitus © François Baranger.
Si l'on s'en tenait à la prédiction de Vernon Vinge, nous pourrions en déduire qu'il nous reste à peu près cinq années à vivre et qu'ensuite nous disparaîtrions. Or, bien que le scénario de la disparition de l'Homme soit fascinant à bien des égards (voir notamment le livre d'Alan Weismann, The World Without Us ou Homo Disparitus en français), force est de constater que nous sommes encore très loin de ces conclusions dramatiques car il n'y a pas aujourd'hui de machine « super-intelligente ».
Pourtant, ce concept de singularité peut séduire car il repose sur une idée somme toute assez simple : si l'on construisait des ordinateurs de plus en plus « intelligents », alors ceux-ci deviendraient plus intelligents que leurs concepteurs et pourraient à leur tour concevoir de nouveaux ordinateurs plus intelligents qu'eux-mêmes. Le moment précis où l'Homme construirait cet ordinateur plus intelligent que lui-même est ce que Vernor Vinge désigne par singularité : puisque les ordinateurs sont beaucoup plus rapides que nous, l'accroissement de l'intelligence se ferait alors de façon exponentielle.
Avec la création en 2008 de l'université de la singularité par Peter Diamandis et Ray Kurzweil, ce concept a été remis au goût du jour, bien qu’il soit bancal.
Pour interpréter les prédictions de Vernor Vinge sur la singularité, il conviendrait de lui faire préciser sa pensée, afin de savoir ce qu'il considère être une intelligence surhumaine. Par exemple, cette intelligence devrait-elle parler ? avoir des buts propres ? avoir un corps ? avoir des opinions ? des amis ? des émotions ? des rêves ? etc. Et d'ailleurs, comment pourrions-nous reconnaître la singularité, c'est-à-dire, comment pourrions-nous savoir que la machine que nous venons de créer est intelligente ?
Au final, l'intelligence artificielle est un champ de recherche extrêmement fécond, qui a enfanté à son tour de très nombreux champs de recherche, que ce soit en reconnaissance de la parole, en algorithmes pour la génétique, en fouille de données, en vision par ordinateur, en réseaux de neurones artificiels, en apprentissage machine, etc. L'IA « canal historique » a permis de concevoir de très nombreux algorithmes que l'on retrouve aujourd'hui dans un très grand nombre d’applications grand public. Et si aujourd'hui on ne les appelle plus IA, ils en sont pourtant les héritiers directs. Cest dailleurs là une des malédictions de l'IA, car dès quun algorithme fonctionne, on a tendance à lui retirer sa filiation. En effet, si une machine sait le faire, cest quil ne s’agit plus d’intelligence !

Apprentissage automatique (Machine Learning)


L’apprentissage automatique, c’est la capacité d’un ordinateur à apprendre sans avoir été explicitement programmé.

Hier matin, en me rendant dans les locaux de Microsoft France où se déroule au Centre de conférence ces 23 et 24 avril le Microsoft Research Machine Learning Summit – une conférence au sommet autour du Big Data et du « Machine Learning  » à destination d’un public de chercheurs et universitaires venus de toute l’Europe -, un panneau au pied du pont du Garigliano indiquait :
  • Périphérique intérieur => fluide
  • Périphérique extérieur => 6 min Porte d’Orléans
De là est partie la (petite) réflexion suivante : si nous changeons le second affichage (c.à.d. Périphérique extérieur) par ceci :
  • Périphérique intérieur => fluide
  • L’autre : 6min Porte d’Orléans
Nous comprenons que l’affichage, « l’autre » en l’occurrence, correspond au périphérique extérieur. Cette relation, nous la faisons naturellement et sans réfléchir au préalable.
Des associations comme celle-ci nous en faisons régulièrement et si, par exemple, nous changeons le sujet en prenant comme phrase « La voiture est en panne, je prends l’autre », l’autre correspond cette fois à une deuxième voiture implicite.
Le mot « autre » est associé dans ces deux exemples à des entités complètement différentes. Pourtant notre cerveau arrive à faire la déduction naturellement grâce au contexte.
Le premier exemple sur le périphérique décrit deux types : intérieur et extérieur. Ce sont des termes opposés c’est-à-dire que l’alternative à intérieur est extérieur.
Comment le sait-on ? Cela fait partie de notre cadre de référence qui est constitué d’informations et d’expériences dépendantes de l’environnement dans lequel nous évoluons et de l’apprentissage que nous avons reçu.
Nous possédons donc déjà un cadre de référence qui nous permet de faire des déductions, de prendre des décisions en fonction du contexte. Par contre, si nous prenons le cas d’un enfant, plus il sera jeune, moins il déduira le déroulement d’actions car sa phase d’apprentissage sera moindre.

Principes de fonctionnement

Pour une machine, le fonctionnement est similaire. Il faut partir du principe qu’elle n’a pas encore de cadre de référence et qu’il va falloir qu’elle apprenne pour se constituer une mémoire qui, à son tour, l’aidera à faire un choix sur une situation avec un contexte particulier. Plus la machine possédera de comportements différents en fonction des contextes, plus elle répondra avec pertinence.
Le temps de réflexion augmentera en fonction du nombre de situations vécues et des comportements effectués ce qui n’est pas toujours amusant. En effet, si l’ordinateur prend trois jours à se décider pour déplacer le cavalier droit aux échecs, l’utilisateur aura déjà fermé le programme.
Quand l’ensemble de tous les comportements devient trop important, il augmente au fil du temps pour affiner la pertinence de l’algorithme. Pour pallier à ce problème complexe, il est nécessaire de séparer les rôles. On va donc créer un modèle qui sera mis à jour par un programme indépendant. Ce modèle simplifie la complexité précédente car il ne s’agrandit pas, il s’ajuste simplement. Vient ensuite, l’algorithme principal qui est de type adaptif et utilise le modèle pour s’auto-améliorer.
Comment est constitué un modèle ?
Il est bien souvent composé de probabilités Ainsi, dans le cas d’algorithmes de prédiction, une action donne un état, auquel correspondent plusieurs actions nouvelles possibles. Chaque action possède une probabilité de se produire, associée à l’état courant. Un des modèles régulièrement utilisé est la « chaîne de Markove ».

Vous avez dit chaîne de Markov ?

Une définition simpliste nous suffira pour aborder ici ce modèle : il s’agit de décrire sous forme d’un graphe une série d’états (représentées par des nœuds) et reliées par des probabilités (qui sont les arrêtes). Lorsque nous sommes dans un état, il existe une certaine probabilité pour être dans un deuxième état ou un troisième. A partir de ce constat, nous pouvons écrire une équation prédisant l’état du système dans 5 minutes.
A titre d’illustration, la chaîne de Markov ci-dessous indique que nous avons 9 chances sur 10 de faire l’activité « Autre activité » lorsque nous sommes dans l’état de départ, alors qu’il y a 1 chance sur 10 pour que nous soyons directement amenés à « l’activité de fin ». La somme de toutes les probabilités étant égale à 1.
Pour le cas où nous sommes en train de faire l’autre activité, nous pouvons finir par l’activité de fin (7/10), ou bien recommencer au départ (3/10).
image
Un exemple plus détaillé et bien expliqué – enfin je trouve – est disponible sur la page Wikipédia dédiée à la chaîne de Markov, à savoir Doudou le hamster.
Une autre variante consiste à ajouter un facteur décisionnel à chaque état ; on appelle cela un processus de Markove décisionnel (MDP). On l’utilise pour que l’algorithme ait la capacité de faire un choix. Par la suite, une fois le graphe construit, on peut aisément en déduire des équations transformées en calcules matriciels. Et les matrices, les ordinateurs savent très bien les manipuler ;)
Revenons à nos hamsters. Nous parlions de constitutions de modèle. Il peut aussi se trouver sous forme d’arbre (binaire, quelconque, etc.) ou encore de courbe, pertinent lorsque l’analyse se fonde sur des données temporelles.
Une fois que notre algorithme a appris à apprendre, il fonctionne en autonomie.

Apprentissages et élaboration du modèle

La première phase pour nos algorithmes d’apprentissage automatique doit donc être la classification des données d’apprentissage. Cette phase est un « pré mâchage » de l’information qui sera utilisée pour constituer le modèle. Elle est étiquetée pour être associée à une classe précise. Il existe plusieurs systèmes pour la phase d’apprentissage.

Apprentissage supervisé

Un modèle de classement est soumis par une personne, puis l’information du jeu de données est classée suivant celui-ci. Un expert est en charge de construire le modèle de classement qui contient des étiquettes (tag) à placer sur la donnée. Le professeur de l’université de Stanford Andrew Ng l’explique dans son cours Machine Learning (CS 229) avec l’exemple suivant (Module 1).
Supposons que nous collections des statistiques sur la taille de maisons au mètre carré et le prix correspondant. Nous avons donc spécifié que, dans notre jeu de données, il y a des maisons avec un attribut « surface » et un autre « prix ». Nous créons le graphique ci-dessous :
image
Les points bleus correspondent aux maisons, la ligne rouge représente la moyenne. Si nous voulons connaitre le prix pour une maison de surface 80 m², l’algorithme va en déduire grâce au jeu de données que le prix sera de l’ordre de 115 000 €. (Vous l’aurez deviné, ces prix de l’immobilier ne correspondent pas à ceux pratiqués sur Paris…)
image
Il est possible de définir plus de deux critères (la surface et le prix) ; ce qui conduit à faire évoluer le graphique ci-dessus vers un graphique multidimensionnel. Le graphique ci-dessus modélise un problème connu sous le nom de problème de régression (faisant référence aumodèle de régression linéaire en statistique).

Apprentissage non-supervisé

Comme son nom l’indique, il est l’opposé du premier. Dans le premier, l’apprentissage s’effectue de manière subjective c’est-à-dire qu’une personne décrit au préalable quels critères existent dans son jeu de données à analyser et classer. Dans cet apprentissage ci, l’algorithme ne possède pas d’étiquette : il est autodidacte. Il va procéder par regroupement en cherchant les données similaires. Il est très intéressant d’utiliser cette technique lorsque vous ne savez pas ce que vous cherchez. Typiquement quand vous voulez faire éclore quelque chose qui ne vous viendrait pas à l’esprit. Ce type d’apprentissage est aussi appelé « clustering », qui signifie « groupement ».
Pour l’exemple, on l’utilise dans un traitement d’image particulier, qui sélectionne les pixels similaires et en déduit qu’ils sont liés à un objet précis. Une reconstitution 3D à partir d’une photo peut être réalisée ensuite par ce biais (on appelle ce domaine la « Computer Vision »).
Dans l’illustration ci-dessous, un algorithme de clustering a permis de regrouper les pixels par région et d’en séparer les différents composants. D’autres algorithmes sont ensuite utilisés pour recréer une projection en trois dimensions.
image
Une des bibliothèques couramment utilisée dans ce domaine (à savoir le computer vision) est OPenCV (Open Source Computer Vision) disponible sur la forge GitHub. (Un tutoriel est disponible ici pour une utilisation avec Visual Studio 2012).

Apprentissage par renforcement

Dans le cas présent, l’algorithme apprend de l’environnement dans lequel il évolue. Ce type d’apprentissage tente de concevoir unestratégie la plus optimisée possible. Le système fonctionne avec des récompenses que renvoie l’environnement à celui-ci. Ces récompenses peuvent être encourageantes, ou punitives.
Un autre exemple que donne le professeur Andrew Ng dans son cours Machine Learning (CS 229) est le dressage d’un chien. Lorsque notre chien est en phase de dressage, nous allons lui apprendre ce que nous voulons de lui quand nous lui disons « couché ! ». S’il ne le fait pas correctement, on lui dit « mauvais chien », s’il le fait correctement c’est un « bon chien ». ;)
Le principe de fonctionnement pour l’algorithme de type renforcement est le même que pour le chien. Il va donc s’améliorer au fur et à mesure que l’environnement lui donne des récompenses.

Domaines d’application

L’apprentissage automatique est très utilisé, beaucoup plus qu’on ne le croit de prime abord :
  • Par exemple avec l’utilisation de notre mobile favori pour taper du texte, les suggestions de mots sont produites par des algorithmes utilisant principalement des chaines de Markov avec un graphe de type N-Gramme.
  • La reconnaissance manuscrite utilise un algorithme de reconnaissance de forme et un processus Markovien pour la reconnaissance de langage naturel. Les deux algorithmes combinés contribuent à améliorent fortement les performances et l’efficacité.
  • La reconnaissance vocale, en particulier l’isolation de la voix par rapport à un environnement bruyant, utilise un algorithme d’apprentissage non-supervisé constitué de réseaux neuronaux (un modèle conçu à la manière d’un cerveau humain).
Ce ne n’est qu’un rapide aperçu de ce qui existe déjà grâce au domaine de l’apprentissage automatique. Toutes ces fonctions se trouvent maintenant dans nos téléphones intelligents (smartphone).
Mais aujourd’hui, avec des architectures de type Big Data, un nouvel horizon s’ouvre au « Machine Learning » comme cela a été évoqué lors de l’édition 2013 des Microsoft TechDays : Bienvenue dans l’océan numérique (KEY203).
Le « Machine Learning » constitue donc une vraie révolution dans le logiciel : probabilités et statistiques sur les masses de données  permettent au logiciel « d’apprendre » et non seulement calculer. Nouvelle frontière, nouvelle façon de penser le logiciel et de le programmer, c’est une révolution qui replace la « Big Science » au cœur de l’innovation. Nous aurons très prochainement l’occasion de revenir sur la conférence Microsoft Research Machine Learning Summit .

Big Data et « Machine Learning »

Avec l’arrivée de Hadoop, nous l’avons vu à l’occasion de précédents billets, fidèles lectrices et lecteurs de ce blog, un écosystème de Frameworks en sus s’est rapidement constitué. Et donc rapidement, l’apprentissage automatique a fait son apparition dans cet écosystème comme la puissance offerte par Hadoop crée une opportunité au domaine sans précédent.
En effet, les algorithmes de « Machine Learning » et d’intelligence artificielle en général sont bien souvent très gourmands en ressources de calcul et prennent dès lors beaucoup de temps à s’exécuter. Néanmoins des optimisations sont régulièrement apportées sur ces algorithmes, mais elles sacrifient la précision contre le temps.
Apache Mahout est la réponse à la question (celle que vous vous êtes posée intérieurement). C’est un projet Apache, comme Hadoop, à ceci près qu’il n’est pas encore en version finale. Le projet consiste en un entrepôt d’algorithmes d’apprentissage automatique, tous portés afin de s’exécuter sur Map/Reduce. Une vingtaine d’algorithmes sont déjà portés sur le paradigme ; ce qui suffit pour la très grande majorité des problèmes.
En voici quelques-uns.
Pour ce qui est du contexte d’apprentissage supervisé :
  • Régression logistique (SGV). Son domaine de prédilection est celui de la prédiction de probabilité d’apparition d’évènements comme par exemple dans le domaine de la fraude bancaire ou encore dans celui de la publicité pour le ciblage de clients fidélisables.
  • Classification Bayésienne. Une utilisation courante de notre boîte aux lettres électronique nous amène à utiliser un programme basé sur cet algorithme. Les filtres de spam sont en fait des règles de classification qui servent à l’algorithme bayésien contenu dans l’agent anti-spam pour séparer les « bons courriels des mauvais ».
  • Machine à vecteurs de support (SVM). Il s’agit d’un ensemble de techniques destinées à résoudre des problèmes de discrimination (prédiction d’appartenance à des groupes prédéfinis) et de régression (analyse de la relation d’une variable par rapport à d’autres).
  • Réseau neuronaux. A l’inverse des algorithmes de déduction, ce dernier est un algorithme de type induction c’est-à-dire que, par le biais d’observations limitées, il essaie de tirer des généralisations plausibles. C’est un système basé sur l’expérience : il se constitue une mémoire lors de sa phase d’apprentissage (qui peut être aussi non-supervisée) que l’on appelle entrainement.
  • Forêts d’arbres décisionnels (Random Forest). C’est une application de graphe en arbres de décision permettant ainsi la modélisation de chaque résultat sur une branche en fonction de choix précédents. On prend ensuite la meilleure décision en fonction des résultats qui suivront. On peut considérer cela comme une forme d’anticipation.
  • Le Boosting. Il s’agit d’une méthode de classification émettant des hypothèses qui sont au départ de moindre importance. Plus une hypothèse est vérifiée, et plus son indice de confiance augmente et donc elle prend plus d’importance dans la classification.
Et pour le contexte d’apprentissage non-supervisé :
  • K-moyennes (KMeans). KMeans est un algorithme de partitionnement des données en K nombre de groupes. Il est utilisé notamment dans la bibliothèque OpenCV précédemment mentionnée vis-à-vis du domaine de la « computer vision ». Dans Mahout, on l’utilise typiquement afin de déterminer quelle suggestion peut être faite à un utilisateur en fonction des préférences que d’autres utilisateurs similaires ont eues (utilisateurs du même groupe).
  • Fuzzy KMeans. Il s’agit d’une variante du précédent algorithme proposant qu’un objet ne soit associé qu’à un seul groupe.
  • Espérance-Maximisation (EM). Comme on peut le deviner, cet algorithme utilise des probabilités pour décrire qu’un objet appartient à un groupe. Le centre du groupe est ensuite recalculé par rapport à la moyenne des probabilités de chaque objet du groupe.
  • Regroupement hiérarchique. Deux sous-algorithmes en découlent, à savoir d’une part le « bottom up » qui a pour fonction d’agglomérer des groupes similaires, donc en réduire le nombre (plus lisible) et d’en proposer un ordre hiérarchique, et d’autre part, le « top down » qui fait le résonnement inverse en divisant le premier groupe récursivement en sous-ensembles.
Nous présentons ici les principaux algorithmes rapidement dans la mesure où ce billet a simplement vocation à introduire le sujet. Nous aurons l’occasion d’y revenir à l’occasion de prochains billet. Ceci étant, dans l’intervalle, rien ne vous empêche d’aller plus loin dans vos recherches. Nous ne serions d’ailleurs que vous encourager à le faire. Il est en effet nécessaire de regarder dans le détail les algorithmes proposés par Mahout ainsi que leurs implémentations, et ce, afin d’utiliser au mieux ceux-ci dans votre application.

Pour aller plus loin

Nous espérons vous avoir intéressé avec cette introduction qui touche un large panel de domaines scientifiques ou d’autres domaines d’ailleurs. Comme nous l’avons suggéré, nous prévoyons un prochain billet sur l’application d’un algorithme de « Machine Learning », Soyez patient.
En attendant voici quelques ressources. Pour commencer, mentionnons le site officiel du projet Mahout sur lequel vous trouverez la liste complète des algorithmes proposés aujourd’hui dans ce contexte.
Vous pouvez aussi suivre le cours Machine Learning (CS 229) du professeur Andrew Ng de l’université de Stanford (le premier module du cours commence réellement à la 32ème minute).
Pour les plus impatients, Microsoft Research a élaboré un prototype (les données d’entrainements et les sources se trouvent sur GitHub) d’application basé sur le jeu de données 1 million song réunissant les musiques préférées d’un million d’utilisateurs. Vous retrouvez les travaux, projets et publications de Microsoft Research sur le « Machine Learning » ici.
Enfin, comme un certain nombre de billets ont été récemment consacrés à HDInsight, nous vous invitons à consulter le tutoriel de l’équipe HDInsight qui propose de créer un moteur de recommandations avec Mahout et le jeu de données 1 million song précédent.
S’agit-il de bonnes recommandations ? Vous nous le direz ;)

Thursday, March 3, 2016

Text and Data Mining Are Growing and Publishers Need to Support Their Use – An AAP-PSP Panel Report

Slide from TDM Session

Image courtesy of Susan Spilka
Author’s Note: I moderated a panel on text and data mining at last week’s Annual meeting of the American Association of Publishers–Professional and Scholarly Publishing. What follows are my introductory remarks and some information about the panel discussion. On the panel were: John Prabhu, Senior Vice President, Technology Solutions, SPi Global; Mark Seeley, Senior Vice President & General Counsel, Elsevier; andChristine M. Stamison, Director, NorthEast Research Libraries consortium (NERL), at the Center for Research Libraries.
At the dawn of digital content distribution there were many excited ideas about the possibilities of computerized information. In the 1960s, Ted Nelson and others theorized about the potential of computerized information and wrote excitedly about the possibilities of a network of interconnected digital texts. Nelson is a computer scientist and philosopher who, among other achievements, coined the term “hypertext,” as in the Hypertext Markup Language or HTML that we’re all familiar with. So many of this visionary’s ideas never came to fruition, at least not in the way he imagined them. Text and data mining, however, are outgrowths of his vision: a world of limitless possibilities in which increasing amounts of digital information are available online.
Let’s fast forward about 50 years to today. While the past 30 years of electronic content creation and distribution were essentially about recreating print, we are now beginning to see the implications and possibilities of having tremendous amounts of content available digitally. People are starting to move “Beyond the PDF,” to take a phrase from the conference of that name a few years back. We are starting to see the potential of moving content off the printed page and making it available in ways that go well beyond passively reading an article or a book. Researchers are beginning to expect to interact with the text or the underlying data that supports a paper, and now they have the capacity to do so.
There are several reasons for this. The first is the scale and availability of digital information that can be processed. There are numerous stores of petabytes of data around the web, and many of the organizational representatives reading this host them. The second is a network robust enough to disseminate that information. The FIOS line coming to my home is transmitting data at 150 Megabytes per second. At that peak data rate, my first computer’s hard drive would have been filled up 18 times per second. The third is the ubiquity of the computational power to crunch those data. Anyone who has anew iPhone in their pocket has immediate access to more computational power than all of NASA did when they landed human beings on the moon. So all of the infrastructure elements to provide text and data mining services exist and are ready to be used.
We also are beginning to see a variety of examples of the value that can be derived from text and data mining. These insights can be amazing, and I say this as one whose life nearly descended into the dark side of big-data analytics. My graduate degree program focused on Marketing Engineering, which is to say, data analytics for targeted marketing purposes. (A side note to parents: Never let your child grow up to be a marketing engineer, it’s just evil.)
One example of this is found in a 2013 article published in the Proceedings of the National Academies of Sciences that examined publicly available Facebook data. “Private traits and attributes are predictable from digital records of human behavior,” by Michal Kosinski and David Stillwell, both of Cambridge University, and Thore Graepel of Microsoft Research, demonstrated the prediction of a variety of notionally private information, not from obvious correlative patterns but from less-obvious ones based on patterns discernable from large-scale data analytics. They found highly correlative predictions about intelligence and “liking” “curly fries” on Facebook, and between male homosexuality and “liking” Wickedthe musical.
Kosinski and Stillwell’s analysis was conducted on the basis of openly available data on Facebook. Imagine what can be done with the amount of data that is being held at the corporate level by Google, Facebook, Microsoft, or any of the dozens of data-analytics companies that you have never even heard of. A variety of research has shown that individuals can be identified to within 90 percent accuracy using just three or four seemingly random data points. Last fall, I was at a technology conference where I listened to the CTO from one of those relatively unknown data-analytics companies. He described the 200,000-plus data points that the company currently tracks about Internet users. Data about your behavior exists — and is being mined — that can predict things about your future behavior you might not even know about yourself. For more on this subject, see this great TedX talk by a University of Maryland computer science professor, Jen Golbeck.
 Of course, we all get a bit creeped out by these types of marketing and analytics. They capture one’s attention. I reference them only to highlight the power of analytics on large amounts of data and the true power of these forms of enquiry. This predictive capacity is being used not just for marketing purposes or sociological analysis; it is being applied to all sorts of domains, from literature (changes in language use over time and computational analysis of poetic style) to chemistry/pharmaceuticals (computational drug repositioning), and from history (genomic history of slave populations) to agricultural sciences (predicting annual yield of major crops in Bangladesh).
The question for our community is, what is the role of publishers in this endeavor? How can publishers support the researcher community that is interested in undertaking these kinds of analyses with our data? What challenges do publishers and libraries face in provisioning and licensing these services? How can you do so in a way that does not appear, from a systems perspective, like wholesale theft of your company’s intellectual property?
During the panel, we discussed the licensing challenges, the expectations of users, some of the technical issues, and some of the future challenges and opportunities surrounding text and data mining (TDM). Mark Seeley focused on the business opportunities available to providing and supporting researchers in their work by provisioning TDM. Christine Stamison strongly advocated the role of libraries in TDM and the rights that libraries believe are covered in the existing licenses that they have negotiated, or that are covered by fair-use provisions of copyright law. Seeley and Stamison agreed that simplicity was needed, especially around the legal and licensing issues. Stamison focused on one library position, as articulated by the ARL Issue Brief on text and data mining: that algorithmic usage of content is covered under the fair-use provisions of copyright law and that special licenses specific to data mining for content aren’t necessary. While many contracts reference fair use, many licenses are ambiguous at best on whether TDM-related services are allowed. Although it wasn’t discussed, a related position statement issued by the International STM Association back in 2012 echoed many of the points discussed during the session. That statement included a sample contract addendum that is about five pages long. The International Federation of Library Associations (IFLA) also has a statement on TDM, issued in 2013. On the panel, Stamison and Seeley agreed that simplification and clearer understanding of these issues can help resolve some of the contractual battles about TDM.
John Prabhu discussed the technical infrastructure and content creation elements of providing these services, from metadata to systems management concerns. Some of the metadata Prabhu thought would be useful to improving TDM services included semantic tagging of content, matching content with existing ontologies, and TDM data provision. Stamison reported an informal survey of some of her member institutions and their regular requests for API, access keys, or specialized access to crawl publishers’ content. Despite some public complaints to the contrary, Seeley argued, Elsevier and other publishers are working hard to provide authorized access when it is requested. Concern about appropriate use is among the challenges faced here, of course, but more challenges exist technically around systems stability and managing the volume and systems demands TDM requests pose.
The session elicited a number of interesting questions, including one from Fred Dylla that caught my attention, about the volume of TDM requests and if there was any quantification of the actual use of text and data mining. While relevant data are limited, several data points are worth considering about the scale of this issue. The first is the anecdotal reporting of demand from the library community, which is supported by Stamison’s informal survey. More-rigorous data collection of this sort is necessary. Another factor I’ve noticed, through my informal exploration of various time-based Google Scholar searches on these subjects in preparation for this talk, is the increasing number of scholarly papers that use meta-analysis, textual analysis, or data-mining methodologies. Again, some quantification of this would be a useful addition to our understanding of the scope of text and data mining in the community. Finally, a third data point that could help would be a study of the usage of publisher APIs that have been set up to support TDM. All three of these areas are ripe for research to improve our understanding of the scope of TDM at present and its growth in recent years.
Stamison also discussed the potential for common practice among publishers and libraries around the provision of these services. If the pace of requests is going to increase, and several indicators point in that direction, then more common practice across publishers and libraries will simplify this process for everyone. One example of this is the Crossref Text and Data Mining Service support, but more reference services of this kind are necessary. For example, common APIs for TDM access, an accepted way for publishers and libraries to distribute access points or tokens in a secure way to authorized patrons, definition of standardized terminology around TDM access, and policies regarding capacity management might all be areas where consensus might make the process of TDM more efficient for the community.
Given its impact, the positive results, and the relative accessibility of content, computational power and approaches to mine these data, text and data mining will only grow as a research methodology. Publishers can and should do more to support these approaches, through tools, access and services. In some ways, this will help add value to the content publishers provide.  In other ways, publishers allowance for TDM will help support the interconnected web of knowledge that was part of the original vision of what the internet could provide.