Introduction au Machine Learning

Introduction au Machine Learning

Introduction au Machine Learning

Aperçu de la section: Cette section introduit le sujet du Machine Learning et présente l'entreprise Data Synthèse qui propose des formations dans ce domaine.

Présentation de Data Synthèse

  • Data Synthèse est une entreprise spécialisée dans les formations liées à la data.
  • Ils proposent des formations pour les métiers de data analyst, data scientist et data ingénieur.
  • Ils offrent également des formations avancées sur des domaines spécifiques tels que PowerBI, Microsoft Azure et le Deep Learning.
  • Les formations sont destinées aux particuliers souhaitant se reconvertir dans le domaine de la data ainsi qu'aux entreprises désirant développer les compétences de leurs employés.

Présentation du Data Atelier

Aperçu de la section: Le présentateur se présente et annonce le déroulement du Data Atelier.

Présentation du présentateur

  • Le présentateur s'appelle Manon et est un data scientist chez Data Synthèse.

Objectifs du Data Atelier

  • L'objectif principal est d'introduire le concept du Machine Learning.
  • Seront présentés les principaux algorithmes de Machine Learning existants et leur utilisation appropriée.
  • L'évaluation des performances des algorithmes sera également abordée.
  • Une partie théorique sera suivie d'un exemple concret sur un jeu de données simple.
  • Enfin, l'aspect mathématique sous-jacent aux algorithmes sera brièvement exploré.

Présentation des Slides

Aperçu de la section: Le présentateur partage son écran pour commencer la présentation.

Partage de l'écran

  • Le présentateur partage son écran pour afficher les slides de la présentation.

Qu'est-ce que le Machine Learning?

Aperçu de la section: Cette section explique ce qu'est le Machine Learning et sa relation avec l'intelligence artificielle.

Définition du Machine Learning

  • Le Machine Learning est un sous-domaine de l'intelligence artificielle.
  • Il vise à donner aux machines, comme les ordinateurs, la capacité d'apprendre et d'effectuer des tâches de manière autonome.

Différence entre le cerveau humain et un ordinateur

  • Initialement, les ordinateurs ne possèdent pas les compétences des êtres humains.
  • Le Machine Learning permet à l'ordinateur d'apprendre progressivement à effectuer des tâches similaires à celles accomplies par les humains.

Utilisation des données dans le Machine Learning

  • Les données jouent un rôle essentiel dans le processus d'apprentissage automatique.
  • L'explosion des Big Data a permis aux ordinateurs d'apprendre à partir d'un grand volume de données disponibles grâce à Internet, aux réseaux sociaux et aux objets connectés.

Apprentissage autonome grâce au Machine Learning

Aperçu de la section: Cette section explique comment le Machine Learning permet à une machine d'apprendre progressivement par elle-même en utilisant des données.

Capacité d'action autonome

  • Le but du Machine Learning est de permettre aux machines d'agir comme des humains en apprenant à effectuer des tâches de manière autonome.
  • L'apprentissage se fait étape par étape, où la machine acquiert progressivement la capacité d'effectuer des tâches par elle-même.

Utilisation des données pour l'apprentissage

  • Les données sont essentielles pour l'apprentissage automatique.
  • Les Big Data fournissent une grande quantité de données exploitables dans divers domaines tels que le marketing et la médecine.

Conclusion

Aperçu de la section: Cette section résume les concepts abordés dans cette présentation sur le Machine Learning.

Récapitulatif du Machine Learning

  • Le Machine Learning est un sous-domaine de l'intelligence artificielle qui permet aux machines d'apprendre à partir de données et d'effectuer des tâches de manière autonome.
  • Les ordinateurs peuvent apprendre progressivement grâce aux Big Data et imiter certaines compétences humaines.

Prochaines étapes

  • La présentation continuera avec une exploration détaillée des principaux algorithmes de Machine Learning et leur utilisation appropriée.
  • Des exemples concrets seront donnés pour illustrer les concepts théoriques abordés.
  • L'aspect mathématique sous-jacent aux algorithmes sera également brièvement exploré.

Introduction à l'optimisation et aux algorithmes de machine learning

Cette section explique la différence entre les algorithmes de machine learning et les algorithmes de programmation classique.

