- Introducción
- Objetivo
- Temario
- Recursos
- Horarios
- Evaluación
- Ambiente de trabajo
- Tarea
- ¿Dudas?
- Referencias
Este es el repositorio con el contenido del curso en Aprendizaje Estadístico ofrecido a estudiantes de semestres avanzados en las licenciaturas de matemáticas aplicadas, ciencia de datos, actuaría, economía, etc.
El Aprendizaje Estadístico trata de cómo establecer reglas de asociación al observar un conjunto de datos. En este curso estudiaremos las ideas fundamentales detrás de las técnicas de aprendizaje modernas e incorporaremos conceptos familiares de estadística. El libro de texto será cite:James2021 y lo complementaremos con el enfoque de cite:Kuhn2013. Se estudiarán, además, técnicas estadísticas modernas aplicadas a modelado predictivo por medio de lecturas que acompañaran el curso.
El libro de texto será:
- James, G., Witten, D., Hastie, T., & Tibshirani, R. (2021). An introduction to statistical learning. Springer, New York, NY. Second Edition.
Nos apoyaremos de:
- Kuhn, M., Johnson K. (2013). Applied predictive modeling. Springer, New York, NY.
El curso, además, utilizará distintas herramientas computacionales para brindar al estudiante un marco de trabajo reproducible. Al final del curso, lxs estudiantes tendrán las competencias para trabajar en proyectos de código abierto en ambientes reproducibles de trabajo.
Esto se logrará en el curso al utilizar herramientas de código abierto: R
como
lenguaje de programación y GitHub
como gestor de entrega y avance de tareas y
trabajos.
El curso está pensando para cursarse después de haber acreditado Estadística
Matemática
(o equivalente). Sin embargo, se aprovechará mejor si se lleva a la
par junto con Estadística Aplicada II
(o equivalentes).
El temario para el semestre de primavera 2022 se puede encontrar aqui. Este es un plan preliminar que está sujeto al avance del curso a lo largo del semestre.
El material que estudiaremos será sobre modelos predictivos desde el punto de vista estadístico. Dicho de otra forma, no será un curso de Machine Learning algorítmico. Nos concentraremos en las conexiones entre modelos predictivos y principios estadísticos que le dan sustento.
El contenido actual de esta iteración del curso se encuentra en la rama: spring-2023. La estructura del repositorio se muestra a continuación donde tenemos a grandes razgos:
.
├── docs # Handouts con las notas de clase (pdf).
├── images # Material visual de apoyo (png).
├── notas # Material fuente de las notas (eMacs).
├── renv # Archivos de estructura de ambiente (R).
└── rscripts # Codigo de R para seguir la clase.
5 directories
El curso será los días Martes y Jueves de 10:00am a 11:30am.
El curso será presencial. Por otro lado, salvo se indique lo contrario, las
evaluaciones serán presenciales
.
Utilizaremos este LMS para gestionar la comunicación fuera de los horarios de clase. Asimismo, ahi tendrán acceso al calendario y las sesiones de zoom que se necesiten a lo largo del semestre.
- 21 de marzo no hay clase.
- 4 y 6 de abril no hay clase.
- 26 de abril último día de bajas.
- 10 de mayo último día de clase.
El horario de atención a alumnos será Lunes y Miércoles en un horario de 12:00pm
a 2:00pm. Recomiendo utilizar el sitio de calendly. Por supuesto, si no les
queda algún horario podemos agendar por correo electrónico
.
Importante
: les estoy proporcionando la facilidad de agendar con plena libertad las
sesiones de asesoría. Consideren que al ustedes agendar una reunión están privando ese espacio a
alguien más en mis cursos. Asi que por favor no desperdicien ese espacio.
La evaluación del curso será por medio de:
- Participación y tareas (30%)
- Evaluacion(es) parcial(es) (30%)
- Evaluación final (40%)
La entrega de los trabajos/tareas se realizará por medio de un Github Classroom (mas adelante lo explicamos).
Tarea de aprendizaje (supervisado/no supervisado) que deseen.
Opciones: Conjunto de datos ó modelo que no hayamos visto en clase. \
Entregables: Seguimiento (25%), reporte (50%) y presentación (25%).
El curso es agnóstico al lenguaje de programación. Sin embargo, las notas y el
material estará construido a partir de R. En particular utilizaremos tidymodels
como herramienta de programación dentro de R
pues ofrece una ambiente unificado
de distintas librerías enfocadas en modelos predictivos. Además, es una
herramienta que representa muy bien la filosofía del curso.
El ambiente de trabajo está configurado para tener un espacio reproducible
. Es decir, independiente del
sistema operativo unificaremos versiones para poder trabajar. Esto lo logramos con las siguientes herramientas
(las menciono pero no espero que tengan familiaridad, a lo largo del curso veremos cómo utilizarlas).
Se sugiere utilizar Rstudio Visual Studio Code
para poder trabajar en sus
proyectos y sus tareas. En particular, el material de clase será editado en GNU
Emacs a través de orgfiles
(archivos con sufijo .org
) pero pueden ser
visualizados en Github
.
Utilizaremos renv
para mantener actualizada las herramientas de R
junto con el
contenido del curso. En la carpeta notas
se encuentran los archivos de
requerimientos (renv.lock
) con el que podrán usar los archivos que se vayan
decantando en la carpeta rscripts
. Aún asi, la configuración se irá construyendo
en los ejercicios de tarea que vayamos utilizando en el curso.
Nota: Es necesario tener instalada la versión 4.2.1
de R
para tener la mejor
compatibilidad con el código del curso.
Se recomienda escribir en el archivo ~/.Renviron
la siguiente línea lo cual
mantendrá el cache de renv
en un lugar centralizado
RENV_PATHS_ROOT=~/.renv
Mi idea de ambiente computacional es el que se puede reproducir en cualquier
sistema operativo. Para esto Docker
es la herramienta ideal y el uso de los
Codespaces
de GitHub ha resultado increíble para una solución dentro de un
ámbito educativo.
Para la imagen agarbuno/aprendizaje
consideren que:
- El tag
notas
basado en una distribución linux en una emulación con un procesadorIntel
, tiene la configuración mínima necesaria para poder reproducir el ambiente de cómputo para poder ejecutar el material del curso
Esto no les puede decir mucho, pero básicamente con el combo
Docker
+ Visual Code Studio
, ¡tod@s tenemos la misma computadora para trabajar! 🥲.
Y si lo quieren correr en la nube entonces: Docker
+ Visual Code Studio
+ Github Codespaces
🥲 $× 1078$.
Importante
: No espero que sepan reproducir ustedes la configuración del ambiente de
trabajo. Si les interesa podemos organizar una sesión para discutir esto a profundidad.
Lo importante es que lo sepan utilizar en su computadora o en un explorador de internet.
Esto es, que pueden utilizarlo para las prácticas del curso.
Las primeras tareas del semestre son básicamente configuración y es recomendable
hacerlas si no cuentan con experiencia en: Git
, Github
, R
y el tidyverse
.
Las tareas las gestionaremos a través de Github Classroom
lo cual me permite
administrar sus entregas como proyectos de Git
. Además, habrá ejercicios de las
tareas que tendrán mecanismos de calificación automatizada.
\nocite{*}
bibliographystyle:abbrvnat bibliography:references.bib