Machine Learning vs Deep Learning : quelles différences ?

Richard Gastard
Par 
Richard Gastard
General Manager
Dernière mise à jour le 
10
 
November
 
2024
Vous débutez en Data ? Maîtrisez les fondamentaux en quelques heures !
Se former en Data
Machine Learning vs Deep Learning : quelles différences ?
Sommaire

Machine Learning & Deep Learning sont devenus des termes extrêmement utilisés dans le cadre de nos activités, avec des applications toujours plus nombreuses. Lorsque l’on parle de Deep Learning, nous parlons d’algorithmes capables de mimer les actions du cerveau humain grâce à des réseaux de neurones d’où le terme d’Intelligence Artificielle. Il est souvent expliqué que la différence entre Machine Learning et Deep Learning réside dans le fait que les algorithmes de Machine Learning vont traiter des données quantitatives et structurées (des valeurs numériques), lorsque ceux de Deep Learning traiteront des données non-structurées, comme le son, le texte, l’image. Ceci étant vrai, nous expliquons ici ce pourquoi cette différence est réelle : le Feature Extraction.

Vous débutez en Data ? Maîtrisez les fondamentaux en quelques heures !
Se former en Data
Formation Data pour débutantFormation Data pour débutant

Le feature extraction dans le Machine Learning

Une définition du Machine Learning ? En Machine Learning classique, lorsque vous travaillez sur un cas tel que la prédiction d’achat (savoir si mon prospect va acheter ou non ce produit), le Data Scientist va lui même faire un choix, et extraire la donnée qui va influer sur la prédiction : les variables. En l’occurence pour notre exemple sur l’achat, nos variables pourraient être l’âge de la personne, son sexe, son revenu etc.

Ce sont ces éléments qui lui permettront de savoir si une personne va acheter ou non le produit. En d’autres termes, ce sont sur ces variables que le Data Scientist va entraîner son algorithme.

C’est ce que l’on appelle le Feature Extraction : sélectionner les variables avec lesquelles l’équipe Data va travailler.

Pas de feature extraction en Deep Learning

En Deep Learning, souvent, il n’est pas possible de faire de Feature Extraction, et même, vous n’avez pas à en faire.

Pourquoi ? En Deep Learning, nous traitons souvent des données non-structurées : des images, du son, du texte, etc. Lorsque vous avez une image, vous n’allez pas pouvoir extraire l’élément qui va être prédicteur : il est bien entendu impossible pour nous en tant qu’humain de sélectionner à la main tous les pixels de chaque image appartenant au chien ou au chat (l’exemple classique de reconnaître si sur une image est représenté un chat ou un chien). Dans cette mesure, on n’a donc pas besoin de Feature Extraction.

L’algorithme va être entrainé pour sortir lui même les éléments influents dans la prédiction que vous souhaitez réaliser.

2 des types d’algorithmes :

--> Des réseaux de neurones convolutionnels qui sont utilisés par exemple pour le traitement d’images.

--> Nous avons également des réseaux de neurones récursifs pour le traitement de texte.

Si vous souhaitez en savoir plus sur chaque type de réseaux de neurones, intéressez vous à la chaîne Youtube « 3Blue 1Brown » qui vous expliquera dans les détails ces catégories de réseaux de neurones et leurs fonctionnements.

Là est l’explication pour la différence entre Machine Learning et Deep Learning. D’un côté vous allez choisir les données avec lesquelles votre algorithme va être entraîné, selon les variables souhaitées. En Deep Learning, vous allez devoir les mettre dans votre algorithme de manière brut. Mais dans ce cas là, pourquoi ne pas faire que du Deep Learning ?

Différence entre Machine Learning et Deep Learning
Différence entre Machine Learning & Deep Learning

Les limites du Deep Learning

Puissance de calcul

On se souvient de l’architecture d’un réseau de neurones. Une couche d’entrée, des couches cachées puis une couche de sortie. Pour avoir un algorithme performant, vous aurez besoin d’un algorithme très « profond ».

réseau de neurones
Schéma d'un réseau de neurones

Pour exemple, les algorithmes pré-entraînés de Google ou Facebook comptent en général entre 1000 et 2500 couches, telle est la complexité de ses algorithmes mais également de leur précision. Pour les entraîner, vous allez avoir besoin de beaucoup de puissance calculatoire : sur votre ordinateur personnel par exemple, cela prendrait trop de temps d’entraîner votre algorithme. La contrainte de la quantité de données.

Les algorithmes de Deep Learning nécessitent un volume important de données

Nous rejoignons des problématiques Big Data ici. Prenons 2 exemples sur les applications du Deep Learning.

Si vous souhaitez réaliser une classification (catégoriser des images de chiens et de chats par exemple),  vous pourrez ne prendre « que » 10000 images pour avoir un algorithme performant. Ce qui reste important ! Maintenant, si vous souhaitez – non plus seulement catégoriser ces images – mais reconnaître dans ces images un élément donné, nous parlons de détection d’objets, cela vous demandera beaucoup plus de données.

Facebook utilise beaucoup ces algorithmes pour reconnaître les visages dans les photos. Il vous faudra alors bien plus d’images pour que votre algorithme comprenne comment bien les détourer, 100 000, 1 million d’images.

Ce sont ces 2 éléments qui sont à prendre en compte pour utiliser du Deep Learning dans votre projet Data : la puissance calculatrice de vos machines et/ou le volume de données que vous avez.

Ces 2 contraintes constituent aussi des coûts plus importants.

Une explicabilité difficile

Le Deep Learning est un sous-domaine du Machine Learning associé à la performance : il reste très complexe d’expliquer comment un algorithme arrive au résultat. Une possibilité est de « couper » une couche de votre algorithme au milieu pour en étudier la sortie. Mais il n’est pas aussi simple que dans des algorithmes de Machine Learning classique, de savoir comment fonctionne exactement un algorithme de Deep Learning. Des contraintes légales pourraient donc surgir. Dans certains domaines (finance, banque etc), les professionnels ont un devoir d'explicabilité de l’algorithme : il est ainsi contraignant de mettre en place de tels algorithmes.

En somme, nous aurons compris que la réelle différence entre Machine Learning et Deep Learning est contenue dans la possibilité ou l’impossibilité de faire du Feature Extraction, de choisir les variables déterminantes d’une prédiction. Dans cette mesure, le Deep Learning peut poser des problèmes lorsque l’on est confronté à un Dataset de taille non-suffisante, ou que la puissance calculatoire des machines utilisées est trop faible.  Les fortes performances d’un algorithme de Deep Learning sont également rattrapées par la difficulté à expliquer son fonctionnement de manière précise, engendrant des problèmes qui sortent du cadre du traitement de la donnée : des problèmes légaux, voire éthiques.

Soirée Portes Ouvertes Jedha BootcampSoirée Portes Ouvertes Jedha Bootcamp
Richard Gastard
Richard Gastard
General Manager
Après avoir travaillé dans l'armée, Richard a suivi l'un de nos Bootcamps pour se reconvertir dans la Data. Riche de son expérience d'élève chez Jedha, il a décidé de rejoindre l'équipe pour gérer les opérations et a été notre General Manager de 2020 à 2022. Depuis, il est devenu Responsable Pédagogique chez Sup de Vinci.

Articles recommandés