Scikit learn : Comment utiliser la bibliothèque Scikit-learn pour des projets de science des datas

Sommaire

La bibliothèque Python polyvalente offre de puissants outils d’apprentissage machine pour l’analyse et l’exploration de données.

La bibliothèque Python Scikit-learn, initialement publiée en 2007, est couramment utilisée pour résoudre des problèmes d’apprentissage machine et de science des données, du début à la fin. Cette bibliothèque polyvalente offre une API simple, cohérente et efficace ainsi qu’une documentation en ligne complète.

Qu’est-ce que Scikit-learn ?

Scikit-learn est une bibliothèque Python open source qui dispose d’outils puissants pour l’analyse et l’exploration de données. Elle est disponible sous la licence BSD et est construite sur les bibliothèques d’apprentissage machine suivantes :

– NumPy, une bibliothèque pour la manipulation de tableaux et de matrices multidimensionnels. Elle dispose également d’une vaste compilation de fonctions mathématiques permettant d’effectuer divers calculs.

– SciPy, un écosystème composé de diverses bibliothèques permettant d’effectuer des tâches de calcul technique.

– Matplotlib, une bibliothèque permettant de tracer divers tableaux et graphiques.

Scikit-learn propose une vaste gamme d’algorithmes intégrés qui permettent de tirer le meilleur parti des projets de science des données.

Voici les principaux modes d’utilisation de la bibliothèque Scikit-learn.

  1. Classification

Les outils de classification identifient la catégorie associée aux données fournies. Par exemple, ils peuvent être utilisés pour classer les messages électroniques en tant que spam ou non.

Les algorithmes de classification de Scikit-learn comprennent

– les machines à vecteurs de support (SVM)

– Voisins les plus proches

– Forêt aléatoire

  1. Régression

La régression consiste à créer un modèle qui tente de comprendre la relation entre les données d’entrée et de sortie. Par exemple, les outils de régression peuvent être utilisés pour comprendre le comportement des prix des actions.

Les algorithmes de régression comprennent :

– MVC

– Régression des crêtes

– Lasso

  1. Regroupement

Les outils de regroupement Scikit-learn sont utilisés pour regrouper automatiquement les données ayant les mêmes caractéristiques en ensembles. Par exemple, les données sur les clients peuvent être segmentées en fonction de leurs localités.

Les algorithmes de regroupement comprennent :

– K-means

– Regroupement spectral

– Mean-shift

  1. Réduction de la dimensionnalité

La réduction de la dimensionnalité diminue le nombre de variables aléatoires à analyser. Par exemple, pour augmenter l’efficacité des visualisations, les données périphériques peuvent ne pas être prises en compte.

Les algorithmes de réduction de la dimensionnalité comprennent :

– l’analyse en composantes principales (ACP)

– Sélection des articles

– Factorisation de la matrice non négative

  1. Sélection du modèle

Les algorithmes de sélection de modèles offrent des outils pour comparer, valider et sélectionner les meilleurs paramètres et modèles à utiliser dans vos projets de science des données.

Les modules de sélection de modèles qui peuvent offrir une précision accrue grâce au réglage des paramètres comprennent

– Recherche de grille

– Validation croisée

– Métriques

  1. Prétraitement

Les outils de prétraitement Scikit-learn sont importants pour l’extraction et la normalisation des caractéristiques pendant l’analyse des données. Par exemple, vous pouvez utiliser ces outils pour transformer les données d’entrée, comme le texte, et appliquer leurs caractéristiques dans votre analyse.

Les modules de prétraitement comprennent :

– Prétraitement

– Extraction de caractéristiques

Un exemple de bibliothèque Scikit-learn

Utilisons un exemple simple pour illustrer comment vous pouvez utiliser la bibliothèque Scikit-learn dans vos projets de science des données.

Nous utiliserons l’ensemble de données sur la fleur d’iris, qui est incorporé dans la bibliothèque Scikit-learn. L’ensemble de données sur la fleur d’iris contient 150 détails sur trois espèces de fleurs :

