Al trabajar con k-NN (regresor k-NN y clasificador k-NN), sabemos que el enfoque k-NN es muy ingenuo. Mantiene todo el conjunto de datos de entrenamiento en la memoria, se basa en distancias brutas y no aprende ninguna estructura de los datos.
Ya comenzamos a mejorar el clasificador k-NN y en el artículo de hoy implementaremos estos diferentes modelos:
GNB: Gaussiano Naive Bayes LDA: Análisis discriminante lineal QDA: Análisis discriminante cuadrático
Para todos estos modelos, la distribución se considera gaussiana. Entonces, al final, también veremos un enfoque para conseguir una distribución más personalizada.
Si leíste mi artículo anterior, aquí tienes algunas preguntas:
¿Cuál es la relación entre LDA y QDA? ¿Cuál es la relación entre GBN y QDA? ¿Qué sucede si los datos no son gaussianos en absoluto? ¿Cuál es el método para conseguir una distribución personalizada? ¿Qué es lineal en LDA? ¿Qué es cuadrático en QDA?
Al leer el artículo, puede utilizar esta hoja de Excel/Google.
Centroides más cercanos: qué es realmente este modelo
Hagamos un resumen rápido de lo que ya empezamos ayer.
Introdujimos una idea simple: cuando calculamos el promedio de cada característica continua dentro de una clase, esa clase colapsa en un único punto representativo.
Esto nos da el modelo de centroides más cercano.
Cada clase se resume por su centroide, el promedio de todos sus valores de características.
Ahora, pensemos en esto desde el punto de vista del aprendizaje automático.
Generalmente separamos el proceso en dos partes: el paso de entrenamiento y el paso de ajuste de hiperparámetros.
Para los centroides más cercanos, podemos dibujar una pequeña “tarjeta modelo” para entender qué es realmente este modelo:
¿Cómo se entrena el modelo? Calculando un vector promedio por clase. Nada más. ¿Maneja valores faltantes? Sí. Un centroide se puede calcular utilizando todos los valores disponibles (no vacíos). ¿Importa la escala? Sí, absolutamente, porque la distancia a un centroide depende de las unidades de cada característica. ¿Cuáles son los hiperparámetros? Ninguno.
Dijimos que el clasificador k-NN puede no ser un modelo real de aprendizaje automático porque no es un modelo real.
Para los centroides más cercanos, podemos decir que en realidad no es un modelo de aprendizaje automático porque no se puede ajustar. Entonces, ¿qué pasa con el sobreajuste y el desajuste?
Bueno, el modelo es tan simple que no puede memorizar el ruido de la misma manera que lo hace k-NN.
Por lo tanto, los centroides más cercanos solo tenderán a no adaptarse cuando las clases sean complejas o no estén bien separadas, porque un solo centroide no puede capturar su estructura completa.
Comprender la forma de la clase con una característica: agregar varianza
Ahora, en esta sección, usaremos solo una característica continua y 2 clases.
Hasta ahora, utilizamos solo una estadística por clase: el valor promedio.
Agreguemos ahora un segundo dato: la varianza (o equivalentemente, la desviación estándar).
Esto nos dice qué tan “dispersada” está cada clase alrededor de su promedio.
Inmediatamente surge una pregunta natural: ¿Qué variación deberíamos utilizar?
La respuesta más intuitiva es calcular una varianza por clase, porque cada clase puede tener una dispersión diferente.
Pero existe otra posibilidad: podríamos calcular una varianza común para ambas clases, generalmente como un promedio ponderado de las varianzas de las clases.
Esto parece un poco antinatural al principio, pero veremos más adelante que esta idea conduce directamente a LDA.
Entonces, la siguiente tabla nos brinda todo lo que necesitamos para este modelo, de hecho, para ambas versiones (LDA y QDA) del modelo.
el número de observaciones en cada clase (para ponderar las clases) la media de cada clase la desviación estándar de cada clase y la desviación estándar común entre ambas clases
Con estos valores todo el modelo queda completamente definido.
Ahora, una vez que tenemos una desviación estándar, podemos construir una distancia más refinada: la distancia al centroide dividida por la desviación estándar.
¿Por qué hacemos esto?
Porque esto da una distancia que se escala según cuán variable sea la clase.
Si una clase tiene una desviación estándar grande, no es sorprendente que esté lejos de su centroide.
Si una clase tiene una desviación estándar muy pequeña, incluso una desviación pequeña se vuelve significativa.
Esta simple normalización convierte nuestra distancia euclidiana en algo un poco más significativo, que representa la forma de cada clase.
Esta distancia fue introducida por Mahalanobis, por eso la llamamos distancia de Mahalanobis.
Ahora podemos hacer todos estos cálculos directamente en el archivo de Excel.
Las fórmulas son sencillas y con el formato condicional podemos ver claramente cómo cambia la distancia a cada centro y cómo la escala afecta los resultados.
Ahora hagamos algunos trazados, siempre en Excel.
El siguiente diagrama muestra la progresión completa: cómo comenzamos desde la distancia de Mahalanobis, pasamos a la probabilidad bajo cada distribución de clase y finalmente obtenemos la predicción de probabilidad.
LDA vs QDA, ¿qué vemos?
Con solo una característica, la diferencia resulta muy fácil de visualizar.
Para LDA, la separación en el eje x siempre se corta en dos partes. Por eso el método se llama Análisis Discriminante Lineal.
Para QDA, incluso con una sola característica, el modelo produce dos puntos de corte en el eje x. En dimensiones superiores, esto se convierte en un límite curvo, descrito por una función cuadrática. De ahí el nombre de Análisis Discriminante Cuadrático.
Y puede modificar directamente los parámetros para ver cómo afectan el límite de decisión.
Los cambios en las medias o variaciones cambiarán la frontera y Excel hace que estos efectos sean muy fáciles de visualizar.
Por cierto, ¿la forma de la curva de probabilidad LDA te recuerda a algún modelo que seguramente conoces? Sí, se ve exactamente igual.
Ya puedes adivinar cuál, ¿verdad?
Pero ahora la verdadera pregunta es: ¿son realmente el mismo modelo? Y si no, ¿en qué se diferencian?
También podemos estudiar el caso con tres clases. Puedes intentarlo tú mismo como ejercicio en Excel.
Aquí están los resultados. Para cada clase repetimos exactamente el mismo procedimiento. Y para la predicción de probabilidad final, simplemente sumamos todas las probabilidades y tomamos la proporción de cada una.
Nuevamente, este enfoque también se utiliza en otro modelo bien conocido.
¿Sabes cuál? Es mucho más familiar para la mayoría de la gente, y esto muestra cuán estrechamente conectados están realmente estos modelos.
Cuando comprendes uno de ellos, automáticamente comprendes mucho mejor a los demás.
Forma de clase en 2D: ¿solo varianza o también covarianza?
Con una característica, no hablamos de dependencia, ya que no la hay. Entonces, en este caso, QDA se comporta exactamente como Gaussian Naive Bayes. Porque normalmente permitimos que cada clase tenga su propia variación, lo cual es perfectamente natural.
La diferencia aparecerá cuando pasemos a dos o más funciones. En ese punto, distinguiremos casos de cómo el modelo trata la covarianza entre las características.
Gaussian Naive Bayes hace una suposición simplificadora muy fuerte:
Las características son independientes. Ésta es la razón de la palabra Naive en su nombre.
LDA y QDA, sin embargo, no parten de esta suposición. Permiten interacciones entre características, y esto es lo que genera límites lineales o cuadráticos en dimensiones superiores.
¡Hagamos el ejercicio en Excel!
Bayes ingenuo gaussiano: sin covarianza
Comencemos con el caso más simple: Gaussian Naive Bayes.
Por lo tanto, no necesitamos calcular ninguna covarianza porque el modelo supone que las características son independientes.
Para ilustrar esto, podemos mirar un pequeño ejemplo con tres clases.
QDA: cada clase tiene su propia covarianza
Para QDA, ahora tenemos que calcular la matriz de covarianza para cada clase.
Y una vez que lo tenemos, también necesitamos calcular su inversa, porque se usa directamente en la fórmula para la distancia y la probabilidad.
Por lo tanto, hay algunos parámetros más para calcular en comparación con Gaussian Naive Bayes.
LDA: todas las clases comparten la misma covarianza
Para LDA, todas las clases comparten la misma matriz de covarianza, lo que reduce la cantidad de parámetros y obliga a que el límite de decisión sea lineal.
Aunque el modelo es más simple, sigue siendo muy eficaz en muchas situaciones, especialmente cuando la cantidad de datos es limitada.
Distribuciones de clases personalizadas: más allá del supuesto gaussiano
Hasta ahora sólo hemos hablado de distribuciones gaussianas. Y lo es por su sencillez. Y también podemos usar otras distribuciones. Incluso en Excel, es muy fácil cambiarlo.
En realidad, los datos no suelen seguir una curva gaussiana perfecta.
Para explorar un conjunto de datos, utilizamos los gráficos de densidad empírica casi siempre. Dan una sensación visual inmediata de cómo se distribuyen los datos.
Y a menudo se utiliza el estimador de densidad del kernel (KDE) como método no paramétrico.
PERO, en la práctica, KDE rara vez se utiliza como modelo de clasificación completo. No es muy conveniente y sus predicciones suelen ser sensibles a la elección del ancho de banda.
Y lo interesante es que esta idea de núcleos volverá cuando hablemos de otros modelos.
Entonces, aunque lo mostramos aquí principalmente para exploración, es un componente esencial en el aprendizaje automático.
Conclusión
Hoy seguimos un camino natural que comienza con promedios simples y conduce gradualmente a modelos probabilísticos completos.
Los centroides más cercanos comprime cada clase en un punto. Gaussian Naive Bayes agrega la noción de varianza y asume la independencia de las características. QDA le da a cada clase su propia varianza o covarianza. LDA simplifica la forma al compartir la covarianza.
Incluso vimos que podemos salir del mundo gaussiano y explorar distribuciones personalizadas.
Todos estos modelos están conectados por la misma idea: una nueva observación pertenece a la clase a la que más se parece.
La diferencia es cómo definimos la semejanza, por distancia, por varianza, por covarianza o por una distribución de probabilidad completa.
Para todos estos modelos, podemos realizar los dos pasos fácilmente en Excel:
el primer paso es estimar los parámetros, que pueden considerarse como el modelo que entrena el paso de inferencia que consiste en calcular la distancia y la probabilidad para cada clase.
una cosa mas
Antes de cerrar este artículo, dibujemos una pequeña cartografía de modelos supervisados a distancia.
Tenemos dos familias principales:
modelos de distancia local modelos de distancia global
Para distancia local ya conocemos las dos clásicas:
Regresor k-NN Clasificador k-NN
Ambos predicen observando a los vecinos y utilizando la geometría local de los datos.
Para la distancia global, todos los modelos que estudiamos hoy pertenecen al mundo de la clasificación.
¿Por qué?
Porque la distancia global requiere centros definidos por clases.
¿Medimos qué tan cerca está una nueva observación de cada prototipo de clase?
Pero ¿qué pasa con la regresión?
Parece que esta noción de distancia global no existe para la regresión, ¿o realmente existe?
La respuesta es sí, existe…