Menu
CoddyTech

Conjuntos de entrenamiento y prueba

Parte de la sección Aprendizaje supervisado del Journey de Machine Learning de Coddy. Lección 2 de 58.

Un modelo puede memorizar las filas que estudió, así que probarlo con ellas no demuestra nada. En su lugar, oculta algunas filas: el conjunto de prueba representa datos nuevos.

Se barajan doce filas numeradas en orden y se reparten: nueve celdas azules, 10 2 8 1 7 9 3 0 5, etiquetadas como entrenamiento, y tres celdas naranjas, 6 11 4, etiquetadas como prueba

El primer modelo de este recorrido estudió 112 flores de iris y clasificó 38. Esta línea las distribuyó:

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split

iris = load_iris()
X = iris.data
y = iris.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
print(X_train.shape, X_test.shape)

Esto imprime (112, 4) (38, 4). Las cuatro partes siempre aparecen en este orden, y random_state=0 hace que la mezcla se repita.

Entrena con el conjunto de entrenamiento. Abre el conjunto de prueba una sola vez, al final.

challenge icon

Desafío

Fácil

Una cámara nocturna en un bosque capturó 200 animales, cada uno un zorro o un tejón, en camera.csv. ¿Una división dará una prueba equilibrada? El código inicial crea X e y y lee test_size.

  1. Divide los datos usando ese test_size y random_state=0.
  2. Imprime los tamaños como se muestra abajo.
  3. Imprime la proporción de zorros en cada parte, en porcentajes enteros.

Para otro bosque y 0.25:

Train: 90 snapshots
Test: 30 snapshots
Foxes: 52% of train, 47% of test

Pruébalo tú mismo

import pandas as pd

# Una fila por cada captura de la cámara nocturna
camera = pd.read_csv("camera.csv")
X = camera[["minutes_after_sunset", "length_cm", "speed_kmh"]]
y = camera["animal"]
test_size = float(input())

# Escribe tu código a continuación
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Aprendizaje supervisado

Practica por tu cuenta: Compilador de Python online