Isolation Forest comment ça marche ?

Détecter des valeurs atypiques ou extrêmes grâce aux forêts d’isolations (Isolation Forest une méthode de machine learning non supervisée)

La forêt d’isolation est un algorithme de machine learning qui permet de détecter des valeurs extrêmes (outliers) ou atypiques dans un dataset. C’est par exemple une méthode qui donne de bons résultats pour la détection de fraude en identifiant des cas atypiques.

C’est une méthode multi-dimensionnelle assez simple à comprendre (moi en tout cas j’aime beaucoup). Pour en savoir plus sur le fonctionnement de l’algorithme d’isolation forest c’est par ici.

Lire la suite de « Isolation Forest comment ça marche ? »

Random Forest, tutoriel avec Python

Apprenez à créer un algorithme Random Forest avec Python grâce à ce tutoriel pas à pas

Cela faisait un moment que je voulais vous proposer un tutoriel complet avec Python pour réaliser un projet de Data Science assez simple. Je me lance donc dans cet article. Nous allons créer un modèle de prédiction avec un Random Forest en passant par l’ensemble de ces étapes :

  • Chargement des données
  • Exploration et visualisation des données
  • Création d’un échantillon d’apprentissage et de test
  • Phase d’apprentissage avec un algorithme Random Forest
  • Évaluation de la performance sur l’échantillon de test
  • Interprétation des résultats

Pour cela j’ai choisi un dataset disponible sur Kaggle qui contient l’indice de bonheur de chaque pays avec plusieurs variables explicatives.

Lire la suite de « Random Forest, tutoriel avec Python »

Mesurer la performance d’un modèle : Accuracy, recall et precision

Dans mon article sur la performance des modèles je vous présentais la démarche à suivre pour mesurer la performance de vos algorithmes. Il est temps de voir plus en détail quelques uns des indicateurs qui peuvent être utilisés pour y parvenir. Dans cet article, je vais vous présenter 3 indicateurs, adaptés pour évaluer la performance d’un modèle de classification et qui sont calculés à partir de la matrice de confusion. Ils sont assez simples à comprendre et sont très complémentaires : l’accuracy, le recall et la precision

Lire la suite de « Mesurer la performance d’un modèle : Accuracy, recall et precision »

Comment mesurer la performance d’un modèle ?

Dans cet article j’ai envie de vous parler de la performance des modèles au sens large (classification ou régression). Il y a déjà pas mal d’articles pour comprendre les algorithmes (Arbre de décision, Random Forest, Gradient Boosting, …) mais je n’avais pas encore abordé leur évaluation. Pourtant c’est un sujet essentiel. Peu importe votre projet, vous serez forcément amené(e) à devoir évaluer la performance de votre modèle pour mesurer les risques mais également pour comparer plusieurs algorithmes ou plusieurs versions de votre algorithme. Dans cet article je vais vous présenter la démarche globale de mesure de la performance des modèles puis plusieurs articles vous présenteront ensuite les indicateurs à utiliser en fonction du type de modèles.

Lire la suite de « Comment mesurer la performance d’un modèle ? »

Explorez vos données avec pandas_profiling

Dans un projet de Data Science la data prep prend beaucoup de temps par rapport à l’ensemble du projet. Et soyons honnête ce n’est pas forcément la partie la plus intéressante. Mais avant même d’en arriver à cette étape de préparation des données il faut explorer le Data Set pour commencer à appréhender les données que nous allons utiliser. Et cette partie là aussi peut être fastidieuse.

Dans cet article je vous parle de pandas_profiling 🐼 , une librairie Python que j’adore et qui va vous faire gagner un temps fou. Oui oui une librairie Python! Je n’avais pas encore fait d’article Python, seulement quelques liens pour apprendre à coder en Python mais Python prend de plus en plus de place dans mon travail de Data Scientist, j’essayerai donc de vous proposer des articles sur R et Python (pas de jaloux).

Lire la suite de « Explorez vos données avec pandas_profiling »

Règles d’association comment ça marche ?

lovely analytics règles d'association.png

Quand on parle de règles d’association on a souvent en tête l’exemple du panier de supermarché. Je suis sûre que vous avez déjà entendu qu’on avait mis en évidence que l’achat de couche pour bébé le week end impliquait aussi l’achat de bières.

En bref les règles d’association sont des règles du type A implique B. Et sont effectivement souvent utilisées dans l’analyse de paniers d’achats ou pour des outils de recommandation.

Lire la suite de « Règles d’association comment ça marche ? »

Règles d’association avec R

lovely analytics règles d'association avec R.png

Je vous propose de regarder comment utiliser les règles d’association avec R en utilisant l’algorithme apriori.

Pour cet exemple, j’ai choisi le dataset movie, disponible sur Kaggle. On a un ensemble de films notés par les utilisateurs, comme  ça pourrait être le cas par exemple sur Netflix ou sur une autre plateforme de VOD.

Au programme de ce petit tutoriel, nous allons voir les étapes suivantes :

  • Chargement et préparation des données
  • Statistiques descriptives
  • Règles d’association

Lire la suite de « Règles d’association avec R »

Classification bayésienne naïve comment ça marche?

lovely analytics classification bayésienne naive.png

Et si on s’intéressait à un nouvel algorithme de machine learning pour essayer de comprendre comment ça marche. Aujourd’hui ce sera la classification bayésienne naïve (Naive Bayes classifier), un modèle assez simple, robuste et rapide qui se base sur le théorème de Bayes. Cet algorithme est à utiliser pour les problématiques de classement avec des variables explicatives qualitatives. On peut l’utiliser par exemple pour prédire la probabilité d’acheter un produit connaissant les habitudes d’achat dans le passé.

Lire la suite de « Classification bayésienne naïve comment ça marche? »

Comment traiter les valeurs manquantes ?

lovely analytics missing value.pngDans une base de données, il arrive que des données soient manquantes : elles ne sont pas renseignées pour tous les individus. Ce qui rend les choses un peu plus complexes, c’est qu’il y a plusieurs manières de considérer et de traiter (on parle d’imputation des données) ces données manquantes selon les cas. La plus simple et la moins contraignante serait de supprimer les lignes qui contiennent une valeur manquante. Mais attention on risque vite d’éliminer beaucoup d’individus et de se retrouver avec des données qui ne sont plus représentatives.

Lire la suite de « Comment traiter les valeurs manquantes ? »

Premiers pas avec Python

Apprendre à coder avec Python

Apprendre Python.pngRécemment on m’a demandé si je prévoyais d’inclure des exemples avec Python. Good question…
Je ne vois que des points positifs sur le fait d’utiliser Python :
Python et R sont les 2 principaux langages utilisés par les data scientists pour le machine learning. Historiquement, R est issu du monde des statisticiens tandis que Python vient de l’univers des développeurs. Aujourd’hui il y a un vrai battle entre les 2. En 2017, une étude menée par KDnuggets montre même que Python est officiellement passé devant R pour le machine learning et la Data Science :

python-r-other-2016-2017

De ce que j’ai pu lire, si vous partez de zero et que vous ne connaissez ni l’un ni l’autre, il vaut mieux apprendre Python. Cela vous permettra d’être plus à l’aise sur les projets Big Data en utilisant PySpark par exemple (tandis que SparkR n’est pas très développé).
Si vous connaissez plutôt R (comme moi), on ne va pas tout jeter à la poubelle pour autant et on peut tout aussi bien faire de la data science avec R. Mais autant ne pas mourir idiot et tester la concurrence 🙂

Me voici donc, grande débutante Python à vouloir tester et commencer à apprendre.

Lire la suite de « Premiers pas avec Python »