Les 6 meilleures formations en Machine Learning
Vous souhaitez vous reconvertir dans la Data ? Découvrez les meilleures offres de formation en Machine Learning pour réussir votre projet professionnel !
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.
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.
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 ?
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 ».
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.
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.
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.