Fundamentos de la IA
Modelos de Aprendizaje Automático Generativos vs. Discriminativos
Algunos modelos de aprendizaje automático pertenecen a las categorías de “generativos” o “discriminativos”. Sin embargo, ¿cuál es la diferencia entre estas dos categorías de modelos! ¿Qué significa que un modelo sea discriminativo o generativo?
La respuesta breve es que los modelos generativos son aquellos que incluyen la distribución del conjunto de datos, devolviendo una probabilidad para un ejemplo determinado. Los modelos generativos se utilizan a menudo para predecir qué ocurre a continuación en una secuencia. Mientras que los modelos discriminativos se utilizan para la clasificación o la regresión y devuelven una predicción basada en la probabilidad condicional. Exploraremos las diferencias entre los modelos generativos y discriminativos con más detalle, para que podamos entender realmente qué separa los dos tipos de modelos y cuándo se debe utilizar cada uno.
Modelos Generativos vs. Discriminativos
Hay varias formas de categorizar un modelo de aprendizaje automático. Un modelo se puede clasificar como perteneciente a diferentes categorías, como: modelos generativos, modelos discriminativos, modelos paramétricos, modelos no paramétricos, modelos basados en árboles, modelos no basados en árboles.
Este artículo se centrará en las diferencias entre los modelos generativos y discriminativos. Comenzaremos definiendo ambos tipos de modelos y luego exploraremos algunos ejemplos de cada tipo de modelo.
Modelos Generativos
Los modelos generativos se centran en la distribución de las clases dentro del conjunto de datos. Los algoritmos de aprendizaje automático suelen modelar la distribución de los puntos de datos. Los modelos generativos dependen de la probabilidad conjunta. Crean puntos donde una característica de entrada determinada y una etiqueta de salida deseada existen simultáneamente.
Los modelos generativos se utilizan comúnmente para estimar probabilidades y probabilidades, modelando los puntos de datos y discriminando entre las clases en función de estas probabilidades. Dado que el modelo aprende una distribución de probabilidad para el conjunto de datos, puede hacer referencia a esta distribución de probabilidad para generar nuevas instancias de datos. Los modelos generativos a menudo dependen de el teorema de Bayes para encontrar la probabilidad conjunta, encontrando p(x,y). En esencia, los modelos generativos modelan cómo se generaron los datos, responden a la siguiente pregunta:
“¿Cuál es la probabilidad de que esta clase o otra clase haya generado este punto de datos/instancia?”
Ejemplos de modelos de aprendizaje automático generativos incluyen el Análisis Discriminante Lineal (LDA), los Modelos de Markov Ocultos y las Redes Bayesianas como Naive Bayes.
Modelos Discriminativos
Mientras que los modelos generativos aprenden sobre la distribución del conjunto de datos, los modelos discriminativos aprenden sobre el límite de decisión entre las clases dentro de un conjunto de datos. Con los modelos discriminativos, el objetivo es identificar el límite de decisión entre las clases para aplicar etiquetas de clase confiables a las instancias de datos. Los modelos discriminativos separan las clases en el conjunto de datos utilizando la probabilidad condicional, sin hacer suposiciones sobre los puntos de datos individuales.
Los modelos discriminativos intentan responder a la siguiente pregunta:
“¿De qué lado del límite de decisión se encuentra esta instancia?”
Ejemplos de modelos de aprendizaje automático discriminativos incluyen las Máquinas de Soporte Vectorial, la Regresión Logística, los Árboles de Decisión y los Bosques Aleatorios.
Diferencias entre Generativos y Discriminativos
Aquí hay un resumen rápido de las principales diferencias entre los modelos generativos y discriminativos.
Modelos Generativos:
- Los modelos generativos pretenden capturar la distribución real de las clases en el conjunto de datos.
- Los modelos generativos predicen la distribución de probabilidad conjunta – p(x,y) – utilizando el teorema de Bayes.
- Los modelos generativos son computacionalmente costosos en comparación con los modelos discriminativos.
- Los modelos generativos son útiles para tareas de aprendizaje automático no supervisadas.
- Los modelos generativos se ven afectados por la presencia de valores atípicos más que los modelos discriminativos.
Modelos Discriminativos:
- Los modelos discriminativos modelan el límite de decisión para las clases del conjunto de datos.
- Los modelos discriminativos aprenden la probabilidad condicional – p(y|x).
- Los modelos discriminativos son computacionalmente baratos en comparación con los modelos generativos.
- Los modelos discriminativos son útiles para tareas de aprendizaje automático supervisadas.
- Los modelos discriminativos tienen la ventaja de ser más robustos a los valores atípicos, a diferencia de los modelos generativos.
- Los modelos discriminativos son más robustos a los valores atípicos en comparación con los modelos generativos.
Ahora exploraremos brevemente algunos ejemplos diferentes de modelos de aprendizaje automático generativos y discriminativos.
Ejemplos de Modelos Generativos
Análisis Discriminante Lineal (LDA)
Los modelos LDA funcionan estimando la varianza y la media de los datos para cada clase en el conjunto de datos. Después de calcular la media y la varianza para cada clase, se pueden hacer predicciones estimando la probabilidad de que un conjunto determinado de entradas pertenezca a una clase determinada.
Modelos de Markov Ocultos
Las Cadenas de Markov se pueden considerar como gráficos con probabilidades que indican cuán probable es que nos movamos de un punto en la cadena, un “estado”, a otro estado. Las cadenas de Markov se utilizan para determinar la probabilidad de moverse de un estado j a un estado i, que se puede denotar como p(i,j). Esto es solo la probabilidad conjunta mencionada anteriormente. Un Modelo de Markov Oculto es donde se utiliza una cadena de Markov invisible y no observable. Las entradas de datos se dan al modelo y las probabilidades para el estado actual y el estado que lo precede inmediatamente se utilizan para calcular el resultado más probable.
Redes Bayesianas
Las redes bayesianas son un tipo de modelo gráfico probabilístico. Representan las dependencias condicionales entre las variables, como se representa en un Gráfico Acíclico Dirigido. En una red bayesiana, cada arista del gráfico representa una dependencia condicional, y cada nodo corresponde a una variable única. La independencia condicional para las relaciones únicas en el gráfico se puede utilizar para determinar la distribución conjunta de las variables y calcular la probabilidad conjunta. En otras palabras, una red bayesiana captura un subconjunto de las relaciones independientes en una distribución de probabilidad conjunta específica.
Una vez que se ha creado y definido correctamente una red bayesiana, con Variables Aleatorias, Relaciones Condicionales y Distribuciones de Probabilidad conocidas, se puede utilizar para estimar la probabilidad de eventos o resultados.
Uno de los tipos de Redes Bayesianas más comúnmente utilizados es el Modelo Naive Bayes. Un Modelo Naive Bayes aborda el desafío de calcular la probabilidad para conjuntos de datos con muchos parámetros/variables tratando todas las características como independientes entre sí.
Ejemplos de Modelos Discriminativos
Máquinas de Soporte Vectorial
Las máquinas de soporte vectorial operan dibujando un límite de decisión entre los puntos de datos, encontrando el límite de decisión que mejor separa las diferentes clases en el conjunto de datos. El algoritmo de la Máquina de Soporte Vectorial dibuja líneas o hiperplanos que separan los puntos, para espacios bidimensionales y tridimensionales, respectivamente. La Máquina de Soporte Vectorial intenta encontrar la línea/hiperplano que mejor separa las clases intentando maximizar el margen, o la distancia entre la línea/hiperplano y los puntos más cercanos. Los modelos de la Máquina de Soporte Vectorial también se pueden utilizar en conjuntos de datos que no son linealmente separables utilizando el “truco del núcleo” para identificar límites de decisión no lineales.
Regresión Logística
La regresión logística es un algoritmo que utiliza una función logit (log-odds) para determinar la probabilidad de que una entrada esté en uno de dos estados. Se utiliza una función sigmoide para “aplastar” la probabilidad hacia 0 o 1, verdadero o falso. Las probabilidades mayores que 0,50 se asumen como clase 1, mientras que las probabilidades de 0,49 o inferiores se asumen como 0. Por esta razón, la regresión logística se utiliza comúnmente en problemas de clasificación binaria. Sin embargo, la regresión logística se puede aplicar a problemas de clasificación multiclase utilizando un enfoque de “uno contra todos”, creando un modelo de clasificación binaria para cada clase y determinando la probabilidad de que un ejemplo sea una clase objetivo o otra clase en el conjunto de datos.
Árbol de Decisión
Un árbol de decisión funciona dividiendo un conjunto de datos en porciones cada vez más pequeñas, y una vez que los subconjuntos no se pueden dividir más, el resultado es un árbol con nodos y hojas. Los nodos en un árbol de decisión son donde se toman decisiones sobre los puntos de datos utilizando diferentes criterios de filtrado. Las hojas en un árbol de decisión son los puntos de datos que han sido clasificados. Los algoritmos del árbol de decisión pueden manejar tanto datos numéricos como categóricos, y las divisiones en el árbol se basan en variables/características específicas.
Bosques Aleatorios
Un modelo de bosque aleatorio es básicamente solo una colección de árboles de decisión donde las predicciones de los árboles individuales se promedian para llegar a una decisión final. El algoritmo del bosque aleatorio selecciona observaciones y características de forma aleatoria, construyendo los árboles individuales en función de estas selecciones.
Este artículo tutorial explorará cómo crear un Gráfico de Caja en Matplotlib. Los gráficos de caja se utilizan para visualizar estadísticas resumidas de un conjunto de datos, mostrando atributos de la distribución como el rango de los datos y la distribución.












