Ésta es la pequeña descripción del curso que se impartirá en el semestre 2020-2, en la H. Facultad de Ciencias.
Va a estar dividido todo en 3 bloques.
- Un poco de historia e información de lenguajes de programación
Python
como lenguaje para prototipos- Programación intermedia/avanzada en
Python
- Lambdas
- Clases
- Sintaxis avanzada del lenguaje
- Repaso de estadística básica
- Estadística descriptiva e inferencial
- Métricas descriptivas (media, promedio, varianza y momentos de orden superior)
- Estimadores no sesgados
- Manejo de valores atípicos (Outliers)
- Representación visual de la información.
- Expresiones regulares
- Almacenamiento de información
- Formatos no binarios:
csv
,xml
,json
- Base de datos Relacional:
SQL
- Formatos no binarios:
- Complejidad algorítmica (temporal y espacial)
- Problemas inversos
- Funciones de costo
- Optimización
- Problemas Convexos
- Descenso de Gradiente (Gradient Descent)
- Descenso de Gradiente estocástico y por lotes (SGD y Batch-SGD)
- Métodos de regresión y clasificación básica
- Regresión Lineal
- Regresión Logística
- Regresión de Tikhonov (regresión de arista)
- k-Vecinos más cercanos
- Detalles de la regresión
- Sobreajuste (Overfitting)
- Sesgo contra Varianza
- Validación Cruzada
- Análisis de clusters (Aprendizaje sin supervisión)
- Máquinas de vectores de soporte (SVM)
- Hiperplanos de separación
- El truco del Kernel
- Redes Neuronales
- De una capa
- Algoritmo de propagación hacia atrás (Backpropagation algorithm)
- Redes multicapa (Deep Learning)
- Redes convolucionales
- Descomposición Matricial
- Árboles de decisión y bosques aleatorios
Si les cuesta trabajo predecir el resultado de la siguiente instrucción
l = ['data'+str(s)+'.txt' for s in range(0,5)]
es muy posible que el curso les sea complicado. No nos vamos a detener mucho en cosas sobre el lenguaje, pues no vamos a estudiar Python
, es un curso teórico que se auxilia de un lenguaje de programación para poner en práctica lo aprendido. Se requiere experiencia intermedia/avanzada en lenguajes de programación imperativos (C++
, Python
, R
, java
)
Se evaluará con un único examen final. Además del examen final, hay tareas durante el semestre (entre 4 y 6) que pueden sumar hasta 1.5 sobre el promedio final, pero la condición para recibir ese beneficio es pasar el final. Es decir, teniendo el 1.5 de las tareas y sacando 5.99 en el final, no se acredita el curso.
La calificación se redondea si es aprobatoria y su parte fraccionaria es mayor o igual a 1/2.
Durante el curso se va a ir actualizando esta lista, y habrá notas en PDF por cada semana de curso.