Algorithmes de programmation classique

  • Les algorithmes de programmation classique sont pré-définis et fixes.
  • On définit un algorithme à l'avance, qui prend des données en entrée et renvoie un résultat en sortie.
  • Exemple : une fonction qui effectue une division entre deux nombres.

Algorithmes de machine learning

  • Les algorithmes de machine learning ne sont pas fixés à l'avance.
  • Ils se créent étape par étape au fur et à mesure du processus d'apprentissage.
  • On fournit uniquement des données en entrée et en sortie à l'ordinateur.
  • L'ordinateur apprend par lui-même à créer une règle d'apprentissage pour prédire des résultats.
  • Exemple : prédiction du prix d'une maison en fonction de ses caractéristiques.

Utilisations du machine learning

Cette section présente différentes utilisations du machine learning.

Prédictions

  • Prédiction de la température, des résultats sportifs, des maladies génétiques, etc.
  • L'algorithme apprend à associer les données d'entrée aux résultats souhaités.

Groupements (clusters)

  • Regroupement automatique de sites web selon leur thème ou d'individus selon leurs caractéristiques physiques.

Apprentissage de stratégies optimales

  • L'algorithme apprend les meilleures stratégies pour gagner à un jeu, faire du trading financier, etc.

Conclusion

Le machine learning permet de créer des algorithmes qui apprennent à partir de données et sont capables de prédire des résultats, regrouper des éléments ou apprendre des stratégies optimales. C'est une approche différente de la programmation classique où les algorithmes sont pré-définis.

Introduction à l'apprentissage automatique

Aperçu de la section: Dans cette partie, nous allons explorer les différents types d'apprentissage automatique et leur importance en fonction des tâches à effectuer.

Apprentissage supervisé

  • L'apprentissage supervisé consiste à prédire une variable cible étiquetée dans les données.
  • Il y a deux problèmes principaux dans l'apprentissage supervisé : la régression et la classification.

Apprentissage non supervisé

  • L'apprentissage non supervisé ne nécessite pas de variable cible étiquetée.
  • Le modèle cherche à trouver des structures sous-jacentes et des regroupements parmi les données fournies.

Apprentissage par renforcement

  • L'apprentissage par renforcement est un cas particulier où les données sont fournies au fur et à mesure de la modélisation.
  • Un agent apprend une stratégie optimale en prenant des actions, recevant des récompenses positives ou négatives en fonction des résultats.

Apprentissage non supervisé

Aperçu de la section: L'apprentissage non supervisé ne nécessite pas de variable cible étiquetée. Les données sont utilisées pour trouver des structures et des regroupements.

  • En apprentissage non supervisé, les données ne sont pas étiquetées.
  • Le modèle cherche à trouver des structures sous-jacentes et à créer des clusters parmi les données fournies.
  • Cela peut être utilisé pour le clustering en marketing ou pour regrouper des individus selon leurs caractéristiques physiques.

Apprentissage par renforcement

Aperçu de la section: L'apprentissage par renforcement est un cas particulier où les données sont fournies au fur et à mesure de la modélisation.

  • Dans l'apprentissage par renforcement, les données sont fournies progressivement à l'agent.
  • L'agent apprend une stratégie optimale en prenant des actions et en recevant des récompenses positives ou négatives en fonction des résultats obtenus.

Ces sections couvrent les principaux types d'apprentissage automatique : supervisé, non supervisé et par renforcement. Chacun a ses propres caractéristiques et applications spécifiques.

Les différents types d'apprentissage en machine learning

Aperçu de la section: Dans cette partie, nous abordons les différents types d'apprentissage en machine learning, notamment l'apprentissage supervisé, l'apprentissage non supervisé et le renforcement.

Apprentissage supervisé

  • L'apprentissage supervisé consiste à prédire une variable cible à partir d'autres variables.
  • Il comprend la régression (prédiction de valeurs numériques continues) et la classification (prédiction de catégories).

Apprentissage non supervisé

  • L'apprentissage non supervisé ne nécessite pas de variable cible et vise à découvrir des structures ou des modèles dans les données.
  • Il comprend le regroupement (classification des données similaires) et la réduction de dimensionnalité (réduction du nombre de variables).

Renforcement

  • Le renforcement est basé sur un système d'actions et de récompenses.
  • Les données sont obtenues au cours des actions effectuées par un agent.
  • Cela permet d'obtenir des stratégies optimales pour résoudre des problèmes tels que les jeux, le trading financier ou même les chatbots.

