Fermer

octobre 7, 2022

Prétraitement des données dans l’apprentissage automatique


Introduction:

Pré-traitement des données est une technique d’exploration de données qui consiste à transformer des données brutes en un format compréhensible. Les données du monde réel sont souvent incomplètes, incohérentes et/ou manquent de certains comportements ou tendances, et sont susceptibles de contenir de nombreuses erreurs. Le prétraitement des données est une méthode éprouvée pour résoudre ces problèmes. Lorsque nous parlons de données, nous pensons généralement à de grands ensembles de données avec un grand nombre de lignes et de colonnes. Bien que ce soit un scénario probable, ce n’est pas toujours le cas – les données peuvent se présenter sous de nombreuses formes différentes : tableaux structurés, images, fichiers audio, vidéos, etc.

Apprentissage automatique les algorithmes ne fonctionnent pas si bien avec le traitement des données brutes. Avant de pouvoir transmettre ces données à un algorithme ML, nous devons les prétraiter. En d’autres termes, nous devons lui appliquer des transformations. Avec le prétraitement des données, nous convertissons les données brutes en un ensemble de données propre.

Les étapes utilisées pour le prétraitement des données sont: –

  1. Importer des bibliothèques. La première étape consiste généralement à importer les bibliothèques qui seront nécessaires dans le programme.
  2. Obtenir l’ensemble de données
  3. Exploration ou analyse de données
  4. Prise en charge des données manquantes dans l’ensemble de données
  5. Encodage des données catégorielles
  6. Fractionnement de l’ensemble de données en ensemble d’apprentissage et en ensemble de test
  7. Mise à l’échelle des fonctionnalités

Nous avons utilisé un ensemble de données titanesque pour une meilleure compréhension. Il s’agit d’un ensemble de données très connu et c’est souvent la première étape d’un étudiant dans la classification de l’apprentissage automatique. Nous allons effectuer un prétraitement de base sur l’ensemble de données.

Base de données:

Base de données

Allons-y et commençons: –

1) Importer des bibliothèques

import pandas as pd
import numpy as np
import os
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
  • NumPy: -NumPy est une bibliothèque Python utilisée pour travailler avec des tableaux. Il a également des fonctions pour travailler dans le domaine de l’algèbre linéaire, de la transformée de Fourier et des matrices.
  • pandas: -Pandas est utilisé pour analyser les données.
  • marin: -Seaborn est une bibliothèque qui utilise Matplotlib en dessous pour tracer des graphiques. Il sera utilisé pour visualiser des distributions aléatoires.
  • matplotlib: -Matplotlib est une bibliothèque de traçage de graphes de bas niveau en python qui sert d’utilitaire de visualisation.

2)Get le jeu de données

  • train = pd.read_csv(« train.csv »)

L’instruction ci-dessus est utilisée pour lire l’ensemble de données dans la trame de données pandas.
train est le nom du jeu de données et read_csv est une fonction pandas importante pour lire les fichiers csv et effectuer des opérations dessus.

3)Exploration/analyse des données

2

Cela donne des informations sur le jeu de données

3

  • train.describe()4

Ceci décrit le nombre, min, max, etc. de chaque colonne de notre ensemble de données

4)Prise en charge des données manquantes dans l’ensemble de données

  • sns.heatmap(train.isnull(),yticklabels=False,cbar=False,cmap=’viridis’)

5

Fig : Heatmap pour vérifier les valeurs nulles

Data Intelligence - L'avenir du Big Data
L’avenir des mégadonnées

Avec quelques conseils, vous pouvez créer une plate-forme de données adaptée aux besoins de votre organisation et tirer le meilleur parti de votre capital de données.

Obtenir le guide

Ici, ces tirets jaunes montrent que nous avons des informations manquantes. Ainsi, nous pouvons simplement jeter un coup d’œil sur nos données à partir d’une vue d’ensemble très éloignée et vérifier que oui, il nous manque des informations sur l’âge et de nombreuses informations sur la cabine.
La proportion d’âge manquant est probablement plus faible pour un remplacement raisonnable d’une certaine forme d’imputation, ce qui signifie que nous pouvons utiliser la connaissance d’autres colonnes pour remplir des valeurs raisonnables.
En regardant la colonne de la cabine, il semble qu’il nous manque juste trop de ces données pour en faire quelque chose d’utile à un niveau de base. Nous allons probablement supprimer cette colonne.

Il existe de nombreuses façons de traiter les valeurs manquantes, mais nous allons en utiliser deux
1) Imputer les valeurs manquantes avec la moyenne/médiane
2) Suppression des lignes avec des valeurs manquantes.

Nous allons utiliser la colonne Imputation pour l’âge

  • former[‘Age’].plot.hist(bins=55)

6

