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)

Présenter l'algorithme isolation forest

Isolation Forest (forêt d’isolation) est un algorithme de machine learning qui permet de détecter des valeurs 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 avec un tutoriel complet pour utiliser un Random Forest avec Python. 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 »

Comment faire quand la CAH est dépassée?

3 solutions pour faire des clusters avec de gros volumes de données

lovely analytics CAH.png

La CAH permet de créer des groupes d’individus homogènes, c’est une méthode de clustering et elle donne vraiment de bons résultats. L’inconvénient de cette méthode c’est que les temps de calcul peuvent être très longs lorsque le nombre de clients à segmenter augmente. Certains outils refusent même de calculer une CAH à partir d’un certain seuil.

Problème : Comment faire un clustering efficace quand le nombre d’individus devient tellement important qu’on ne peut plus utiliser la CAH?

Lire la suite de « Comment faire quand la CAH est dépassée? »

Inspirez-moi, inspirez-vous

Liens utiles pour Data Scientist

Prenez mes idées j'en aurai d'autresJ’ai commencé ce blog sur l’analyse de données pour moi, puis je me suis rendue compte que je le faisais aussi pour vous. Je me suis demandée jusqu’où je pourrais aller dans mes articles avec toujours un peu d’inquiétude : « Si je publie tout ce que je sais, que me restera t-il? ». Après un peu plus d’un an, je me rends surtout compte que plus on donne et plus on progresse. Chaque article que j’écris sur un sujet que je connaissais déjà me permet d’attaquer un nouveau sujet. Je m’enrichie aussi énormément de vos commentaires et de vos messages d’encouragement.

Coco Chanel a dit « Prenez mes idées j’en aurai d’autres » et j’adore cette citation. Alors j’ai décidé de partager avec vous mes sources d’inspiration.

Chacun de ces liens mérite toute votre attention. D’ailleurs j’espère secrètement que lovelyanalytics est aussi dans votre liste de liens préférés. Alors n’attendez plus et ajoutez cette page à vos favoris, je suis sûre qu’elle vous aidera un jour ou l’autre.

Lire la suite de « Inspirez-moi, inspirez-vous »

Orange, un outil de Data Mining vitaminé

Ma participation à un challenge avec l’outil Orange

lovely analytics Orange fruitful and fun

Cela faisait un moment que j’avais envie de tester Orange, c’est un petit outil de Data Mining entièrement gratuit qui est très ludique. D’ailleurs leur slogan c’est « Data Mining Fruitful and fun » en référence à leur logo : une orange à lunette qui semble super happy de faire du Data Mining. Il n’en fallait pas plus pour attiser ma curiosité et j’ai voulu voir si la promesse d’un outil sympa et coloré était tenue ou non. J’ai donc profité d’un Challenge Data Science pour tester Orange.

Lire la suite de « Orange, un outil de Data Mining vitaminé »

Random Forest, tutoriel pas à pas avec R

Apprenez à utiliser un Random Forest avec R

lovely analytics Random Forest

L’algorithme Random Forest (forêt aléatoire) fait partie de la famille des modèles d’agrégation et donne de très bons résultats dans la plupart des problématiques de prédiction. Je vous propose dans ce tutoriel de voir comment appliquer un algorithme Random Forest avec R de la préparation des données jusqu’à la restitution des résultats.

Lire la suite de « Random Forest, tutoriel pas à pas avec R »

Réseau de neurones comment ça marche ?

lovelyanalytics Réseaux de neuronesS’il y a un algorithme qui fait parler de lui en ce moment, un algorithme que tout le monde veut afficher fièrement sur son CV, c’est bien celui du réseau de neurones (Neural Network). C’est l’algorithme de base qui se cache derrière le Deep Learning et les intelligences artificielles. Il est souvent utilisé pour les reconnaissances d’image et de voix. Mais sans aller jusque là, je vous propose de comprendre comment les réseaux de neurones fonctionnent pour pouvoir les utiliser. Alors accrochez vous, à la fin de l’article vous saurez comment ça marche. 

Lire la suite de « Réseau de neurones comment ça marche ? »

Peut-on devenir Data scientist en suivant des MOOC?

lovelyanalytics-data-scientist

Aujourd’hui tout le monde veut devenir Data scientist et pourquoi? Parce que c’est le métier le plus sexy du XXIe siècle mais surtout, avouons le, parce que le salaire moyen d’un Data scientist est bien supérieur à celui des autres métiers de la Data. Sur internet on trouve plein de conseils pour devenir Data scientist, mais qu’en est-il vraiment, et comment devenir Data scientist?

Lire la suite de « Peut-on devenir Data scientist en suivant des MOOC? »

Apprenez à utiliser 6 algorithmes de machine learning sur R

Apprendre à coder 6 algos avec R

Tutoriel 6 algos.png

GitHub vous connaissez? Je vous en parlais dans un article ici. J’y ai trouvé un tutoriel très intéressant qui présente 6 algorithmes d’apprentissage supervisé avec des détails pour les implémenter sur R. C’est idéal pour se former ou pour revoir ses bases. Je vous en dis un peu plus sur les 6 algorithmes en question :

Lire la suite de « Apprenez à utiliser 6 algorithmes de machine learning sur R »