Algorithmes pour l'apprentissage supervisé

Aperçu de la section: Dans cette partie, nous explorons les algorithmes couramment utilisés pour l'apprentissage supervisé, en mettant l'accent sur la régression et la classification.

Régression

  • La régression est utilisée lorsque la variable cible à prédire est quantitative (valeurs numériques continues).
  • Les algorithmes de régression les plus couramment utilisés sont la régression linéaire, l'arbre de décision, la forêt aléatoire, le SVM régresseur et le gradient boosting.

Classification

  • La classification est utilisée lorsque la variable cible à prédire est qualitative (catégories).
  • Les algorithmes de classification populaires incluent la régression logistique, les arbres de décision, la forêt aléatoire et le SVM.
  • Certains problèmes peuvent être traités à la fois comme une régression ou une classification en fonction des caractéristiques des données.

Distinction entre régression et classification

Aperçu de la section: Dans cette partie, nous expliquons comment distinguer les problèmes de régression et de classification.

  • En régression, la variable cible à prédire est quantitative (valeurs numériques continues).
  • En classification, la variable cible à prédire est qualitative (catégories).
  • Il existe des cas où un problème peut être traité à la fois comme une régression ou une classification en fonction des caractéristiques des données.

Ces notes fournissent un aperçu clair et concis du contenu du transcript en utilisant les timestamps disponibles pour faciliter l'étude.

Apprentissage supervisé

Aperçu de la section: Cette section aborde l'apprentissage supervisé en machine learning, où les données d'entrée sont étiquetées et utilisées pour prédire des valeurs continues ou discrètes.

Régression et utilisation d'algorithmes de régression

  • Les prédictions peuvent être décimales dans une plage de 0 à 20.
  • L'utilisation d'algorithmes de régression est nécessaire pour traiter ces cas.
  • Les résultats peuvent être testés en utilisant différents algorithmes.

Utilité de l'apprentissage supervisé

  • L'apprentissage supervisé est utile dans divers domaines, notamment le marketing.
  • Il peut être utilisé pour segmenter les clients et cibler des publicités spécifiques.
  • Il permet également de regrouper des sites internet en fonction de leur thème.

Gradient Boosting

Aperçu de la section: Cette section explique le concept du gradient boosting, un algorithme puissant utilisé pour améliorer progressivement les performances des modèles simples.

Complexification avec des algorithmes d'ensemble

  • Les algorithmes d'ensemble, comme Random Forest, permettent de complexifier un modèle simple en combinant plusieurs modèles plus simples.
  • Une random forest est composée de multiples arbres de décision dont les performances sont agrégées.

Complexification avec des algorithmes de boosting

  • Le gradient boosting (XGBoost) utilise des arbres de décision comme base et vise à améliorer progressivement leurs performances.
  • Un nouvel algorithme est créé étape par étape en se basant sur les erreurs du précédent.
  • Le gradient est utilisé pour déterminer la direction d'amélioration de l'algorithme.

Prérequis pour le machine learning

Aperçu de la section: Cette section aborde les prérequis nécessaires pour se familiariser avec le machine learning, notamment en termes de programmation et de compréhension des concepts mathématiques.

Programmation Python

  • La maîtrise de Python est essentielle pour implémenter des algorithmes de machine learning.
  • Les librairies Pandas et Scikit-learn sont couramment utilisées.

Compréhension des concepts mathématiques

  • Bien comprendre les concepts mathématiques sous-jacents au machine learning est important pour savoir ce que font les algorithmes.
  • Cependant, pour mettre en pratique les algorithmes, une compréhension approfondie n'est pas toujours nécessaire.

Formation en ligne et accès à la plateforme

Aperçu de la section: Dans cette partie, l'orateur explique comment fonctionne la formation en ligne et l'accès à la plateforme.

Accompagnement à distance

  • Les apprenants ont un accompagnement poussé même à distance.
  • L'accès à une plateforme est fourni pour les apprenants.
  • La plateforme contient des notebooks avec des exercices de régression et de classification.

Projet fil rouge

  • Chaque formation comprend un projet fil rouge qui permet aux apprenants de mettre en pratique leurs compétences.
  • Le projet consiste à traiter un cas concret tout au long de la formation.

