Curso de machine learning práctico con Python
Un curso de machine learning gratis y práctico. Escribe código real de scikit-learn, entrena modelos con datos reales y mira tus gráficos en la pestaña Gráficos, paso a paso.
1,000+ codders inscritos
233 lecciones231 retos965 preguntas de quiz
- Apto para principiantes
Ayuda de codificación con IA
Lecciones interactivas prácticas
Narración de audio en cada lección
Cuestionarios para poner a prueba tu conocimiento
Certificado gratuito de finalización
Entrena un modelo en tu navegador
Código real de scikit-learn con su resultado real. Mueve el control deslizante para cambiar una línea y ver qué aprende el modelo.
Con una k pequeña el modelo memoriza cada punto de entrenamiento y traza una frontera irregular. Con una k mayor, la frontera se suaviza.
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_moons
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
X, y = make_moons(n_samples=200, noise=0.3, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
k = 5
model = KNeighborsClassifier(n_neighbors=k)
model.fit(X_train, y_train)
print(f"train accuracy: {model.score(X_train, y_train):.2f}")
print(f"test accuracy: {model.score(X_test, y_test):.2f}")
xx, yy = np.meshgrid(np.linspace(-2, 3, 56), np.linspace(-1.5, 2, 40))
proba = model.predict_proba(np.c_[xx.ravel(), yy.ravel()])[:, 1]
proba = proba.reshape(xx.shape)
plt.figure(figsize=(5, 4))
plt.pcolormesh(xx, yy, proba, cmap="coolwarm", alpha=0.35)
plt.scatter(X_train[:, 0], X_train[:, 1], c=y_train,
cmap="coolwarm", edgecolors="k")
plt.title(f"k-nearest neighbors, k = {k}")
plt.show()
Programa
Sección 1
Datos y gráficosPágina propia
Empezar secciónEmpezarExpandirContraerEl conjunto de herramientas con el que comienza todo proyecto de machine learning: arrays de NumPy, gráficos de matplotlib y tablas de pandas. Carga conjuntos de datos reales, resúmelos y representa gráficamente lo que encuentres.Introducción
4 lecciones320Arrays de NumPy
5 lecciones520Matemáticas con arrays
6 lecciones625Dar forma a los datos
4 lecciones415Gráficos de líneas y de dispersión
6 lecciones625Gráficos para datos
5 lecciones520DataFrames de pandas
6 lecciones625Filtrado y ordenación
5 lecciones520Agrupar y limpiar
5 lecciones520Graficar DataFrames
5 lecciones520Conjuntos de datos para ML
5 lecciones520Desafíos finales
4 lecciones420Sección 2
Estadística para MLPágina propia
Empezar secciónEmpezarExpandirContraerLa estadística que sustenta cada modelo: medidas de tendencia central y dispersión, distribuciones, probabilidad mediante simulación, muestras, valores atípicos, correlación, líneas de tendencia y pruebas entre grupos; después, escalado y codificación de características. Cada concepto se calcula con datos reales y se representa gráficamente.Centro y dispersión
6 lecciones625Distribuciones
6 lecciones625Probabilidad mediante simulación
6 lecciones625Muestras y poblaciones
5 lecciones520Valores atípicos
5 lecciones520Relaciones
6 lecciones525Líneas de tendencia
6 lecciones625Comparación de grupos
6 lecciones625Escalado de características
5 lecciones520Codificación de categorías
4 lecciones415Exploración de un conjunto de datos
5 lecciones520Desafíos finales
4 lecciones420Sección 3
Aprendizaje supervisadoPágina propia
Empezar secciónEmpezarExpandirContraerEntrena modelos reales con scikit-learn: divide los datos, ajusta el modelo, predice y mide su rendimiento. k-NN, regresión lineal y logística, árboles, bosques y boosting; evaluación rigurosa con validación cruzada y pipelines. Para terminar, un proyecto de pingüinos de principio a fin.Tu primer modelo
5 lecciones520Vecinos más cercanos
5 lecciones520Regresión lineal
5 lecciones520Regresión logística
5 lecciones520Medición de clasificadores
6 lecciones625Árboles de decisión
5 lecciones520Sobreajuste
5 lecciones520Validación cruzada
4 lecciones415Métodos de conjunto
4 lecciones415Canalizaciones
5 lecciones520Proyecto: especies de pingüinos
5 lecciones525Desafíos finales
4 lecciones420Sección 4
Aprendizaje no supervisadoPágina propia
Empezar secciónEmpezarExpandirContraerEncuentra patrones en los datos sin etiquetas: k-means, clustering jerárquico y basado en densidad, PCA para visualizar y comprimir muchas características, y detección de anomalías. Para terminar, un proyecto de exploración de dígitos.Encontrar grupos
5 lecciones520Elegir k
5 lecciones520Interpretación de los clústeres
5 lecciones520Agrupamiento jerárquico
4 lecciones415Agrupamiento por densidad
4 lecciones415Menos dimensiones
5 lecciones520PCA en la práctica
5 lecciones520Detección de anomalías
5 lecciones520Clústeres en acción
4 lecciones415Proyecto: Explorador de dígitos
5 lecciones525Desafíos finales
4 lecciones420
Aprende Haciendo
Escribe código real, consulta bases de datos, crea sitios web y domina los prompts de IA. Nuestras lecciones interactivas cubren todas las habilidades que los desarrolladores modernos necesitan.
Construye tu Racha
¡Mantén la constancia y observa cómo crece tu progreso! Sigue tu hábito diario de programación, protege tu racha con días de congelación y gana recompensas por aparecer cada día.
12 días de racha
¡Vuelve mañana para mantener tu racha!
January 2026
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
21
22
23
24
25
26
27
28
29
30
Doble o Nada
Día 5 de 7
Congelar Racha
2 left
No Estás Solo
Compite en tablas de clasificación globales, invita amigos para ganar recompensas y celebra los logros de los demás. ¡Programar es mejor con amigos!
Aprende de todas las formas
Lee, escucha, ponte a prueba, pregunta a la IA o consulta cualquier cosa que ya hayas estudiado. Cada lección se adapta a ti.
Una variable es un contenedor con nombre que guarda un valor al que puedes hacer referencia más tarde.
En Python, creas una escribiendo el nombre, un signo igual y el valor que quieres guardar.
El valor puede cambiar con el tiempo: reasignar el nombre simplemente lo apunta a un nuevo valor.
Certifícate
Gana certificados por cada curso que completes. Agrégalos a tu perfil de LinkedIn y currículum para mostrar tu experiencia en programación a los empleadores.
Por qué aprender machine learning con Coddy
- Lo ves antes de leerlo. Cada lección empieza con un gráfico o un diagrama: una nube de puntos de flores iris, una frontera de decisión, un dendrograma. Luego escribes el código y tu propio gráfico aparece al lado, en la pestaña Gráficos.
- Python real, librerías reales.
numpy,pandas,matplotlib,scipyyscikit-learnfuncionan en Coddy, en las mismas versiones que usan los científicos de datos, así quemodel.fit(X_train, y_train)aquí esmodel.fit(X_train, y_train)en el trabajo. Nada que instalar, ningún notebook que configurar. - Cuatro secciones en el orden en que se trabaja de verdad: datos y gráficos, estadística para ML, aprendizaje supervisado y, por último, aprendizaje no supervisado. 233 lecciones cortas, cada una con una idea nueva y una tarea para ponerla en práctica.
- Datos reales con historia: flores iris, química del vino, dígitos escritos a mano, pingüinos Palmer. Terminas dos proyectos, un clasificador de especies de pingüinos y un explorador de dígitos, y cada gráfico lleva título y etiquetas, listo para un informe.
Preguntas frecuentes sobre el curso de machine learning
¿Qué es el machine learning?
¿Hay que ser bueno en matemáticas para aprender machine learning?
¿Necesito saber Python antes?
if, bucles, funciones y listas. Es la sección Fundamentos del curso de Python, unas pocas semanas a una hora al día. Todo lo demás, import, NumPy, pandas, matplotlib y scikit-learn, se enseña aquí desde la primera línea.