Table des matières:
Vidéo: Analyse prédictive - Olivier Grisel, à l'USI 2024
Lorsque vous apprenez un nouveau langage de programmation, il est habituel d'écrire le programme "hello world". Pour l'apprentissage automatique et l'analyse prédictive, créer un modèle pour classer l'ensemble de données Iris est son programme équivalent "hello world". Ceci est un exemple plutôt simple, mais il est très efficace dans l'enseignement des bases de l'apprentissage automatique et de l'analyse prédictive.
Comment obtenir l'exemple de jeu de données
Pour créer notre modèle prédictif, vous devez télécharger l'exemple de jeu de données Iris. Cet ensemble de données est disponible gratuitement auprès de nombreuses sources, en particulier dans les institutions académiques qui ont des départements d'apprentissage automatique. Heureusement, les gens étaient assez gentils pour inclure des exemples de jeux de données et des fonctions de chargement de données avec leur paquet. Pour les besoins de ces exemples, vous n'aurez besoin que de quelques lignes de code simples pour charger les données.
Comment étiqueter vos données
Voici une observation et ses caractéristiques de chaque classe de l'ensemble de données Iris Flower.
Longueur de sépale | Largeur de sépale | Longueur de pétale | Largeur de pétale | Classe / étiquette cible |
---|---|---|---|---|
5. 1 | 3. 5 | 1. 4 | 0. 2 | Setosa (0) |
7. 0 | 3. 2 | 4. 7 | 1. 4 | Versicolor (1) |
6. 3 | 3. 3 | 6. 0 | 2. 5 | Virginica (2) |
L'ensemble de données Iris Flower est un véritable jeu de données multivariées de trois classes de la fleur d'Iris ( Iris setosa, Iris virginica, et Iris versicolor ) introduite par Ronald Fisher dans son article de 1936, «L'utilisation de mesures multiples dans les problèmes taxonomiques. "Ce jeu de données est surtout connu pour son utilisation intensive dans les universités pour l'apprentissage automatique et les statistiques.
L'ensemble de données comprend 150 occurrences totales, avec 50 occurrences de chacune des 3 classes de la fleur d'Iris. L'échantillon a 4 caractéristiques (également communément appelées attributs ), qui sont les mesures de longueur et de largeur des sépales et des pétales.
La partie intéressante de cet ensemble de données est que les trois classes sont quelque peu séparables linéairement. La classe Setosa peut être séparée des deux autres classes en traçant une ligne droite sur le graphique qui les sépare. Les classes Virginica et Versicolor ne peuvent pas être parfaitement séparées en utilisant une ligne droite, même si elle est proche. Cela en fait un jeu de données candidat parfait pour l'analyse de classification, mais pas aussi bon pour l'analyse de classification.
Les données de l'échantillon étaient déjà étiquetées. La colonne de droite (Label) ci-dessus montre les noms de chaque classe de la fleur d'Iris.Le nom de la classe est appelé une étiquette ou une cible; il est généralement affecté à une variable nommée y . C'est essentiellement le résultat ou le résultat de ce qui est prédit.
Dans les statistiques et la modélisation, on l'appelle souvent la variable dépendante . Cela dépend des entrées qui correspondent à la longueur et la largeur des sépales et à la longueur et la largeur des pétales.
Vous voudrez peut-être également savoir ce qui différencie l'ensemble de données Iris prétraité de scikit par rapport à l'ensemble de données d'origine. Pour le savoir, vous devez obtenir le fichier de données d'origine. Vous pouvez effectuer une recherche Google pour jeu de données iris et le télécharger ou le consulter dans l'une des institutions académiques.
Le résultat qui revient habituellement en premier est le référentiel d'apprentissage automatique des ensembles de données de l'Université de Californie à Irvine (UCI). L'ensemble de données Iris dans son état d'origine à partir du référentiel d'apprentissage automatique UCI est disponible sur le site web de l'UCI.
Si vous le téléchargez, vous devriez pouvoir le voir avec n'importe quel éditeur de texte. Lors de l'affichage des données dans le fichier, vous remarquerez qu'il y a cinq colonnes dans chaque ligne. Les quatre premières colonnes sont les mesures (appelées caractéristiques ) et la dernière colonne est l'étiquette. L'étiquette diffère entre les versions originale et scikit de l'ensemble de données Iris.
Une autre différence est la première ligne du fichier de données. Il comprend une ligne d'en-tête utilisée par la fonction de chargement de données de scikit. Cela n'a aucun effet sur les algorithmes eux-mêmes.
La normalisation des entités en nombres plutôt qu'en les gardant sous forme de texte facilite le traitement des algorithmes - et il est beaucoup plus efficace en termes de mémoire. Ceci est particulièrement évident si vous exécutez des jeux de données très volumineux avec de nombreuses fonctionnalités - ce qui est souvent le cas dans des scénarios réels.
Voici des exemples de données provenant des deux fichiers. Toutes les colonnes de données sont les mêmes à l'exception de Col5. Notez que scikit a des noms de classe avec des étiquettes numériques; le fichier d'origine a des étiquettes de texte.
Source | Col1 | Col2 | Col3 | Col4 | Col5 |
---|---|---|---|---|---|
scikit | 5. 1 | 3. 5 | 1. 4 | 0. 2 | 0 |
original | 5. 1 | 3. 5 | 1. 4 | 0. 2 | Iris-setosa |
scikit | 7. 0 | 3. 2 | 4. 7 | 1. 4 | 1 |
original | 7. 0 | 3. 2 | 4. 7 | 1. 4 | Iris-versicolor |
scikit | 6. 3 | 3. 3 | 6. 0 | 2. 5 | 2 |
original | 6. 3 | 3. 3 | 6. 0 | 2. 5 | Iris-virginica |