Prédiction du remboursement d'un crédit en finance

Aperçu de la section: L'orateur répond à une question sur la possibilité de prédire le remboursement d'un crédit en finance.

  • Il est possible de prédire l'allure du remboursement d'un client bancaire en utilisant des données financières.
  • Ce type de prédiction relève des séries temporelles, où l'évolution en fonction du temps est prévue.
  • Les algorithmes de séries temporelles peuvent tracer les courbes illustratives du remboursement au fil du temps.

Nombre optimal de variables dans les modèles prédictifs

Aperçu de la section: L'orateur aborde le problème du nombre optimal de variables dans les modèles prédictifs pour éviter les erreurs et rendre les prédictions réalistes.

  • L'overfitting est un problème courant dans le machine learning, où le modèle apprend parfaitement les données d'apprentissage mais échoue à généraliser pour de nouvelles données.
  • Il n'y a pas de seuil fixe pour choisir le nombre de variables, cela dépend de l'algorithme utilisé.
  • En régression linéaire, il faut avoir plus d'observations que de variables pour que cela fonctionne correctement.
  • Pour un grand nombre de variables (400 à 500), il est recommandé d'envisager la sélection ou la réduction des dimensions pour conserver les informations pertinentes.
  • Même avec un petit nombre de variables, il est conseillé de faire une sélection dès le début pour réduire le temps nécessaire.

Prédiction des scores d'un match de football

Aperçu de la section: L'orateur répond à une question sur la possibilité de prédire les scores d'un match de football.

  • La prédiction des scores d'un match peut être réalisée en utilisant l'apprentissage supervisé.
  • Selon les besoins, cela peut être un problème de régression ou classification en fonction du type exact de score souhaité (gagnant/perdant ou score exact).

Conclusion et reprise du sujet

Aperçu de la section: L'orateur conclut cette partie et annonce qu'il va reprendre la présentation depuis le début.

  • Le sujet traité jusqu'à présent était l'apprentissage supervisé appliqué à un cas spécifique.
  • La prochaine étape sera d'aborder l'apprentissage non supervisé et la réduction de dimensions.

Les autres parties du transcript ne contiennent pas d'informations pertinentes pour les notes.

Découpage du projet en trois étapes

Aperçu de la section: Dans cette section, nous allons découvrir les trois grandes étapes du projet de machine learning.

Étape 1 : Récupération et exploration des données

  • La première étape consiste à récupérer les données et à effectuer une première exploration pour comprendre leur structure.
  • L'analyse des données sera réalisée en utilisant Python et les bibliothèques classiques telles que Pandas et NumPy.
  • Il est également possible d'utiliser des outils plus avancés comme Power BI pour une visualisation interactive des données.

Étape 2 : Analyse des données

  • L'analyse des données se fait généralement par le biais de la visualisation, en créant des graphiques tels que des histogrammes pour obtenir rapidement des informations pertinentes.
  • L'utilisation de bibliothèques telles que Matplotlib permettra de mettre en évidence certains axes de données importants.

Étape 3 : Modélisation

  • La troisième étape du projet est la modélisation, qui comprend une phase préliminaire de pré-traitement des données pour les rendre adaptées à l'entraînement d'un modèle.
  • Il peut être nécessaire de transformer certaines variables non numériques en variables numériques afin d'entraîner correctement le modèle.
  • Différents modèles seront entraînés et évalués dans cette étape.

Exploration initiale des données

Aperçu de la section: Dans cette section, nous allons explorer les dimensions du dataframe initial et examiner les types de variables présentes.

  • La fonction shape de Pandas permet de connaître le nombre de lignes et de colonnes du dataframe. Dans notre cas, nous avons 545 lignes et un nombre variable de colonnes.
  • Il est important de vérifier si le nombre d'observations est suffisant pour entraîner nos modèles, généralement recommandé d'avoir au moins mille observations.
  • Il faut également s'assurer que le nombre de colonnes n'est pas excessif par rapport au nombre d'observations, afin d'éviter des problèmes de surapprentissage.

Analyse descriptive des données

