Clasificación de Flores Iris con Scikit-learn

Machine LearningMachine LearningBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

Este es un laboratorio paso a paso para demostrar el uso de Scikit-learn, una popular biblioteca de aprendizaje automático en Python. Utilizaremos el Conjunto de Datos Iris, que contiene información sobre los atributos físicos de diferentes tipos de flores de iris. El objetivo de este laboratorio es mostrar cómo utilizar Scikit-learn para realizar tareas básicas de aprendizaje automático, como la carga de datos, el preprocesamiento de datos, la selección de características y la visualización.

Consejos sobre la VM

Una vez que se haya iniciado la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.

A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de las operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.

Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje sus comentarios después de la sesión y lo resolveremos rápidamente para usted.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL sklearn(("Sklearn")) -.-> sklearn/AdvancedDataAnalysisandDimensionalityReductionGroup(["Advanced Data Analysis and Dimensionality Reduction"]) ml(("Machine Learning")) -.-> ml/FrameworkandSoftwareGroup(["Framework and Software"]) sklearn/AdvancedDataAnalysisandDimensionalityReductionGroup -.-> sklearn/decomposition("Matrix Decomposition") ml/FrameworkandSoftwareGroup -.-> ml/sklearn("scikit-learn") subgraph Lab Skills sklearn/decomposition -.-> lab-49166{{"Clasificación de Flores Iris con Scikit-learn"}} ml/sklearn -.-> lab-49166{{"Clasificación de Flores Iris con Scikit-learn"}} end

Importar bibliotecas

Comenzaremos importando las bibliotecas necesarias. En este laboratorio, usaremos Scikit-learn, NumPy y Matplotlib.

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from sklearn import datasets
from sklearn.decomposition import PCA

Cargar el Conjunto de Datos Iris

Cargaremos el Conjunto de Datos Iris utilizando la función load_iris incorporada en Scikit-learn.

iris = datasets.load_iris()
X = iris.data[:, :2]  ## solo tomamos las primeras dos características.
y = iris.target

Visualizar los datos

Visualizaremos el Conjunto de Datos Iris utilizando un diagrama de dispersión. Graficaremos la Longitud del Sépalo contra el Ancho del Sépalo y colorearemos los puntos según su clase.

x_min, x_max = X[:, 0].min() - 0.5, X[:, 0].max() + 0.5
y_min, y_max = X[:, 1].min() - 0.5, X[:, 1].max() + 0.5

plt.figure(2, figsize=(8, 6))
plt.clf()

## Plot the training points
plt.scatter(X[:, 0], X[:, 1], c=y, cmap=plt.cm.Set1, edgecolor="k")
plt.xlabel("Longitud del Sépalo")
plt.ylabel("Ancho del Sépalo")

plt.xlim(x_min, x_max)
plt.ylim(y_min, y_max)
plt.xticks(())
plt.yticks(())

Realizar Análisis de Componentes Principales (PCA)

Realizaremos Análisis de Componentes Principales (PCA) para reducir la dimensionalidad del conjunto de datos. Proyectaremos los datos sobre los primeros tres componentes principales y graficaremos los resultados en 3D.

fig = plt.figure(1, figsize=(8, 6))
ax = fig.add_subplot(111, projection="3d", elev=-150, azim=110)

X_reduced = PCA(n_components=3).fit_transform(iris.data)
ax.scatter(
    X_reduced[:, 0],
    X_reduced[:, 1],
    X_reduced[:, 2],
    c=y,
    cmap=plt.cm.Set1,
    edgecolor="k",
    s=40,
)

ax.set_title("First three PCA directions")
ax.set_xlabel("1st eigenvector")
ax.xaxis.set_ticklabels([])
ax.set_ylabel("2nd eigenvector")
ax.yaxis.set_ticklabels([])
ax.set_zlabel("3rd eigenvector")
ax.zaxis.set_ticklabels([])

Resumen

En este laboratorio, aprendimos cómo cargar el Conjunto de Datos Iris utilizando Scikit-learn, visualizar los datos utilizando Matplotlib y realizar Análisis de Componentes Principales (PCA) utilizando Scikit-learn. También aprendimos cómo proyectar los datos sobre los primeros tres componentes principales y visualizar los resultados en 3D.