Red de conocimiento informático - Espacio del host - Así lo entendí paso a paso: Topic Model (modelo de tema), LDA (código de caso)

Así lo entendí paso a paso: Topic Model (modelo de tema), LDA (código de caso)

LDA se puede dividir en los siguientes 5 pasos:

Hay dos significados sobre LDA, uno es análisis discriminante lineal (Análisis Discriminante Lineal) y el otro es modelo de tema probabilístico: Latente Asignación latente de Dirichlet. (LDA para abreviar), este artículo analiza este último.

Según la introducción en Wiki, LDA fue propuesto por Blei, David M., Ng, Andrew Y. y Jordan en 2003. Es un método que utiliza el tema de cada documento en el conjunto de documentos como una distribución de probabilidad Se proporciona el modelo de tema, de modo que después de analizar una gran cantidad de documentos y extraer sus temas (distribución), se puede realizar la agrupación de temas o la agrupación de texto en función de los temas (distribución), logrando así la agrupación de temas o la clasificación de texto. Al mismo tiempo, este es un modelo típico de bolsa de palabras, es decir, el documento se compone de un conjunto de palabras y no existe una relación secuencial entre las palabras. Además, un documento puede contener varios temas, y cada palabra del documento es generada por uno de los temas.

¿Cómo generamos documentos los humanos? Primero, enumere varios temas, luego seleccione el tema con cierta probabilidad, luego seleccione las palabras contenidas en el tema con cierta probabilidad y finalmente combínelas en un artículo. Como se muestra en la imagen a continuación (las palabras en diferentes colores en la imagen de arriba corresponden a palabras de diferentes temas).

Entonces LDA hace lo contrario: invierte la distribución de temas dado un documento.

En el modelo LDA, el proceso de generación de documentos es el siguiente:

Entre ellos, la distribución tipo Beta es la distribución de probabilidad previa del yugo de la distribución binomial, y la distribución de Dirichlet es la distribución polinómica *** Distribución de probabilidad previa del yugo. Además, la estructura del modelo gráfico de LDA es la siguiente (similar a la estructura de red bayesiana):

Primero expliquemos los conceptos presentados anteriormente.

Hasta ahora podemos ver que las distribuciones binomial y multinomial son muy similares, y que las distribuciones Beta y Dirichlet también son muy similares.

Si desea comprender los principios más profundamente, puede consultar la siguiente información: Descripción general del modelado de temas LDA, o puede leer la lista y finalmente regresar a la fórmula detallada, así. poder entenderlo mejor.

A modo de resumen, se pueden extraer los siguientes puntos.

Antes de hablar de modelos LDA, volvamos paso a paso a lo básico: modelos monocadena, modelos híbridos monocadena y el modelo más cercano a LDA, el modelo pLSA. Para facilitar la descripción, primero definamos algunas variables:

Por otro lado, ahora que se ha generado el documento, ¿cómo inferimos su tema a partir del documento generado? Este proceso de utilizar los documentos que ve para inferir sus temas ocultos (distribuciones) (en realidad, el proceso opuesto de generar los documentos) es de lo que se trata el modelado de temas: descubrir automáticamente temas (distribuciones) en un conjunto de documentos.

El documento d y la palabra w son nuestras muestras observadas, por lo que son conocidos para cualquier documento determinado. Por lo tanto, basándonos en una gran cantidad de información conocida sobre la palabra del documento, podemos entrenar el tema del documento y la palabra del tema, como se muestra en la siguiente fórmula:

Por lo tanto, podemos obtener cada palabra en el documento La probabilidad de generación de una palabra es:

Dado que se puede calcular con anticipación y se desconoce la suma, este es el parámetro (valor) que queremos para estimar En términos sencillos, es ¿Cuál es el método para maximizar la estimación de θ

? Los métodos de estimación de parámetros comúnmente utilizados incluyen la estimación de máxima verosimilitud (MLE), la estimación máxima a posteriori (MAP), la estimación bayesiana, etc. Dado que los parámetros a estimar contienen la variable oculta z, podemos considerar el algoritmo EM. Para obtener un algoritmo EM detallado, consulte la sección sobre algoritmo EM escrita anteriormente.

De hecho, comprender el modelo pLSA es casi tan rápido como comprender el modelo LDA, porque LDA es un marco bayesiano basado en pLSA, es decir, LDA es la versión bayesiana de pLSA (precisamente porque LDA es un Bayesiano de Sri Lanka, por lo que es necesario considerar el conocimiento histórico previo, razón por la cual se agregan dos parámetros previos).

A continuación, comparemos cómo el modelo LDA descrito al principio de este artículo genera documentos:

En LDA, seleccionar temas y seleccionar palabras siguen siendo procesos aleatorios, y aún puedes Primero se parte de la distribución de temas {educación: 0,5, economía: 0,3, transporte: 0,2}, luego de la distribución de palabras correspondiente al tema {universidad: 0,5, docente: 0,2}, y luego de la distribución de palabras correspondiente {universidad: 0,5 , profesor: 0,2 }, y luego de la distribución de palabras correspondiente {universidad: 0,5, profesor: 0,2}. Universidad: 0.5, Profesor: 0.3, Curso: 0.2} Extrae la palabra: Universidad.

