11°

~/blog/tutorial

Tutoriales

Guías paso a paso, reproducibles y probadas en hardware propio.

Todos los escritos

Portada: Red neuronal explicada: igualó al boosting con 2.177 pesos, y cambiar la semilla le movió el AUC 0,004TutorialRed neuronal explicada: igualó al boosting con 2.177 pesos, y cambiar la semilla le movió el AUC 0,004Qué es una red neuronal, qué hace cada capa y cuándo falla, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. Una capa oculta de 128 unidades, 2.177 pesos y 81 KB, llegó a AUC 0,883 en la prueba de 2016-2026: la misma cifra que un boosting de 2,1 MB, con 0,40 ms por fila contra 3,09. Entrenarla costó cinco veces más, y repetir el entrenamiento cambiando solo la semilla movió el AUC de validación entre 0,881 y 0,884.#Machine learning#Algoritmos#PythonPortada: Transformer explicado: quedó bajo tres modelos más simples, y entre las candidatas de arriba la rejilla ordenó al revésTutorialTransformer explicado: quedó bajo tres modelos más simples, y entre las candidatas de arriba la rejilla ordenó al revésQué es un Transformer, qué hace la atención y cuándo falla, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. La red elegida tiene 9.633 parámetros y 49 KB, y quedó por debajo del boosting, del bosque y de una red de una capa. Lo que más enseña no es el ranking: entre las seis arquitecturas que competían, el orden de la validación se invirtió en la prueba.#Machine learning#Algoritmos#PythonPortada: KNN explicado: entrenar tardó 0,007 s, predecir 5,5 s y con k = 1 memorizó lo que vioTutorialKNN explicado: entrenar tardó 0,007 s, predecir 5,5 s y con k = 1 memorizó lo que vioQué es k vecinos más cercanos, por qué hay que escalar, cómo elegir k y cuándo falla, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. Ajustar con las 74.145 filas tomó 0,007 s y puntuar la prueba de 2016-2026, 5,5 s con un hilo; con k = 1 dio AUC 1,000 en sus propios días de entrenamiento y 0,69 en validación. Con k = 100 llegó a 0,870, bajo un boosting y sobre la regresión logística.#Machine learning#Algoritmos#PythonPortada: Naive Bayes explicado: entrenó en 0,008 s y pesa 1,3 KB, pero el 62 % de sus probabilidades quedó en los bordesTutorialNaive Bayes explicado: entrenó en 0,008 s y pesa 1,3 KB, pero el 62 % de sus probabilidades quedó en los bordesQué es Naive Bayes, qué significa la suposición de independencia y cuándo falla, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. Ajustar con 74.145 filas tomó 0,008 s y el modelo ocupa 1,3 KB, con AUC 0,822; por tramos llegó a 0,844, sin diferencia concluyente con la regresión logística. El 62 % de sus probabilidades quedó bajo 0,01 o sobre 0,99, y calibrarlo bajó la pérdida logarítmica de 1,09 a 0,39.#Machine learning#Algoritmos#PythonPortada: SVM explicada: la presión en Pa hundió el AUC a 0,555 y el kernel exacto tardó 51 segundosTutorialSVM explicada: la presión en Pa hundió el AUC a 0,555 y el kernel exacto tardó 51 segundosQué es una máquina de vectores de soporte, qué hacen el margen, C y gamma, y cuándo falla, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. Sin escalar, cambiar la presión de kPa a Pa bajó el AUC en validación de 0,835 a 0,555; con las 74.145 filas el kernel RBF tardó 51 s y, en la prueba de 2016-2026, quedó bajo un boosting que entrenó en 2,6 s.#Machine learning#Algoritmos#PythonPortada: Árbol de decisión explicado: 15 nodos que se leen, 8.524 hojas que memorizanTutorialÁrbol de decisión explicado: 15 nodos que se leen, 8.524 hojas que memorizanQué es un árbol de decisión, cómo elige sus preguntas y cuándo memoriza, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. Sin límite de profundidad acertó todo lo que vio y en días nuevos bajó a AUC 0,689; con profundidad 7, elegida en validación, llegó a 0,862.#Machine learning#Algoritmos#PythonPortada: Gradient boosting explicado: 594 árboles en cadena que entrenan 9 veces más rápido que un bosqueTutorialGradient boosting explicado: 594 árboles en cadena que entrenan 9 veces más rápido que un bosqueQué es gradient boosting, cómo cada árbol corrige a los anteriores y cuándo falla, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. Con tasa 1,0 se desestabilizó y a las 3.000 rondas quedó en AUC 0,681; con tasa 0,03 y 594 rondas elegidas en validación llegó a 0,883, sin diferencia concluyente con un bosque de 200 árboles.#Machine learning#Algoritmos#PythonPortada: K-Means explicado: le pedí cuatro tipos de día al clima de Chile y encontró SantiagoTutorialK-Means explicado: le pedí cuatro tipos de día al clima de Chile y encontró SantiagoQué es K-Means, cómo funciona el algoritmo de Lloyd y cuándo engaña, medido con clima diario de siete ciudades de Chile entre 1984 y 2026. Sin escalar, la humedad aporta el 76 % de la separación; con k = 8, solo el 18 % de los inicios al azar queda a menos de 0,1 % de la mejor inercia encontrada; y ningún criterio se pone de acuerdo en cuántos grupos hay.#Machine learning#Algoritmos#PythonPortada: Random Forest explicado: cómo vota un bosque de árboles, medido con 42 años de clima de ChileTutorialRandom Forest explicado: cómo vota un bosque de árboles, medido con 42 años de clima de ChileQué es Random Forest, cómo funcionan el bootstrap y el sorteo de variables, y por qué sus árboles se entrenan en paralelo y no en cadena. Lo medí prediciendo lluvia en siete ciudades de Chile: 7,5 veces más rápido con 8 CPU, meseta pasados los 100 árboles, una columna de ruido que la importancia por defecto pone por encima de variables reales y un techo al extrapolar temperaturas.#Machine learning#Algoritmos#PythonPortada: Regresión lineal explicada: la recta que midió el calor en Chile y lo que la rompeTutorialRegresión lineal explicada: la recta que midió el calor en Chile y lo que la rompeQué es la regresión lineal, cómo se calculan sus coeficientes y cuándo deja de servir, medido con datos diarios de siete ciudades de Chile. La máxima sube 0,33 °C por década en Temuco y baja en Valparaíso, el descenso de gradiente sin escalar no llega a una solución útil, un 5 % de datos con la coma corrida multiplica el error por 4,7 y la recta entrena unas 1.100 veces más rápido que un bosque aleatorio.#Machine learning#Algoritmos#PythonPortada: Regresión logística explicada: 16 números para decidir si llueve mañanaTutorialRegresión logística explicada: 16 números para decidir si llueve mañanaQué es la regresión logística, cómo convierte una suma en probabilidad y cuándo engaña, medida con clima diario de siete ciudades de Chile entre 1984 y 2026. Una recta da probabilidades negativas en el 9 % de los días; con umbral 0,5 la logística atrapa solo la mitad de las lluvias; y promete más lluvia de la que cae.#Machine learning#Algoritmos#PythonPortada: Corrí AIFS 2.0, el modelo de clima de ECMWF, en mi tarjeta de escritorio y quedé a 0.45 °C del pronóstico oficialTutorialCorrí AIFS 2.0, el modelo de clima de ECMWF, en mi tarjeta de escritorio y quedé a 0.45 °C del pronóstico oficialECMWF publicó los pesos de su modelo de pronóstico con IA. Pesa menos de un giga y corre en una tarjeta de escritorio: 48 horas de pronóstico en 108 segundos y 5.77 GB de memoria, o 33 minutos si no tienes GPU. Lo instalé paso a paso, lo comparé contra el modelo físico operativo del mismo centro y anoté los dos tropiezos que casi me hacen publicar un disparate.#Modelos#GPU#ClimaPortada: Pocket TTS: cloné mi voz en un CPU de 2019, sin GPU y sin nubeTutorialPocket TTS: cloné mi voz en un CPU de 2019, sin GPU y sin nubeUn modelo de voz de 209 MB que corre en CPU, clona una voz con 25 segundos de referencia y permite uso comercial citando la fuente. Instalación paso a paso, métricas medidas en un i5 de 2019 y mi opinión honesta frente a ElevenLabs y compañía.#IA#AudioPortada: Agatha: cómo convertí YouTube en un disco duro con corrección de erroresTutorialAgatha: cómo convertí YouTube en un disco duro con corrección de erroresAgatha codifica cualquier archivo binario en frames de video 4K, los sube a YouTube y los recupera con 100% de fidelidad usando corrección de errores BCH. Cómo funciona, requisitos y ejemplos reales verificados por SHA256.#Sistemas#Investigación