Aperçu de la section: Dans cette section, nous allons utiliser différentes méthodes pour obtenir des informations statistiques sur les variables du dataframe.

  • La méthode info permet d'obtenir des informations sur les types des variables présentes dans le dataframe. Il est important de vérifier que les types sont cohérents avec nos attentes.
  • La méthode describe fournit des statistiques telles que la moyenne, l'écart-type, la valeur minimale et maximale pour les variables quantitatives. En ajoutant l'argument include='all', on peut obtenir également des informations sur les variables catégorielles.
  • Ces analyses permettent d'avoir un aperçu rapide des données et peuvent aider à identifier d'éventuelles erreurs ou incohérences.

Analyse exploratoire des données

Aperçu de la section: Dans cette section, nous allons aborder l'étape d'analyse exploratoire en se concentrant sur quelques variables explicatives du dataframe.

  • L'une des premières étapes consiste à examiner la distribution de la variable cible, en particulier dans le cas d'un problème de classification. Il est important de vérifier si les catégories sont équilibrées.
  • L'analyse descriptive permet également de se focaliser sur d'autres variables explicatives du dataframe# Découpage du projet en trois étapes

Aperçu de la section: Dans cette section, nous allons découvrir les trois grandes étapes du projet de machine learning.

Étape 1 : Récupération et exploration des données

  • La première étape consiste à récupérer les données et à effectuer une première exploration pour comprendre leur structure.
  • L'analyse des données sera réalisée en utilisant Python et les bibliothèques classiques telles que Pandas et NumPy.
  • Il est également possible d'utiliser des outils plus avancés comme Power BI pour une visualisation interactive des données.

Étape 2 : Analyse des données

  • L'analyse des données se fait généralement par le biais de la visualisation, en créant des graphiques tels que des histogrammes pour obtenir rapidement des informations pertinentes.
  • L'utilisation de bibliothèques telles que Matplotlib permettra de mettre en évidence certains axes de données importants.

Étape 3 : Modélisation

  • La troisième étape du projet est la modélisation, qui comprend une phase préliminaire de pré-traitement des données pour les rendre adaptées à l'entraînement d'un modèle.
  • Il peut être nécessaire de transformer certaines variables non numériques en variables numériques afin d'entraîner correctement le modèle.
  • Différents modèles seront entraînés et évalués dans cette étape.

Exploration initiale des données

Aperçu de la section: Dans cette section, nous allons explorer les dimensions du dataframe contenant nos données.

Dimensions du dataframe

  • Nous utilisons la fonction shape de Pandas pour obtenir le nombre de lignes et de colonnes du dataframe.
  • Dans notre cas, nous avons 545 lignes et un nombre variable de colonnes.
  • Il est important de vérifier si nous avons suffisamment d'observations (lignes) pour entraîner nos modèles, ainsi que de s'assurer que le nombre de colonnes n'est pas excessif.

Informations sur les variables

  • La méthode info permet d'obtenir des informations sur les types des variables dans le dataframe.
  • Il est essentiel de vérifier que les variables numériques sont correctement définies en tant qu'entiers (Integer) et que les variables catégorielles sont définies en tant qu'objets (object).
  • Si nécessaire, il peut être nécessaire de modifier le type des variables, par exemple en convertissant une variable date en type datetime.
  • La méthode describe fournit également des statistiques descriptives telles que la moyenne, l'écart-type, la valeur minimale et maximale pour les variables quantitatives.

Analyse des données

Aperçu de la section: Dans cette section, nous allons aborder l'étape d'analyse des données.

Analyse descriptive

  • L'une des premières étapes consiste à examiner la distribution de notre variable cible.
  • Pour un problème de classification, il est important de vérifier si les catégories sont équilibrées ou non.
  • L'analyse descriptive permet également d'examiner certaines variables explicatives du dataframe.

Autres axes d'étude

  • En plus de l'analyse descriptive, il peut être intéressant de se pencher sur d'autres aspects, tels que la corrélation entre les variables ou l'identification des variables les plus influentes.
  • Ces analyses peuvent être réalisées à l'aide de différentes techniques statistiques et graphiques.

Les autres parties du transcript ne contiennent pas suffisamment d'informations pour être résumées.

Video description

Ne manquez pas ce Data Atelier animé par Manon qui s'attèlera à une introduction générale au Machine Learning. C'est au travers d'une étude de cas qu'elle présentera les principaux concepts et algorithmes de façon théorique. Elle abordera aussi le background mathématique qui se cache derrière les différents modèles permettant ainsi de mieux comprendre leurs fonctionnements