Resumen
Sebastián Tinoco, Senior Data Scientist en Accenture y exprofesor del curso "Laboratorio de programación científica para ciencia de datos" del magíster de la Universidad de Chile, cuenta su trayectoria: de estudiar comercial y economía a la ciencia de datos, pasando por el magíster. Explica por qué la formación formal le dio seguridad más que utilidad diaria directa. Describe el curso, que busca profesionalizar el código de machine learning (pipelines, Optuna, SHAP, FastAPI, Docker, Airflow, forecasting, agentes y LLMs), se evalúa con laboratorios semanales y un proyecto semestral, y es público en GitHub. Se discuten Python frente a R, Gradio frente a Streamlit, la falta de nubes en el curso y cómo incorporar IA generativa al aprendizaje. En la segunda parte presenta su tesis: simulación con reinforcement learning (Q-learning, procesos de decisión de Markov) de dos algoritmos que fijan precios en un modelo de Bertrand diferenciado. Concluye que con inflación aumenta el sobreprecio por colusión algorítmica respecto de un escenario sin inflación.
Capítulos
- 00:00Introducción y Presentación de SebastiánSe presenta al invitado, a cargo de un curso de laboratorio de programación científica, y su tesis sobre reinforcement learning y procesos de decisión de Markov. Sebastián se presenta: 30 años, estudió Comercial con mención en Economía en la Universidad de Chile.
- 00:47Antecedentes y Trayectoria Profesional de SebastiánTrabajó en el sector público y encontró poco atractivo que los proyectos se apoyaran en política y no en datos. Salió de ahí y descubrió la ciencia de datos mediante cursos hasta llegar al magíster.
- 02:46Transición a la Ciencia de DatosFue de la primera generación del magíster de la Universidad de Chile. Afirma que se puede llegar a data science desde otras áreas, incluso humanidades, aunque con dificultades.
- 03:48La Importancia de la Educación Formal en Ciencia de DatosYa trabajaba como científico de datos, pero sabía implementar modelos sin entender lo que ocurría por debajo. Tomó el magíster por esa inquietud y para tener respaldo ante terceros.
- 04:42Equilibrando Trabajo y EducaciónEl magíster exige dedicación completa y no es compatible con trabajar. Tiene un fuerte tinte académico (casi todas las tesis apuntan a publicaciones) y buenos profesores. Hoy es Senior Data Scientist en Accenture con unos 5 años de experiencia.
- 06:29Pasatiempos y Vida Personal de SebastiánVive con su pareja y su perro salchicha Coligüe. Le gustan los videojuegos (juega Pokémon Z), el trekking y su Pokémon favorito es Celebi/Heracross (el ASR dice "Casor"; no queda claro cuál es) y de la 3ª generación Blaziken.
- 09:11Diferencia entre Magister y MScSe aclara que el magíster chileno es más investigativo que un Master of Science. Sebastián dice que en la práctica rara vez se discute la teoría de un modelo con colegas, pues se trabaja de forma empírica optimizando métricas. El conocimiento profundo le da seguridad para convencer y respaldar proyectos. Los demás agregan que sin entender bien se pueden cometer errores sin notarlo.
- 12:53El Camino de Estudiante a ProfesorRenunció a su trabajo para dedicarse al magíster con sus ahorros; fue ayudante y luego profesor del ramo, que nació de un estudiante y se ha ido heredando entre estudiantes. Se llama "Laboratorio de programación científica para ciencia de datos". El curso nació porque el magíster necesitaba un ramo de programación para ciencia de datos.
- 16:38Introducción al Curso de Programación Científica para Ciencia de DatosEl repositorio del curso es público en GitHub y sus clases son autocontenidas. Rodrigo (Rodo) menciona que dicta en paralelo el curso de proyecto de ciencia de datos, y se discute que el programa publicado puede estar algo desactualizado.
- 20:30Estructura, HistoriaEl curso apunta a que estudiantes con teoría de ML previa programen soluciones de forma profesional, saliendo del Jupyter Notebook hasta un despliegue productivo. Fue creado por Pablo Padilla y pasó por varios profesores (Matías Rojas, Mauricio Araneda, Ignacio Mesa, Stefano y Sebastián). Se explica por qué se usa Python en lugar de R: es el más usado en la industria y se integra mejor con despliegues.
- 27:46Contenido del CursoUnidad 1: fundamentos (Python, Jupyter, NumPy, Pandas, plotting). Unidad 2: machine learning con scikit-learn y sus pipelines, Optuna para hiperparámetros (muestreo bayesiano), XGBoost y LightGBM. También se ve Git básico (ramas, comandos, SHA). Siguen interpretabilidad (SHAP, anchors, feature importance) y herramientas de producción: FastAPI, Docker y Airflow. Hay un módulo de dos clases por semana (martes y jueves) más un laboratorio.
- 38:53Comparación entre Bootcamps y Cursos UniversitariosSe discute Gradio frente a Streamlit: Gradio requiere pocas líneas y permite compartir un enlace temporal que abre un túnel a tu computador (Sebastián cuenta que una vez generó alertas de seguridad en su trabajo). Se compara el curso con un bootcamp: es práctico, pero con evaluación universitaria y menos acompañamiento personalizado. Rodrigo cuenta que es estricto con los plazos, y Sebastián, más flexible.
- 41:59Continuación del contanido del cursoSe ven sistemas de recomendación (librería Surprise) y forecasting (Prophet), con teoría de tendencia y estacionalidad. Hay 13 laboratorios aproximadamente. Las dos últimas clases tratan agentes: una clásica con reinforcement learning y otra con LLMs, LangChain y Chain of Thought/ReAct. Se propone enseñar cómo usar IA (Claude Code, vibe coding) para programar, con un proyecto final de una semana.
- 47:57Stack tecnológicoSe menciona brevemente el stack tecnológico del curso.
- 48:09EvaluacionesSe evalúa con laboratorios semanales de una semana de plazo y un proyecto semestral de forecasting dividido en partes (modelo, despliegue y producción), con datos que se liberan por periodos para reentrenar y revisar drift. Los laboratorios los corrigen ayudantes.
- 54:24Uso de Herramientas en el Trabajo DiarioEnseñar el curso le obligó a estudiar a fondo cosas como LangChain. En su trabajo usa Git, Pandas, Python, Gradio, XGBoost, Optuna y Docker, y sobre todo modelos de lenguaje con LangChain y LangGraph.
- 56:40Discusión sobre Plataformas en la NubeSe lamenta que el curso no incluya nubes (AWS, Azure, GCP) por burocracia, aunque existe el programa AWS Academy. Se sugiere un curso práctico de nube y se menciona un diplomado de la Universidad Adolfo Ibáñez.
- 59:32MemesPausa de memes: uno de un hombre que golpea motociclistas mal estacionados y otro sobre deep reinforcement learning. Se dice que RL es más difícil que deep learning.
- 01:01:59Tiempo haciendo clasesSebastián hizo clases unos tres semestres (2024 hasta parte de 2025) y ahora está en pausa por lo intenso que era.
- 01:02:27Discusión de animeConversan sobre Boku no Hero Academia, Attack on Titan, Bleach y la mala animación de One Punch Man 3.
- 01:06:08Noticia de juego de ChrisSteam aprobó el juego de Chris, que se lanza el 31.
- 01:06:50Introducción a la Inflación de Precios en la Colusión Algorítmica para PricingSu tesis combina economía y ciencia de datos usando reinforcement learning para generar datos desde modelos económicos. Parte del paper de Calvano: algoritmos de pricing con RL compitiendo llegan a precios supracompetitivos. Su hipótesis es que la inflación aumenta ese sobreprecio. Se implementa en Python con Gymnasium.
- 01:12:17Modelos Económicos (Bertrand) y Estrategias de PreciosEn el modelo de Bertrand las empresas compiten en precio y bajan hasta igualar el costo. Se definen dos referencias: el equilibrio de Nash/competitivo y el de monopolio, para medir qué tan cerca está la colusión. Se usan productos diferenciados vertical (calidad) y horizontal (gustos).
- 01:17:00Conceptos básicos de Reinforcement LearningSe distinguen aprendizaje supervisado, no supervisado y por refuerzo. RL se basa en un agente que actúa sobre un ambiente y recibe recompensa y estado, ilustrado con Mario Bros.
- 01:20:35Aplicaciones Prácticas y SimulacionesLa recompensa en su modelo es el beneficio económico (precio por cantidad menos costos). Se explica la propiedad de Markov: solo importa el estado actual.
- 01:24:24Proceso de decisión de MarkovCon múltiples agentes, cada uno fija un precio y el ambiente (demanda) asigna cantidades. Introdujo inflación mediante un índice de precios para deflactar, con precios discretos entre un mínimo y un máximo, convirtiendo regresión en clasificación. Los estados incluyen costos y precios de periodos anteriores. El algoritmo es Q-learning con red profunda; se explica la diferencia entre el Q de valor y el Q de cantidad.
- 01:31:20Resultados del estudioCon inflación el precio de mercado promedio queda por encima del escenario sin inflación bajo distintas condiciones.
- 01:33:23Conclusiones y cierreAgentes autónomos con RL tienden a coludirse y la inflación empeora el sobreprecio. Sebastián se motivó por mezclar disciplinas; la tesis le tomó cuatro semestres. Se anuncia que habrá un capítulo sobre demostraciones matemáticas y otro sobre liderazgo parte dos.