Entonces, ¿cuál es la diferencia entre PLSA y LDA? La diferencia es:

En PLSA, la distribución de temas y la distribución de palabras se determinan de forma única. Se puede afirmar claramente que la distribución de temas puede ser {Educación: 0,5, Economía: 0,3, Transporte: 0,2} y. la distribución de palabras puede ser {Universidad: 0,5, Facultad: 0,3, Curso: 0,2}.

Sin embargo, en LDA, la distribución de temas y la distribución de palabras ya no están determinadas de forma única ni son invariantes, es decir, no se pueden dar con precisión. Por ejemplo, la distribución del tema puede ser {Educación: 0,5, Economía: 0,3, Transporte: 0,2}, o puede ser {Educación: 0,6, Economía: 0,3, Transporte: 0,2}: Educación: 0,6, Economía: 0,2, Transporte: 0.2}, O {educación: 0.6, economía: 0.2, transporte: 0.2}: 0.2}, ya no estamos seguros (es decir, no sabemos) cuál es porque cambia aleatoriamente. Sin embargo, no importa cómo cambie, todavía obedece a una determinada distribución, es decir, la distribución del tema sigue la distribución de palabras determinada aleatoriamente por Dirichlet de antemano. Dado que LDA es una versión bayesiana de PLSA, el tema y la distribución de palabras en sí están determinados aleatoriamente por el conocimiento previo.

En otras palabras, LDA añade dos distribuciones previas (bayesianización) a pLSA: un Dirichlet previo para la distribución de temas y un Dirichlet previo para la distribución de palabras.

En resumen, LDA es en realidad solo una versión bayesiana de pLSA. Una vez generado el documento, ambos deben inferir su distribución de temas y de palabras en función del documento (es decir, ambos esencialmente tienen que estimar un documento determinado. genera un tema, un tema determinado genera una palabra), pero la diferencia con el método de inferencia de parámetros es que en pLSA, la idea de estimación de máxima verosimilitud se utiliza para inferir dos parámetros fijos desconocidos, mientras que LDA combina estos dos Los parámetros son colocado en pLSA. LDA convierte estos dos parámetros en variables aleatorias y agrega un dirichlet previo.

Por tanto, la diferencia esencial entre pLSA y LDA es que utilizan ideas diferentes para estimar parámetros desconocidos. El primero utiliza las ideas de la escuela frecuentista y el segundo utiliza las ideas de la escuela bayesiana.

Estimación de parámetros LDA: muestreo de Gibbs, ver referencias al final de este artículo.

El problema del arranque en frío en los sistemas de recomendación se refiere a cómo hacer recomendaciones personalizadas a los usuarios sin una gran cantidad de datos de usuario, optimizando así las tasas de clics, las tasas de conversión o la experiencia del usuario (tiempo de permanencia del usuario, tasa de retención). , etc.) objetivos. Los problemas de arranque en frío generalmente se dividen en arranque en frío del usuario, arranque en frío del proyecto y arranque en frío del sistema.

La solución al problema del arranque en frío suele ser recomendaciones basadas en contenido.

Tomando a Hulu como ejemplo, para el inicio en frío del usuario, esperamos utilizar la información de registro del usuario (como edad, sexo, pasatiempos, etc.), palabras clave de búsqueda u otra información obtenida legalmente fuera del sitio (como el usuario que usa Facebook). cuenta para iniciar sesión y obtener acceso a Facebook). Autorización de amigos y comentarios) para predecir temas de interés para los usuarios. Una vez que obtenemos los temas que le interesan al usuario, podemos encontrar otros usuarios con los mismos temas de interés y usar su comportamiento histórico para predecir qué películas le interesan al usuario.

De manera similar, para el problema de inicio en frío del proyecto, podemos inferir el tema de la película en función del director, actores, categorías, palabras clave, etc. Luego podemos encontrar películas similares basadas en los vectores temáticos y recomendar nuevas películas a los usuarios que hayan disfrutado de estas películas similares en el pasado. Se pueden utilizar modelos de temas (pLSA, LDA, etc.) para obtener temas para usuarios y películas.

Tomando a los usuarios como ejemplo, consideramos a cada usuario como un documento en el modelo de tema y sus características correspondientes como palabras en el documento, de modo que cada usuario pueda representarse como un paquete de características. Después de aprender del modelo de temas, las características que a menudo aparecen juntas corresponderán al mismo tema y cada usuario también obtendrá la distribución de temas correspondiente. Se puede utilizar un enfoque similar para obtener la distribución temática de cada película.

¿Cómo solucionar el problema del arranque en frío? Primero, puede obtener un vector de tema para cada usuario y película, luego necesita saber cuánta preferencia hay entre el tema del usuario y el tema de la película, es decir, qué temas probablemente les gusten a los usuarios y de qué temas trata la película. . Cuando no hay datos en el sistema, necesitamos algunos conocimientos previos para tener en cuenta esto. Dado que la cantidad de temas suele ser pequeña, a medida que el sistema se conecta y se recopila una pequeña cantidad de datos, podemos estimar con mayor precisión el grado de información. preferencia entre temas.

Una comprensión sencilla del modelo temático LDA

Aplicación de modelado LDA: descripción general de los correos electrónicos de Hillary

Series populares de aprendizaje automático