Comment fonctionne le machine learning ?
L’intelligence artificielle fait partie intégrante de la digitalisation, qui a modifiée durablement notre société. Ce qui était il y a quelques années encore de l’ordre de la science-fiction est désormais réalité. Nous parlons avec des ordinateurs, nos téléphones nous orientent et nous indiquent le chemin le plus court, nos montres savent si nous avons suffisamment bougé dans la journée. La technique est de plus en plus intelligente, et les scientifiques, ingénieurs et programmeurs deviennent des enseignants : ils « entrainent » les ordinateurs à apprendre de façon autonome.
L’apprentissage automatique ou machine learning n’est pas seulement intéressant pour la science et pour les entreprises informatiques comme Google ou Microsoft. Mais l’intelligence artificielle a aussi un impact direct sur le marketing Web. Dans les paragraphes suivants, nous allons voir comment l’intelligence artificielle (IA) a évolué ces dernières années et ce que le machine learning signifie exactement, et enfin nous étudierons les méthodes du machine learning et pourquoi les spécialistes du marketing doivent aujourd’hui tenir compte des systèmes d’apprentissages automatiques.
- Créez votre site Web en un temps record
- Boostez votre activité grâce au marketing par IA
- Gagnez du temps et obtenez de meilleurs résultats
L’histoire du système d’apprentissage automatique
Les robots et automates sont une source d’intérêt depuis plusieurs siècles. Déjà les écrivains de la période romantique traitaient de l’intelligence artificielle et aujourd’hui encore, nous restons fascinés par les robots, que ce soit dans les films, les livres ou les jeux vidéo. La relation de l’être humain à la machine pensante a toujours oscillé entre crainte et fascination. Cependant, les réels progrès du machine learning ne commencèrent pas avant les années 50, à une époque où les ordinateurs n’en étaient encore qu’à leurs balbutiements et ou l’intelligence artificielle ne pouvait que faire rêver. Au cours des deux siècles précédents, des théoriciens comme Thomas Bayes, Adrien Marie Legendre et Pierre-Simon Laplace avaient déjà jeté les bases de la recherche, mais il faut attendre les travaux d’Alan Turing pour parler concrètement d’apprentissage automatique des machines.
„In such a case one would have to admit that the progress of the machine had not been foreseen when its original instructions were put in. It would be like a pupil who had learnt much from his master, but had added much more by his own work. When this happens I feel that one is obliged to regard the machine as showing intelligence.”
Alan Turing lors d’une conférence en 1947. (cité d’après B. E. Carpenter et R. W. Doran (eds.), A. M. Turing's Ace Report of 1946 and Other Papers)
En 1950, Turing a développé une proposition de test d’intelligence artificielle : le test de Turing. Il s’agit d’une sorte de jeu dans lequel un ordinateur prétend être un être humain, il imite la conversation humaine. Si la personne n’est pas capable d‘identifier lequel de ses interlocuteurs est une machine, on peut alors considérer que l’ordinateur a passé le test avec succès. Deux ans plus tard, Arthur Samuel a développé un ordinateur qui pouvait jouer aux dames tout en s’améliorant à chaque partie. Le programme avait donc la capacité d’apprendre. Enfin, en 1957, Frank Rosenblatt développa le Perzeptron, un premier algorithme d’apprentissage, il s’agit d’un réseau neuronal artificiel.
Dès lors, les scientifiques ont commencé à confier à leurs ordinateurs des épreuves de plus en plus complexes, les machines les maitrisant plus ou moins bien. IBM a développé Watson, un programme informatique qui possède un immense référentiel de connaissances et qui peut répondre aux questions posées en langage naturel. Ainsi, il a même participé à la célèbre émission de télévision « Jeopardy! », ce qui a eu un impact fort sur les médias car Watson a gagné la manche. (Cet évènement rappel beaucoup la compétition d’échec de 1997 entre le champion du monde Garri Kasparov et un autre ordinateur d’IBM : le Deep Blue. Là aussi la machine est sortie victorieuse.)
Google et Facebook utilisent le machine learning pour mieux comprendre les utilisateurs et offrir davantage de fonctionnalités. DeepFace de Facebook peut même désormais identifier les visages sur les images avec un taux de réussite de 97 pourcent. De plus le moteur de recherche géant a déjà considérablement amélioré la reconnaissance vocale du système d’exploitation Android, la recherche de photos sur Google+ et les recommandations vidéo sur YouTube via son projet GoogleBrain.
Qu’est-ce que le machine learning ?
Par principe, les machines, les ordinateurs et les programmes ne fonctionnent que de la façon dont vous les avez préalablement configurés : « si le cas A survient, activer B ». Cependant, nos attentes à l’égard des systèmes informatiques modernes sont de plus en plus élevées et les programmes ne peuvent prévoir tous les cas imaginables et imposer une solution à l’ordinateur. Il est donc nécessaire que le logiciel prenne des décisions de manière indépendante et réagisse de manière appropriée aux situations inconnues. Mais des algorithmes doivent être disponibles pour permettre aux programmes d’apprendre. Cela signifie que dans un premier temps, qu’il doit être alimenté avec des données et, qu’il puisse dans un second temps faire des associations.
Dans le contexte du système d’apprentissage automatique, il y a toujours des termes connexes qui doivent être compris afin de mieux appréhender le principe du machine learning.
Intelligence artificielle
La recherche sur l’intelligence artificielle (AI) tente de créer des machines capables d’agir comme des êtres humains : en effet les ordinateurs et les robots sont censés analyser leur environnement et ainsi prendre la meilleure décision possible. Les robots doivent donc se comporter de manière intelligente selon nos normes. Mais cela ouvre une problématique : quels critères devons-nous utiliser pour juger de notre propre intelligence ? Aujourd’hui, l’IA ne peut simuler l’être humain en entier (notamment l’intelligence émotionnelle). Au lieu de cela, des aspects partiels sont isolés afin de faire face à des tâches spécifiques, précises. C’est ce que l’on nomme communément l’intelligence artificielle faible (IA faible).
Réseau neuronal
Une branche de la recherche sur l’intelligence artificielle, la neuroinformatique tente aussi de davantage concevoir des ordinateurs basés sur le modèle cérébral. Elle considère les systèmes nerveux comme abstraits, c’est à dire libérés de leurs propriétés biologiques et confinés à leurs modes de fonctionnement. Les réseaux de neurones artificiels sont principalement des méthodes mathématiques abstraites. Un réseau de neurones (fonctions mathématiques ou algorithmes) est assemblé comme un cerveau humain, et peut faire face à des tâches complexes. Les chaines entre les neurones varient en force et peuvent s’adapter aux problèmes.
Big Data
Le terme de Big Data ou mégadonnés, écrit simplement un énorme ensemble de données qui atteint une quantité telle que cela dépasse les capacités humaines d’analyse, on parle alors de Big Data. La médiatisation croissante ces dernière années du Big data est dû à l’origine de ces données : en effet, dans de nombreux cas, le flot d’informations est créé à partir de données utilisateurs (intérêts, profils, données personnelles) collectées par des sociétés comme Google, Amazon ou Facebook afin d’adapter plus précisément l’offre aux clients. De tels volumes de données ne peuvent plus être évalués de manière satisfaisante par les systèmes informatiques traditionnels : les logiciels conventionnels ne trouvent que ce que l’utilisateur recherche. C’est la raison pour laquelle il faut désormais des systèmes d’apprentissage automatique qui permettent de découvrir et de réaliser des interrelations inconnues jusqu’alors.
Data-Mining
Le Data mining est l’analyse des données du Big Data. En effet, la collecte seule n’est pas encore d’une grande valeur. Il faut y extraire les caractéristiques pertinentes et les évaluer. Le data mining se distingue de l’apprentissage automatique par le fait qu’il se préoccupe principalement de l’application de modèles reconnus alors que le second recherche de nouveaux modèles.
Différentes méthodes de machine learning
Fondamentalement, les développeurs distinguent avec des étapes intermédiaires progressives l’apprentissage supervisé (supervised learning) et l’apprentissage non supervisé (unsupervised learning). Les algorithmes utilisés sont très différents. L’apprentissage supervisé apporte des exemples, comme une base de données, au système. Les développeurs spécifient la valeur des informations, par exemple, si elles appartiennent à la catégorie A ou B. Le système d’apprentissage automatique en tire des conclusions, reconnait les modèles et peut mieux gérer des données inconnues. L’objectif est de réduire davantage le taux d’erreur.
Un exemple connu d’apprentissage supervisé est le filtre anti-spam : le système utilise des fonctions pour décider si le courrier est envoyé à la boite de réception ou bien s’il est déposé dans le dossier spam (courrier indésirable). Si le système fait une erreur, vous pouvez le corriger manuellement et le filtre ajustera ainsi ses futurs calculs. Le logiciel obtient donc ainsi de meilleurs résultats. Un tel programme de filtrage est basé sur l’ensemble des filtres bayésiens (de la théorie des probabilités, le théorème de Bayes) c’est pourquoi on parle de filtrage bayésien du spam.
Le unsupervised learning, c’est à dire l’apprentissage non supervisé, élimine l’enseignant, qui dans l’apprentissage supervisé, indique toujours ce qui appartient et donne un retour d’information sur les décisions autonomes du système. Au lieu de cela, le programme ici essaie de reconnaitre les modèles par lui-même. Il peut utiliser le clustering (partitionnement des données), par exemple : un élément est sélectionné parmi la quantité de données, examiné pour ses caractéristiques et ensuite comparé à celles déjà examinées. S’il a déjà examiné des éléments équivalents, l‘objet courant y sera ajouté. Si ce n’est pas le cas, il est alors stocké séparément.
Des systèmes basés sur l’apprentissage non supervisé sont mis en œuvre dans les réseaux neuronaux. Des exemples d’application peuvent être trouvés dans la sécurité du réseau : un système apprentissage automatique détecte les comportements anormaux. Par exemple, comme une cyberattaque ne peut pas être attribuée à un groupe connu, le programme peut alors détecter la menace et notifier un problème, alarmer l’utilisateur.
En plus de ces deux domaines principaux, il existe aussi l’apprentissage semi-supervisé (semi-supervised learning) et l’apprentissage par renforcement (reinforcement learning), et l’apprentissage actif (active learning) : ces trois méthodes sont plus étroitement liées à l’apprentissage supervisé et diffèrent au niveau du type et de l’étendue de la participation des utilisateurs.
En outre, il existe aussi une distinction entre le shallow learning et le deep learning. Alors que la première méthode est relativement simple, avec des résultats assez superficiels, le deep learning (ou apprentissage profond) est lui plus difficile à comprendre. Ces sont des informations très complexes, parce qu’il s’agit d’informations naturelles, par exemple celles qui se produisent pendant la parole, l’écriture ou la reconnaissance faciale. Les données naturelles sont faciles à traiter pour les humains, mais pas pour une machine, car elles sont difficiles à saisir mathématiquement.
Le deep learning et un réseau de neurones artificiels sont étroitement liés. La façon dont un réseau neuronal est formé peut être décrite comme un deep learning. On le nomme deep learning parce que le réseau de neurones est organisé en plusieurs niveaux hiérarchiques. Le premier niveau commence par une couche de neurones d’entrée. Ils enregistrent les données, commencent leur analyse et envoient leurs résultats au nœud neuronal suivant. A la fin, l’information de plus en plus affinée atteint le niveau initial et le réseau délivre une valeur. Les niveaux parfois très nombreux situés entre l’entrée et la sortie sont appelés couches cachées (hidden layers).
Pour illustrer et mieux comprendre le deep learning, on peut utiliser par exemple la recherche de Google Image. Le réseau, qui se trouve derrière l’algorithme de recherche, fournit seulement les images qui montrent des chats lors d’une recherche avec le mot « chat ». Cela fonctionne parce que le système d’apprentissage automatique de Google peut reconnaitre les objets dans l’image. Lorsque Google ajoute une nouvelle image à son catalogue, les neurones d’entrées du système traitent les données (même pour les ordinateurs, les photos ne sont composées que de chiffres).
En parcourant les couches, le filtre sélectionne seulement les informations nécessaire jusqu’à ce qu’il puisse décider à la fin quels objets sont visibles dans l’image, par exemple un chat. Pendant la phase de formation, les développeurs fournissent une catégorie pour chaque image afin que le système puisse apprendre. Si la machine délivre ensuite de faux résultats, comme par exemple des images avec des chiens à la place de chats, les développeurs peuvent alors adapter les neurones individuels. Comme notre cerveau, ils ont des pondérations et des seuils différents qui peuvent être ajustés dans un système d’apprentissage automatique.
Comment fonctionne le machine learning pour le marketing ?
L’apprentissage automatique a déjà des fonctions importantes pour le marketing. Actuellement, ce sont surtout les grandes entreprises qui utilisent en interne ces technologies, notamment Google. Les systèmes d’Apprentissage automatique sont encore trop nouveau y pour être achetés comme des solutions prêtes à l’emploi. Les grands fournisseurs d’accès à Internet développent leurs propres systèmes et ils sont donc moteurs dans ce domaine. Cependant, malgré l’intérêt commercial, certains optent pour une approche open source et travaillent de concert avec des scientifiques indépendants, les avancées sur le terrain deviennent de plus en plus importantes et s’accélèrent. Outre l’aspect créatif, le marketing a aussi un aspect analytique : les statistiques sur le comportement des clients (comportement d’achat, nombre de visiteurs pour un site Web, utilisation d’applications etc.) jouent un rôle important dans le choix de mesures publicitaires spécifiques. Plus la quantité de données est importante, plus on peut généralement en tirer des règles, des conclusions. Des programmes intelligents sont nécessaires pour traiter un tel nombre de caractéristiques. C’est ici que les systèmes d’apprentissage automatique entrent en jeu : les programmes informatiques intelligents reconnaissent les tendances et peuvent ainsi donner des prédictions, ce qui risque d’être faussé si ce sont des personnes. En effet un analyste abord habituellement la masse de données avec une certaine attente. Ces idées préconçues sont bien difficilement évitables pour l’humain et provoquent souvent des distorsions au niveau des résultats. Plus la quantité de données traitées par les analystes est élevée, plus l’écart est susceptible d’être important. Même si les machines intelligentes peuvent aussi avoir des préjugés, parce-ce que ces derniers ont été formés de manière involontaire par des humains, mais avec des faits concrets, elles procèdent de manière plus objective et fournissent donc généralement des analyses plus significatives et pertinentes. Les systèmes d’apprentissage automatique améliorent et facilitent aussi la présentation des résultats d’analyse. La visualisation automatisée des données (Automated Data Visualization) est une technique dans laquelle l’ordinateur sélectionne automatiquement la bonne présentation des données et des informations. Ceci est important pour que les personnes puissent bien comprendre les résultats de la machine. Dans le flot de données, il devient parfois difficile d’afficher et d’organiser les résultats. Ainsi, la visualisation doit également être exécutée via des calculs informatiques. Mais le machine learning peut aussi avoir une influences sur la création du contenu : c’est le design génératif (generatives Design). Au lieu de concevoir le même parcours client pour tous les utilisateurs (C’est-à-dire les étapes que le client parcourt pour acheter un produit ou un service), les systèmes dynamiques peuvent basées sur le machine learning peuvent créer des expériences individuelles. Le contenu du site Web affiché à l’utilisateur est toujours créé par des rédacteurs et des concepteurs, mais le système intègre les composants spécifiquement pour l’utilisateur. Les systèmes d’apprentissage automatique sont aussi utilisés pour s’auto-concevoir : avec le projet Dreamcatcher il est par exemple possible de faire concevoir des composants par une machine. Le machine learning peut aussi être utilisé pour améliorer les chatbots (agent conversationnel) notamment. De nombreuses entreprises utilisent déjà des programmes qui gèrent une partie du support client via un chatbot. Mais dans de nombreux cas, les utilisateurs sont rapidement ennuyés par les machines opérateurs : les capacités actuelles des chatbots sont généralement limitées et les options de réponse sont basées sur des bases de données gérées manuellement. Un chatbot basé un système d’apprentissage automatique avec une bonne reconnaissance vocale (NLP) peut donner aux clients le sentiment qu’ils communiquent avec une personne réelle, et ainsi réussir le test de Turing. Amazon ou Netflix présentent un autre développement important de l'apprentissage automatique pour les spécialistes du marketing : les recommandations. Un facteur important pour le succès de ces fournisseurs est de prédire ce que l'utilisateur souhaite après un achat. En fonction des données collectées, les systèmes d’apprentissage automatique peuvent recommander d'autres produits à l'utilisateur. Ce qui n'était auparavant possible que sur une grande échelle (« Nos clients aiment le produit A, donc la plupart d'entre eux aimeront aussi le produit B. ») est maintenant également possible sur une petite échelle grâce à des programmes modernes (« Le client X a aimé les produits A, B et C, c'est pourquoi il aimera probablement aussi le produit D. ») Ainsi, pour résumé, les systèmes d’apprentissage automatique influenceront le marketing en ligne de quatre façons importantes :
- Quantité : les programmes qui fonctionnent avec le machine learning et qui ont été bien formés peuvent traiter d'énormes quantités de données et faire des prévisions pour l'avenir. Les experts en marketing tirent de meilleures conclusions sur le succès ou l'échec des campagnes et de décisions.
- Rapidité : l'analyse prend du temps, si vous devez le faire manuellement. Les systèmes d’apprentissage automatique augmentent la vitesse de travail et vous permettent de réagir plus rapidement aux changements.
- Automatisation : le machine learning facilite l'automatisation des opérations. Comme les systèmes modernes peuvent s'adapter de manière autonome aux nouvelles conditions grâce au machine learning, des processus d'automatisation complexes sont également possibles.
- Individualité : les programmes informatiques peuvent servir d'innombrables clients. Comme les systèmes d’apprentissage automatique collectent et traitent les données des utilisateurs individuels, ils peuvent également apporter un soutien complet à ces clients. Des recommandations individuelles et des trajets clients spécifiques permettent une meilleure utilisation et optimisation du marketing.
Autre domaines d’application des systèmes d’apprentissage automatique
Ainsi, le machine learning est également de plus en plus utilisé dans le marketing. Mais les systèmes d’apprentissage automatique gagnent du terrain dans bien d'autres domaines de notre vie. Dans certains cas, elles aident la science et la technologie à faire avancer les progrès. Dans certains cas, cependant, ils sont également utilisés sous la forme de gadgets parfois plus grands, parfois plus petits, pour simplifier notre vie quotidienne. Les domaines d'application présentés ici ne sont que des exemples. On peut supposer que le machine learning affectera notre vie entière dans un avenir proche.
Science
Ce qui s'applique au marketing est encore plus important dans les sciences naturelles. Le traitement intelligent du Big Data est un énorme soulagement pour les scientifiques qui travaillent empiriquement. Les physiciens des particules, par exemple, peuvent utiliser les systèmes d’apprentissage automatique pour enregistrer et traiter beaucoup plus de données de mesure et détecter ainsi les écarts. Le machine learning aide aussi en médecine : déjà aujourd'hui, certains médecins utilisent l'intelligence artificielle pour le diagnostic et le traitement des patients. En outre, l'apprentissage automatique est utilisé pour prédire le pronostic du diabète ou des crises cardiaques, par exemple.
Robotique
Les robots sont maintenant omniprésents, surtout dans les usines. Ils aident, par exemple, dans la production de masse à automatiser des étapes de travail cohérentes. Cependant, ils n'ont souvent pas grand-chose à voir avec les systèmes intelligents, car ils ne sont programmés que pour l'étape de travail précise qu'ils effectuent. Si des systèmes d’apprentissage automatique sont utilisés en robotique, ces machines doivent également maîtriser de nouvelles tâches. Bien entendu, ces développements sont également très intéressants pour d'autres domaines: du voyage spatial à la maison, des robots dotés d'intelligence artificielle seront utilisés dans des domaines très variés.
Le trafic
L'un des produits phares du machine learning est la voiture autonome. Le fait que les véhicules peuvent manœuvrer indépendamment et sans accident dans le trafic réel ne peut être réalisé que par le machine learning. Il n'est pas possible de programmer toutes les situations. Pour cette raison, il est impératif que les voitures censées naviguer se replient sur des machines intelligentes. Des algorithmes intelligents, par exemple sous la forme de réseaux neuronaux artificiels, peuvent analyser le trafic et développer des systèmes de gestion du trafic plus efficaces, par exemple grâce à des circuits de feux de signalisation intelligents.
Internet
Le machine learning joue déjà un rôle majeur sur Internet. Les filtres anti-spam ont déjà été mentionnés : grâce à un apprentissage constant, les filtres pour les emails indésirables sont plus performants et éliminent les spams de manière plus fiable depuis la boîte de réception. Il en va de même pour la défense intelligente contre les virus et les malwares qui protègent mieux les ordinateurs contre les logiciels malveillants. Les algorithmes de classement des moteurs de recherche, en particulier RankBrain de Google, sont également des systèmes d’apprentissage automatique. Même si l'algorithme ne sait pas quoi faire de la saisie de l'utilisateur (parce que personne ne l’a encore cherché), il peut deviner ce qui pourrait convenir à la requête.
Assistants personnels
Même dans notre quotidien à la maison, les systèmes informatiques d’apprentissage automatique jouent un rôle de plus en plus important. Comment transformer des appartements simples en maisons intelligentes (Smart Home). Par exemple, Moley Robotics qui développe une cuisine intelligente et qui prépare des repas. Aussi des assistants personnels tels que Google Home et Amazon Echo, avec lesquels certaines parties de la maison peuvent être contrôlées, utilisent les technologies du machine learning pour comprendre leurs utilisateurs de la meilleure façon possible. Mais beaucoup de gens emportent désormais leurs assistants avec eux à tout moment : avec Siri, Cortana ou Google Assistant, les utilisateurs peuvent utiliser la commande vocale pour envoyer des commandes et poser des questions à leur smartphone.
Jeux
Depuis le début de la recherche sur l'intelligence artificielle, la capacité des consoles, logiciels de jeux a été une grande motivation pour les scientifiques. Aux échecs, aux dames ou au Go chinois (le jeu de société probablement le plus complexe du monde), les systèmes d’apprentissage automatique se mesuraient contre des adversaires humains. Les développeurs de jeux informatiques utilisent également le machine learning pour rendre leurs jeux plus intéressants. Les concepteurs de jeux peuvent utiliser le machine learning pour créer le gameplay le plus équilibré possible et s'assurer que les adversaires de l'ordinateur s'adaptent de manière intelligente aux comportements des joueurs humains.