Hola, Machine Learning
Parte de la sección Datos y gráficos del Journey de Machine Learning de Coddy. Lección 1 de 60.
La mayoría de los programas siguen reglas escritas por una persona. Un modelo de aprendizaje automático encuentra sus propias reglas a partir de ejemplos.
Aquí hay 150 flores de iris, cada una representada por un punto según el tamaño de sus pétalos:
¿Ves los tres grupos? Un modelo también puede aprenderlos y después nombrar flores que nunca ha visto.
Desafío
FácilEste programa está listo. Pulsa Run: el modelo estudia 112 flores, después nombra 38 nuevas.
Abre la pestaña Plots para ver sus predicciones. ¿Puedes detectar su único error? Después, envía la solución.
Pruébalo tú mismo
# Pulsa Run para ver cómo aprende un modelo
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
import matplotlib.pyplot as plt
# 150 flores de iris: sus medidas y sus especies
iris = load_iris()
X_learn, X_new, y_learn, y_new = train_test_split(iris.data, iris.target, random_state=0)
# El modelo estudia 112 flores junto con sus respuestas...
model = KNeighborsClassifier()
model.fit(X_learn, y_learn)
# ...y luego identifica 38 flores que nunca ha visto
guesses = model.predict(X_new)
right = (guesses == y_new).sum()
print(f"Studied {len(X_learn)} flowers")
print(f"Named {right} of {len(X_new)} new flowers correctly")
# Cada flor nueva es un punto coloreado según la predicción del modelo; una X roja marca un error
fig, ax = plt.subplots()
for i, name in enumerate(iris.target_names):
picked = guesses == i
ax.scatter(X_new[picked, 2], X_new[picked, 3], label=f"guessed {name}")
wrong = guesses != y_new
ax.scatter(X_new[wrong, 2], X_new[wrong, 3], marker="x", color="red", s=120, label="mistake")
ax.set_title("The model's guesses for 38 new flowers")
ax.set_xlabel("petal length (cm)")
ax.set_ylabel("petal width (cm)")
ax.legend()
plt.show()
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Datos y gráficos
4Dar forma a los datos
Cambiar la forma de los arraysUnir arraysNúmeros aleatoriosRepaso: simulación de dados2Arrays de NumPy
Creación de arraysForma y tamañoRangos de númerosIndexación y segmentaciónRepaso: cuadrícula de temperaturas5Gráficos de líneas y de dispersión
Etiquetas y títulosGráficos de dispersiónVarias líneas y leyendasColores y marcadoresFiguras y ejesRepaso: pasos semanales3Matemáticas con arrays
Operaciones matemáticas con arrays completosEstadísticas resumidasEstadísticas por ejeDifusiónMáscaras booleanasRepaso: calificaciones de exámenes6Gráficos para datos
Gráficos de barrasHistogramasVarios gráficos en unoImágenes como matricesRepaso: informe de precipitacionesPractica por tu cuenta: Compilador de Python online