– Setosa-labelé 0

– Marquage Versicolor 1

– Virginie – labellisé 2

L’ensemble de données comprend les caractéristiques suivantes de chaque espèce de fleur (en centimètres) :

– Longueur des sépales

– Largeur des sépales

– Longueur des pétales

– Largeur des pétales

Étape 1 : Importation de la bibliothèque

Comme l’ensemble de données Iris est inclus dans la bibliothèque scientifique Scikit-learn, nous pouvons le charger dans notre espace de travail comme suit :

from sklearn import datasets

iris = datasets.load_iris()

Ces commandes importent le module des ensembles de données depuis sklearn, puis utilisent la méthode load_digits() des ensembles de données pour inclure les données dans l’espace de travail.

Étape 2 : Obtenir les caractéristiques des ensembles de données

Le module des ensembles de données contient plusieurs méthodes qui permettent de se familiariser plus facilement avec le traitement des données.

Dans Scikit-learn, un ensemble de données fait référence à un objet semblable à un dictionnaire qui contient tous les détails sur les données. Les données sont stockées à l’aide de la clé .data, qui est une liste de tableaux.

Par exemple, nous pouvons utiliser iris.data pour produire des informations sur le jeu de données de la fleur d’iris.

print(iris.data) Voici la sortie (les résultats ont été tronqués) : [[5.1 3.5 1.4 0.2]

[4.9 3.  1.4 0.2]

[4.7 3.2 1.3 0.2]

[4.6 3.1 1.5 0.2]

[5.  3.6 1.4 0.2]

[5.4 3.9 1.7 0.4]

[4.6 3.4 1.4 0.3]

[5.  3.4 1.5 0.2]

[4.4 2.9 1.4 0.2]

[4.9 3.1 1.5 0.1]

[5.4 3.7 1.5 0.2]

[4.8 3.4 1.6 0.2]

[4.8 3.  1.4 0.1]

[4.3 3.  1.1 0.1]

[5.8 4.  1.2 0.2]

[5.7 4.4 1.5 0.4]

[5.4 3.9 1.3 0.4]

[5.1 3.5 1.4 0.3]

Utilisons également iris.target pour nous donner des informations sur les différentes étiquettes des fleurs.

print(iris.target)

Voici la sortie :

[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2

2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

2 2]

Si nous utilisons iris.target_names, nous produirons un tableau des noms des étiquettes trouvées dans l’ensemble de données.

print(iris.target_names)

Voici le résultat après avoir exécuté le code Python :

[‘setosa’ ‘versicolor’ ‘virginica’]

Étape 3 : Visualisation de l’ensemble des données

Nous pouvons utiliser le box plot pour produire une représentation visuelle de l’ensemble des données sur la fleur d’iris. Le box plot illustre la manière dont les données sont réparties sur le plan à travers leurs quartiles.

Voici comment y parvenir :

import seaborn as sns

box_data = iris.data #variable representing the data array

box_target = iris.target #variable representing the labels array

sns.boxplot(data = box_data,width=0.5,fliersize=5)

sns.set(rc={‘figure.figsize’:(2,15)})

Voyons le résultat :

Sur l’axe horizontal :

– 0 est la longueur des sépales

– 1 est la largeur des sépales

– 2 est la longueur du pétale

– 3 est la largeur des pétales

L’axe vertical correspond aux dimensions en centimètres.

Résumé

Voici le code complet de ce simple tutoriel Scikit-learn data science.

from sklearn import datasets

iris = datasets.load_iris()

print(iris.data)

print(iris.target)

print(iris.target_names)

import seaborn as sns

box_data = iris.data #variable representing the data array

box_target = iris.target #variable representing the labels array

sns.boxplot(data = box_data,width=0.5,fliersize=5)

sns.set(rc={‘figure.figsize’:(2,15)})

Scikit-learn est une bibliothèque Python polyvalente que vous pouvez utiliser pour réaliser efficacement des projets de science des données.

Partager sur
Facebook
Twitter
LinkedIn

Le choix des éditeurs