Tu primer modelo entrenado — verificado y auditado, no solo copiado del curso
El Machine Learning es encontrar la función matemática que mapea X (datos de entrada) a y (predicción), usando datos históricos para minimizar el error. Nada más místico que eso.
Churn (abandono de clientes) es clasificación supervisada: tienes historial de quién se fue y quién se quedó.
Corrí el script del curso para verificarlo antes de dártelo. Esto descubrió el árbol solo, mirando 800 clientes de entrenamiento:
Reconstruyó la regla oculta casi palabra por palabra, sin que nadie se la dijera.
Las llamadas a soporte pesan 4x más que los minutos de uso — dato accionable: reducir fricción de soporte probablemente baja el churn más que cualquier campaña de uso.
Datos generados: 1000 clientes. Entrenando modelo... Precision del modelo: 100.00% --- PRUEBA DE FUEGO --- Cliente (Uso: 50min, Llamadas: 8) -> RIESGO DE FUGA Cliente (Uso: 250min, Llamadas: 0) -> CLIENTE FIEL Cliente (Uso: 100min, Llamadas: 2) -> CLIENTE FIEL
El curso dice "esperado >90%" — a mí me dio 100%. El comentario del código dice que la regla tiene "un poco de ruido" — pero leyendo la lógica real, no lo tiene: es determinista pura. Con datos limpios y una regla que un árbol de profundidad 3 puede representar exactamente, 100% no es sospechoso — es lo matemáticamente esperable.
Por qué importa: en datos sintéticos limpios, 100% es normal. En datos reales de tu empresa, un modelo con 100% de precisión casi siempre significa que algo está mal — una columna que filtra la respuesta, o evaluación con los mismos datos de entrenamiento.
Evaluar con los mismos datos que entrenaste es como darle las respuestas del examen al alumno antes de la prueba.
pip install scikit-learn numpy # copia el script del curso en churn_prediction.py python churn_prediction.py
Ya está verificado. Prueba a subir max_depth a 5 o bajarlo a 1 y observa cómo cambia la precisión y la forma del árbol.