Método de aprendizaje | Porcentaje (%) |
---|---|
Examen escrito sobre el dominio y compresión teórico-empírica. | 10 |
Prácticas y participación con propuestas de casos de estudio. | 30 |
Tareas individuales y colaborativas. | 20 |
Proyecto integrador en el que se apliquen y demuestren los conocimientos adquiridos. | 40 |
ἐπιστήμη, epistēmē, knowledge, conocimiento
-λογία, -logia, -logy, -logía
El estudio del conocimiento
datos
Scientia, science, ciencia
(a.k.a conocimiento)
Sistema para generar conocimiento
Hechos conocidos, sin procesar, que podrían registrarse y almacenarse, a partir de los cuáles se produce información.
¿Cómo percibimos el mundo?
Recolectar datos
Procesar datos
Controlar las acciones
Almacenar reglas
Recordar las reglas
Usar las reglas
Encontrar patrones
¿Cómo medir la pobreza con ~45 variables?
Datos
(experimentales)
Método de aprendizaje
Parámetros
Distribución desconocida (compleja)
Modelo
(basado en datos)
Función desconocida (compleja)
Generalización
(compleja)
53%
47%
Knowledge Discovery in Databases (KDD)
Estructurados
Semi-estructurados
Cuasi-estructurados
No-estructurados
\( dominio(variable_{numérica}) = \mathbb{R} \)
\( dominio(variable_{categórica}) = \lbrace{s_1,s_2,...,s_n}\rbrace \)
número de personas= 4
variables cuantitativas
variables cualitativas
clima={soleado, lluvioso}
Estructura global de los datos
Extract Transform Load (ETL)
Optimizar lectura y escritura
Ch 3. Describing Data Sources. Hai Doan, Alon Halevy & Zachary Ives: Principles of Data Integration Morgan Kaufmann, 1st edition, 2012. ISBN 0124160441 http://research.cs.wisc.edu/dibook/
Heterogeneidad semántica
(diferencias)
OnLine Analytical Processing (OLAP)
Cubo de datos
Optimizar lectura y escritura
OnLine Transaction Processing (OLTP)
Transacción
Optimizar el proceso de los datos
Minería de datos
Cómputo distribuido
Procesamiento del lenguaje natural
Ciencia
de
datos
Inteligencia
artificial
Estadística
Análisis de datos
Total: 302,527
Proceso iterativo para descubrir información y generar conocimiento, a través de métodos automáticos o manuales.
El estudio de el comportamiento inteligente logrado a través de medios computacionales. La representación del conocimiento y el razonamiento son parte de la IA que se enfoca en cómo un agente usa lo que sabe para decidir qué hacer
Es el estudio de pensar como un proceso computacional
Problema geométrico \(n-\text{dimensional}\)
*Supervisado
No supervisado
Supervisado
Regresión
Clasificación
Reforzado
Predicción
Descripción
input
output
entrada
resultado esperado
modelo
*Con aprendizaje automático supervisado
variables explicativas \(X=\{x_1, x_2, \dots, x_n\}\)
variable explicada \(y\)
\(\text{Característica 1}\)
\(\text{Característica 2}\)
\(\text{Característica 3}\)
Espacio euclidiano
Problema de decisión:
un algoritmo para decidir si un enunciado dado se puede demostrar a partir de los axiomas usando las reglas de la lógica
Tesis de Alan Turing (1936)
0
1
0
1
0
1
1
0
1
0
0
1
1
0
0
1
0
1
0
1
0
0
1
0
0
0
1
A
B
+
C
entradas
salida
proceso
¿Se tendrán mayor poder de cómputo si ...
(no regresa el mismo resultado)
R1 = todas las variaciones son equivalentes en capacidad de cómputo
R2 = una función es computable de manera realista (o algorítmica) si y solo si es computable por una máquina de Turing
matemáticas
cómputo
Gabriela Santiago Valdivia de TEyMD Grupo 16 MAC FES-Acatlán
... procedimiento paso a paso para realizar alguna tarea en un período de tiempo finito
... es una forma sistemática de organizar y acceder a los datos.
espacio
Metodología general: componentes
Metodología general: Modelo de computación
Conjunto de operaciones primitivas de alto nivel que son independientes del lenguaje de programación utilizado y pueden identificarse también en el pseudocódigo
Metodología general: Modelo de computación: Random Access Machine Model
\(w={w_1,w_2,... }\)
la memoria almacena una palabra (word)
?
acceso aleatorio a la memoria via una operación primitiva
Metodología general: pseudocódigo
Ejemplo: encontrar el elemento máximo en un arreglo \(A\) con \(n \in \Z\) elementos enteros
Algorithm arrayMax(A, n): Input: An array A storing n ≥ 1 integers. Output: The maximum element in A. currentMax ← A[0] for i ← 1 to n − 1 do if currentMax < A[i] then currentMax ← A[i] return currentMax
Pseudocódigo: lenguaje de programación + lenguaje natural
Paradigmas de programación: funcional vs orientado a objetos
*Con aprendizaje automático supervisado
variables explicativas \(X=\{x_1, x_2, \dots, x_n\}\)
variable explicada \(y\)
*Con aprendizaje automático no supervisado
variables explicativas \(X=\{x_1, x_2, \dots, x_n\}\)
Entorno:
Suposiciones de independencia:
en los datos o, no hay dependencia entre características, o la dependencia es lo suficientemente menor como para que podamos ignorarla.
Independiente e idénticamente distribuído
\( dominio(variable_{numérica}) = \mathbb{R} \)
\( dominio(variable_{categórica}) = \lbrace{s_1,s_2,...,s_n}\rbrace \)
variables cuantitativas
variables cualitativas
\( dominio(variable_{numérica}) = \mathbb{R} \)
Orden
\(2 < 5\)
Distancia
\(d(2.3, 4.2) = 1.9\)
Escala de intervalos
(intervalo)
Escala de proporción
(ratio)
Por ejemplo:
Escala no ordenada
(nominal)
Escala ordenada
(ordinal)
\( dominio(variable_{categórica}) = \lbrace{s_1,s_2,...,s_n}\rbrace \)
Numéricas
Categóricas
Nivel | Intervalo | Ratio | Nominal | Ordinal |
---|---|---|---|---|
Característica | Distancia | Cero | Distinguir | Ordenar |
Operaciones | + - | x / | = ≠ | < > |
Ejemplos | Días, horas, dinero | Peso, edad | CP, ID, sexo, género | Ranking, grados, edad |
Nominal
Ordinal
Interval
Ratio
"La maldición de la alta dimensionalidad"
... los objetos en espacios de alta dimensión tienen una mayor superficie para un volumen dado que los objetos en espacios de baja dimensión ...
Propiedad 1: densidad
\(n\) datos
\(n^2\) datos
\(n^3\) datos
Para mantener la misma densidad de datos en \(k\) dimensiones, se necesitan \(n^k\) datos
Propiedad 2: vecindad a.k.a. hypercubo
Se puede calcular la arista \(e\):
\(e(p)=P^{\frac{1}{d}}\)
donde \(p\) es la fracción de muestras y \(d\) el número de dimensiones
\(e\)
Propiedad 2: vecindad a.k.a. hypercubo
Encerrar \(10\)% de las muestras, o sea, \(p=0.1\)
\(d=1\)
\(d=2\)
\(d=3\)
Se requiere un vecindario muy grande para capturar incluso una pequeña porción de los datos en un espacio de alta dimensión
Propiedad 3: distancia entre datos
Cada dato está más cerca de alguna arista \(e\) que de otro dato
Para una muestra de tamaño \(n\), la distancia esperada \(D\) entre datos en un espacio dimensional \(d\) se define por:
\( D(d,n)={\frac{1}{2}} {(\frac{1}{n})^{\frac{1}{d}}}\)
La distancia máxima entre un dato y alguna arista es de
\(D=0.5\)
Propiedad 3: distancia entre datos
Para un espacio dimensional \(d=2\) con una muestra de \(10,000\) datos, la distancia esperada (entre puntos) es \(D(2,10000)=0.005\)
Para un espacio dimensional \(d=10\) con la misma muestra de \(10,000\) datos, la distancia esperada (entre puntos) es \(D(10,10000)=0.4\)
Propiedad 4: outlier impostor
A medida que aumenta la dimensión del espacio de entrada, aumenta la distancia entre el punto de predicción y el centro de los puntos clasificados
Datos posiblemente predictivos están más cerca de las aristas que del centro del vecindario
En las propiedades 1 y 2 se ve la dificultad de estimaciones locales en altas dimensiones
Entre más aumentan las dimensiones, se necesitan más muestras
En las propiedades 3 y 4 se ve la dificultad de predecir un dato verdadero
Cualquier nuevo dato estará (en teoría) más cerca de las aristas de su hypercubo que de la parte central
En las propiedades 1 y 2 se ve la dificultad de predecir un dato verdadero
Cualquier nuevo dato estará (en teoría) más cerca de las aristas de su hypercubo que de la parte central
input
output
entrada
resultado deseado
modelo
*Supervisado
*
*
*
Objetivo
Mantener los valores dentro del rango \([{-1,1}]\) moviendo el punto decimal
Método
\(v'(i)=\frac{v(i)}{10^k}\),
para un \(k\) tal que \(max(|v'(i)|)<1\),
donde \(v(i)\) es el valor \(i\)-ésimo de la variable \(v\), y \(v'(i)\) es el valor escalado
Ejemplo
Si el valor más grande es \(455\) y el valor más pequeño es \(-834\),
entonces
\(max(|v'(i)|)=0.834\)
está dentro del rango \([-1,1]\), por lo tanto \(k=3\)
Objetivo
Mantener los valores dentro del rango \([{0,1}]\) mediante la el mínimo y el máximo
Método
\(v'(i)=\frac{v(i)-min(v(i))}{max(v(i))-min(v(i))}\),
donde \(v(i)\) es el valor \(i\)-ésimo de la variable \(v\), y \(v'(i)\) es el valor escalado
Ejemplo
Si el valor más grande es \(455\) y el valor más pequeño es \(-834\),
entonces
\(max(|0|)=0.647\)
está dentro del rango \([0,1]\)
Métodos estadísticos
Métodos computacionales
The rule of thumb
Máximo desempeño con la mínima cantidad de datos
Utopía (aún)
Selección de características
Extracción de características
Diferencias
Los sistemas biológicos aprenden a enfrentar a la naturaleza desconocida del entorno de una manera basada en los datos.
El problema de aprender de los datos y generar una noción de inferencia es filosofía clásica
Proceso de aprendizaje predictivo
1. Aprender o estimar dependencias desconocidas de un sistema dado un conjunto de datos
2. Usar estas dependencias para predecir nuevas salidas dadas nuevas entradas en el sistema
Inducción
De lo particular (entrenamiento) a lo general (modelo)
Deducción
De lo general (modelo) a lo particular (test)
Un método de aprendizaje
Estima una relación desconocida entre las entradas y salidas de un sistema a partir del conjunto de datos
Una vez que dicha relación desconocida ha sido estimada con precisión, puede ser utilizada para predecir futuros resultados del sistema a partir de nuevos los valores de entrada.
(algoritmo)
(dependencias)
Aprender buscando en el espacio \(n\)-dimensional de un conjunto de datos dado para encontrar una generalización aceptable
Estimar una dependencia (o estructura de entrada y salida) desconocida de un sistema utilizando un número limitado de observaciones (o mediciones de entradas y salidas del sistema)
Ej. \(p(Y|X)\) o \(Y=f(x)\)
Una máquina de aprendizaje inductivo trata de formar generalizaciones a partir de hechos reales
a. Observaciones (conjunto de datos)
b. Aproximación lineal
c. Aproximación polinomial (no lineal)
d. Aproximación cuadrática
Riesgo (risk): Proceso, relacionado con un riesgo, para minimizar lo negativo y maximizar las consecuencias positivas y sus respectivas probabilidades.
Intercambio (Trade-off): sacrificio, compensación, trueque, solución.
Función de pérdida (loss function): una función que relaciona un evento (objeto vectorial) con un número real que representa el coste asociado con el evento.
Funcional (functional): una función cuyo dominio es un conjunto de funciones
Aprendizaje inductivo de muestras finitas a.k.a. teoría de Vapnik-Chervonenkis (VC) vía estimación estadística ~60s
Dado un conjunto finito de muestras, proporciona una descripción cuantitativa del intercambio (trade-off) entre la complejidad del modelo y la información disponible
Reconocimiento de patrones y problemas de clasificación
Aprendizaje inductivo
Estimación óptima
Mínimo riesgo esperado
Riesgo verdadero
Riesgo empírico
funcionales
Riesgo verdadero
Aprendizaje inductivo
Objetivo
Estimar dependencias desconocidas dado un conjunto de funciones de aproximación usando información disponible (datos)
Estimación óptima
Definición
Corresponde al riesgo mínimo esperado (funcional). Esta distribución es desconocida, y la única información disponible sobre la distribución es un conjunto de datos finito.
Riesgo verdadero
Riesgo empírico
Distribución general de los datos
Distribución desconocida de los datos
Definición
Se busca encontrar una solución \(f(X, w^∗)\) que minimice el riesgo empírico expresado a través del error de entrenamiento como sustituto del riesgo verdadero desconocido, que es una medida del error verdadero en toda la población.
Definición
Requisito para que el modelo estimado converja con el modelo verdadero o la mejor estimación posible, a medida que el número de muestras de entrenamiento crece.
\( n \to ∞ \)
Definición
Para asegurar que la consistencia del método ERM sea siempre válida y no dependa de las propiedades de las funciones de aproximación, es necesario que el requisito de consistencia se mantenga para todas las funciones de aproximación
Definición
Cada función aproximada que está en la forma de la función de crecimiento \(G(n)\) tendrá una propiedad de consistencia y potencial para una buena generalización bajo aprendizaje inductivo, porque las funciones empíricas y de riesgo real convergen.
En \(n=h\) el crecimiento comienza a disminuir y garantiza entonces una convergencia
Definición
Mecanismo formal para elegir un modelo con una complejidad óptima en conjuntos de datos limitados y finitos ... la solución requiere la especificación a priori de una estructura en un conjunto de funciones aproximadamente iguales.
El conjunto de funciones aproximadas \(S_1\) es el de menor complejidad y aumenta conforme \(k\)
Elegir la estructura que produce el mínimo error garantizado, vinculado al riesgo verdadero.
Aproximación estocástica o gradiente descendente
Dada una estimación inicial de los valores para las funciones de aproximación del parámetro \(w\) en términos de una función de riesgo, los valores óptimos del parámetro se encuentran actualizándolos repetidamente hasta encontrar el mínimo local/global.
Métodos iterativos
Los valores del parámetro \(w\) se estiman de forma iterativa para que en cada iteración se reduzca el valor del riesgo empírico
Optimización "voráz" (greedy)
Inicialmente, sólo se utiliza el primer término de las funciones de aproximación y se optimizan los parámetros correspondientes. La optimización corresponde a la minimización de las diferencias (error) entre el conjunto de datos de entrenamiento y el modelo estimado. Este término se mantiene fijo y el siguiente se optimiza.
Usado para estimar dependencias desconocidas de observaciones conocidas entrada-salida
Se supone la existencia de un "maestro" que conoce el fenómeno y sus características
Los parámetros del sistema de aprendizaje se ajustan bajo la influencia combinada de las muestras de entrenamiento y la señal de error.
La señal de error es la diferencia entre la respuesta deseada y la respuesta real del sistema de aprendizaje.
Descubrir la estructura "natural" de los datos de entrada
Se elimina la existencia de un "maestro" y se requiere que el método de aprendizaje forme y evalúe por sí mismo el modelo
Los parámetros del sistema de aprendizaje se ajustan con respecto a alguna medida de la calidad de la tarea.
El resultado puede ser una representación global aplicable a todo el dataset (clustering), o local, aplicado a un subconjunto del dataset (association rules).
Generar una "infraestructura" para el proceso de aprendizaje. Llamado también el Vector Space Model (VSM)
Una observación es un par características-clase, \(X-y\), que puede ser visualizada como un punto en un espacio n-dimensional, donde \(n\) es el número de atributos o dimensiones
Encontrar una función de aprendizaje que clasifica un elemento de datos en una de varias clases predefinidas
Para un espacio \(n\)-dimensional de muestras, la complejidad de la solución aumenta exponencialmente, y la función de clasificación se representa en forma de hiperplanos en el espacio dado.
Encontrar una función de aprendizaje, que asigna un elemento de datos a una variable de predicción de valor real
A partir de esta función, es posible estimar el valor de la variable de predicción \(y\) para cada nueva muestra
Encontrar una descripción compacta de un conjunto (o subconjunto) de datos
La información se puede simplificar y por lo tanto mejorar el proceso de toma de decisiones en un dominio determinado.
Descubrir los cambios más significativos en un gran conjunto de datos
La detección de valores atípicos en un conjunto de datos con valores discretos de las características
Clasificación
Regresión
6. Ordinary Least Square
7. Lasso y Ridge regression
8. Linear and Quadratic Discriminant Analysis
Clustering
9. k-means, k-medoids y k-modes
10. Gaussian Mixture Models
11. DBSCAN
La compensación sesgo-varianza (bias-variance trade-off) es un comportamniento natural de estos modelos
Cuando un modelo de aprendizaje automático no logra aprender los patrones importantes (o a veces complejos) que se exhiben en los datos, decimos que el modelo está sesgado
Simplifica demasiado
Aprende reglas tan simples que no puede generalizar
Cuando un modelo de aprendizaje automático aprende patrones innecesarios, de tal manera que incluso pequeñas variaciones en los datos producen cambios indeseables en la predicción
Aprende reglas muy exactas y tan complejas, que no puede generalizar
Generar un modelo con bajo sesgo y baja varianza, es decir, un modelo que ha aprendido los patrones necesarios
Para lograr el equilibrio entre el sesgo y la varianza se utiliza una combinación de métodos de ajuste de hiperparámetros
Validación cruzada: técnica de validación de modelos que ayuda a evaluar el rendimiento y la capacidad de un modelo de aprendizaje de la máquina para generalizar en un conjunto de datos independiente.
Evaluar la robustez del modelo en datos no vistos.
Estimar un rango realista para las métricas de rendimiento deseadas.
Mitigar el overfitting y el underfitting de los modelos.
Probar el modelo en todo el conjunto de datos en varias iteraciones, dividiendo los datos en grupos y usando la mayoría para entrenar y la minoría para probar
Asegurar que el modelo ha sido probado en todas las observaciones disponibles
Si la media de las métricas de rendimiento dice que:
Dividimos aleatoriamente el conjunto de datos disponibles en conjuntos de datos de entrenamiento y pruebas. Las proporciones de división más comunes utilizadas entre los conjuntos de datos de entrenamiento y de prueba son 70:30 u 80:20.
En lugar de crear \(k\) particiones, elegimos el número de particiones como el número de puntos de datos disponibles. Por lo tanto, tendríamos sólo una muestra en una partición. Utilizamos todas las muestras excepto una para el entrenamiento, y probamos el modelo en la muestra que se ha mantenido y repetimos este número \(n\) de veces, donde \(k\) es el número de muestras de entrenamiento.
Un hiperparámetro es un parámetro que define las características de un modelo de aprendizaje automático.
Los hiperparámetros son diferentes de los parámetros del modelo; estos no pueden ser aprendidos por el modelo.
Los parámetros del modelo son aprendidos por el modelo durante el proceso de aprendizaje
(\(w_1, w_2, ...\))
El proceso de optimización o ajuste de los hiperparámetros se puede resumir como:
el proceso iterativo de encontrar el conjunto óptimo de valores para los hiperparámetros que resulta en el mejor modelo de aprendizaje de la máquina para nuestra tarea de predicción.
Definimos un conjunto finito de valores para cada hiperparámetro que nos interesaría optimizar para el modelo. El modelo es entonces entrenado para combinaciones exhaustivas de todos los valores de hiperparámetros posibles y la combinación con el mejor rendimiento es seleccionada como el conjunto óptimo.
Aquí, optamos por elecciones aleatorias de una distribución (en el caso de un valor continuo para los hiperparámetros), en lugar de una lista estática que definiríamos. En la optimización de búsqueda aleatoria, tenemos una gama más amplia de opciones de búsqueda, ya que los valores continuos de un hiperparámetro se eligen aleatoriamente de una distribución
References
Uso de la metodología CRISP-DM:
Kantardzic, M.: Data Mining: Concepts, Models, Methods, and Algorithms. Wiley-IEEE Press, 3rd Edition, (2020)
Han, J., Kamner, M. Hei, J.: Data Mining: Concepts and Techniques. Morgan Kaufmann Publishers; 3rd ed, (2012)