Scikit Learn - Représentation des données

Comme nous le savons, l'apprentissage automatique est sur le point de créer un modèle à partir de données. À cette fin, l'ordinateur doit d'abord comprendre les données. Ensuite, nous allons discuter de différentes façons de représenter les données afin d'être comprises par ordinateur -

Données sous forme de tableau

La meilleure façon de représenter les données dans Scikit-learn est sous forme de tableaux. Un tableau représente une grille de données 2D où les lignes représentent les éléments individuels de l'ensemble de données et les colonnes représentent les quantités liées à ces éléments individuels.

Exemple

Avec l'exemple donné ci-dessous, nous pouvons télécharger iris dataset sous la forme d'un Pandas DataFrame avec l'aide de python seaborn bibliothèque.

import seaborn as sns
iris = sns.load_dataset('iris')
iris.head()

Production

sepal_length sepal_width petal_length petal_width  species
0        5.1      3.5         1.4             0.2   setosa
1        4.9      3.0         1.4             0.2   setosa
2        4.7      3.2         1.3             0.2   setosa
3        4.6      3.1         1.5             0.2   setosa
4        5.0      3.6         1.4             0.2   setosa

À partir de la sortie ci-dessus, nous pouvons voir que chaque ligne de données représente une seule fleur observée et le nombre de lignes représente le nombre total de fleurs dans l'ensemble de données. En général, nous référons les lignes de la matrice à des échantillons.

En revanche, chaque colonne des données représente une information quantitative décrivant chaque échantillon. En général, nous désignons les colonnes de la matrice comme des caractéristiques.

Données comme matrice de caractéristiques

La matrice de caractéristiques peut être définie comme la disposition du tableau où les informations peuvent être considérées comme une matrice 2D. Il est stocké dans une variable nomméeXet supposé être bidimensionnel de forme [n_samples, n_features]. La plupart du temps, il est contenu dans un tableau NumPy ou un Pandas DataFrame. Comme indiqué précédemment, les échantillons représentent toujours les objets individuels décrits par l'ensemble de données et les caractéristiques représentent les observations distinctes qui décrivent chaque échantillon de manière quantitative.

Données en tant que tableau cible

Avec la matrice de fonctionnalités, notée X, nous avons également un tableau cible. Il est également appelé étiquette. Il est noté y. L'étiquette ou le tableau cible est généralement unidimensionnel et a une longueur de n_ échantillons. Il est généralement contenu dans NumPyarray ou Pandas Series. Le tableau cible peut avoir à la fois les valeurs, les valeurs numériques continues et les valeurs discrètes.

En quoi le tableau cible diffère-t-il des colonnes d'entités?

Nous pouvons distinguer les deux par un point que le tableau cible est généralement la quantité que nous voulons prédire à partir des données, c'est-à-dire en termes statistiques, c'est la variable dépendante.

Exemple

Dans l'exemple ci-dessous, à partir du jeu de données sur l'iris, nous prédisons les espèces de fleurs en fonction des autres mesures. Dans ce cas, la colonne Espèce serait considérée comme l'entité.

import seaborn as sns
iris = sns.load_dataset('iris')
%matplotlib inline
import seaborn as sns; sns.set()
sns.pairplot(iris, hue='species', height=3);

Production

X_iris = iris.drop('species', axis=1)
X_iris.shape
y_iris = iris['species']
y_iris.shape

Production

(150,4)
(150,)