Fig : Histogramme pour vérifier l’âge

Ici, nous allons remplir le moyenne âge des passagers
Cependant, nous pouvons même être un peu plus intelligents à ce sujet et vérifier l’âge moyen dans la classe des passagers.

  • boxplot(x=’Pclass’,y=’Age’,data=train)sept

Fig : Boîte à moustaches

Vous trouverez ci-dessous la méthode que nous utilisons pour imputer la colonne d’âge : –

  • former[‘Age’]=train[[‘Age’,’Pclass’]].apply(impute_age,axis=1)

8Et il semble que nous n’ayons plus d’informations manquantes pour la colonne d’âge.
Nous avons réussi à mettre des valeurs qui étaient des suppositions raisonnables pour l’âge des gens en fonction de leur classe.

Maintenant, le problème que nous avons est la colonne de la cabine et honnêtement, il y a trop de points manquants pour faire quelque chose d’utile de cette colonne ici. Mais il y a tellement d’informations manquantes ici qu’il est plus facile d’aller de l’avant et de laisser tomber cette colonne de cabine.

  • drop(‘Cabin’,axis=1,inplace=True)

5) Encodage des données catégorielles

L’algorithme d’apprentissage automatique ne peut pas fonctionner sur des valeurs catégorielles, nous allons donc les convertir en valeurs fictives. Si vous voyez la colonne sexe ici, nous avons une caractéristique catégorique d’homme ou de femme. Un algorithme d’apprentissage automatique ne pourra pas prendre en compte uniquement une chaîne d’hommes ou de femmes devra créer une nouvelle colonne dans The King, une valeur zéro ou une pour savoir si quelqu’un est un homme ou non afin d’encoder cette information dans une manière qu’un algorithme d’apprentissage automatique peut le comprendre. Il en va de même pour la colonne d’embarquement.

  • sexe=pd.get_dummies(train[‘Sex’],drop_first=Vrai)
  • embarquer=pd.get_dummies(train[‘Embarked’])
  • train=pd.concat([train,sex,embark],axe=1)
  • goutte([‘Sex’,’Embarked’,’Name’,’Ticket’],axe=1,inplace=Vrai)

6) Fractionner l’ensemble de données

Chaque ensemble de données pour le modèle d’apprentissage automatique doit être divisé en deux ensembles distincts : l’ensemble d’apprentissage et l’ensemble de test.

  • depuis sklearn.model_selection importer train_test_split
  • X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=101)

9

  • x_train – fonctionnalités pour les données d’entraînement
  • x_test – fonctionnalités pour les données de test
  • y_train – variables dépendantes pour les données d’entraînement
  • y_test – variable indépendante pour tester les données

Par conséquent, la fonction train_test_split() inclut quatre paramètres, dont les deux premiers sont pour des tableaux de données. La fonction test_size spécifie la taille de l’ensemble de test. Le test_size peut être .5, .3 ou .2 – cela spécifie le rapport de division entre les ensembles d’apprentissage et de test. Le dernier paramètre, « random_state » définit la graine d’un générateur aléatoire afin que la sortie soit toujours la même.

sept)Mise à l’échelle des fonctionnalités

Mise à l’échelle des fonctionnalités marque la fin de la prétraitement des données dans Machine Learning. C’est une méthode pour normaliser les variables indépendantes d’un ensemble de données dans une plage spécifique. Par conséquent, la mise à l’échelle des fonctionnalités limite la plage de variables afin que vous puissiez les comparer sur des bases communes.

Nous pouvons effectuer la mise à l’échelle des fonctionnalités de deux manières : –
1 : Normalisation
2 : Normalisation

Conclusion:

Voilà donc le traitement des données dans le Machine Learning en un mot ! Tout d’abord, nous avons discuté de l’apprentissage automatique avec le prétraitement des données Python. Deuxièmement, nous avons discuté de l’analyse des données et de la visualisation des données pour Python Machine Learning. Cependant, veuillez noter que chaque étape mentionnée ici comporte plusieurs autres sous-thèmes qui méritent leurs propres articles. Les étapes et les techniques que nous avons explorées sont les méthodes de travail les plus utilisées et les plus populaires. Une fois le prétraitement des données terminé, les données peuvent être divisées en ensembles de formation, de test et de validation pour les phases d’ajustement du modèle et de prédiction du modèle. Merci d’avoir lu!

Votre avis compte
S’il vous plaît écrivez vos précieux commentaires…

Liens

https://www.javatpoint.com/data-preprocessing-machine-learning

https://www.upgrad.com/blog/data-preprocessing-in-machine-learning

https://heartbeat.fritz.ai/data-preprocessing-and-visualization-implications-for-your-machine-learning-model-8dfbaaa51423






Source link

octobre 7, 2022