Le Machine learning, kezako ?

Introduction au Machine Learning

Source de frayeur avant les années 2000, la possibilité qu’une machine augmente ses compétences de manière autonome est, avec le temps, devenu l’une des technologies de l’intelligence artificielle (IA) les plus répandues et les plus utilisées avec l’émergence du Big Data. Si cette technologie paraît récente, il n’en est rien, les premiers algorithmes de Machine Learning datent des années 1950 avec notamment le *Perceptron.   

*Perceptron
Le perceptron est un algorithme inventé par Franck Rosenblatt en 1957. Techniquement, c’est un algorithme d’apprentissage supervisé séparant deux classes via des règles (modèles) préalablement enregistrés.

L’importance du Machine Learning se retrouve dans certaines situations dans lesquelles l’ensemble des données est trop important pour que les analystes et développeurs puissent exécuter assez de tests puis dégager les valeurs essentielles de ces données. L’être humain n’a pas les connaissances nécessaires pour traiter tant de données substantielles. 

On distingue communément deux phases distinctes dans le processus de Machine Learning : 

  • Apprentissage / entraînement : durant cette phase, l’ordinateur va être confronté à un ensemble de données et va devoir déterminer un modèle qui lui permet ensuite de résoudre une tâche pratique. La machine est soumise à un entraînement basé sur un simple lot de données qui permet, via l’intégration du modèle, de complexifier les données entrantes. 
    L’apprentissage est fondamental. Il est systématiquement séparé en 3 phases : un jeu de données pour l’entraînement, un jeu de données DISTINCT pour le test et un dernier jeu de données DISTINCT pour la validation. Cette séparation est fondamentale pour éviter de sur-apprendre votre IA. 
  • La mise en production : une fois le modèle validé, de nouvelles données sont ajoutées afin de complexifier la tâche demandée et permettre à l’ordinateur d’adapter sa solution.

Machine Learning & Big Data – Une interdépendance croissante

Afin de bien comprendre l’essence même de la relation Machine Learning – Big Data, je vous invite à lire notre article sur les mégadonnées (Big Data). 

Voici tout de même un très court rappel de ce que sont les données massives (autre nom des Big Data) : le Big Data représente un cumul de données trop important pour une compréhension et une analyse par l’humain.  

Contrairement aux différentes techniques analytiques traditionnelles, le Machine Learning convient parfaitement au traitement de Big Data. Pourquoi ? Plus le nombre de données intégrées à un système de Machine Learning est grand, plus ce même système sera à-même de se performer et résoudre des insights (dilemmes non résolus) plus complexes.  

Il est, dans le génie informatique, communément admis que l’IA et le Machine Learning ne pourraient exister ou véritablement fonctionner sans le Big Data. Nous pourrions ainsi imager comme suit : 

Big data = outil nécessaire à l’apprentissage et facteur d’adaptation système
Ex : un mélange de ciment, granulats, eau et adjuvants ne sont rien d’autres que des composites inutiles si seuls.

Machine learning = Ce qui va transformer la donnée brute en solution à un problème grâce à un fonctionnement autonome basé sur un modèle : données + statistiques = solution
Ex : la bétonneuse va associer tous ses éléments de manière autonome afin de créer du béton qu’elle va ensuite aller déposer sur les routes abîmées.

Tout comme l’être humain, la machine/l’ordinateur a besoin d’une période d’adaptation et d’apprentissage avant de pouvoir intégrer une masse de données conséquentes et d’en tirer les conclusions nécessaires à l’apport d’une solution. 

La technique de Machine Learning est très appréciée dans le secteur du e-commerce où les données sont extrêmement changeantes puisque basées sur les habitudes consommateurs. 

Les types d’apprentissage

Dans les domaines de l’IA et des systèmes informatiques, on distingue deux types d’apprentissages principaux : l’apprentissage supervisé et l’apprentissage non supervisé. S’ils relèvent tous deux de l’IA, ils ne possèdent pas les mêmes caractéristiques lors de la phase d’apprentissage.  

L’apprentissage supervisé est conditionné par un ingénieur qui va l’aider à « apprendre » en catégorisant d’entrée les données dont va se servir l’algorithme pour émettre un résultat. Le but de cette phase d’entraînement est que l’algorithme puisse réaliser le même travail plus tard mais avec un amas de données plus impressionnant et surtout non-catégorisée. Le problème de l’apprentissage automatisée est qu’il nécessite un apport humain non négligeable et est donc chronophage. 

L’apprentissage non-supervisé intime le fait que le système va devoir, de façon autonome, détecter les similarités et les distinctions entre chaque élément de données afin de pouvoir les trier.