- Documentos de la API
- Introducción
- Uso de la API
- Tutorial de la API
- Resumen
- Fuentes
- Conjuntos de datos
- Comentarios
- Archivos adjuntos
- Predictions
- Crear una transmisión
- Actualizar una transmisión
- Obtener una transmisión por nombre
- Obtener todas las transmisiones
- Eliminar una transmisión
- Obtener resultados de la transmisión
- Obtener comentarios de una transmisión (heredado)
- Avanzar una transmisión
- Restablecer una transmisión
- Etiquetar una excepción
- Desetiquetar una excepción
- Eventos de auditoría
- Obtener todos los usuarios
- CLI
- Guías de integración
- Integración de Exchange con el usuario del servicio de Azure
- Integración de Exchange con la autenticación de aplicaciones de Azure
- Automatización en tiempo real
- Obtener datos para Tableau con Python
- Integración de Elasticsearch
- Integración de EWS autohospedado
- Marco de automatización de UiPath
- Actividades de UiPath Marketplace
- Actividades oficiales de UiPath
- Blog
- Cómo aprenden las máquinas a entender palabras: una guía para las incrustaciones en PNL
- Aprendizaje basado en solicitudes con Transformers
- Efficient Transformers II: destilación de conocimientos y ajuste
- Transformadores eficientes I: mecanismos de atención
- Modelado de intenciones jerárquico profundo no supervisado: obtener valor sin datos de entrenamiento
- Corrección del sesgo de anotación con Communications Mining
- Aprendizaje activo: mejores modelos ML en menos tiempo
- Todo está en los números: evaluar el rendimiento del modelo con métricas
- Por qué es importante la validación del modelo
- Comparación de Communications Mining y Google AutoML para la inteligencia de datos conversacional
Guía para desarrolladores de Communications Mining
Modelado de intenciones jerárquico profundo no supervisado: obtener valor sin datos de entrenamiento
Las empresas se basan en la comunicación: los clientes se ponen en contacto cuando quieren algo, los compañeros se comunican para hacer el trabajo. Cada mensaje cuenta. Nuestra misión en Communications Mining es desbloquear el valor de estos mensajes y ayudar a cada equipo de una empresa a ofrecer mejores productos y servicios de forma eficiente y a escala.
Con ese objetivo, investigamos y desarrollamos continuamente nuestra tecnología básica de aprendizaje automático y comprensión del lenguaje natural. Los modelos de aprendizaje automático de Communications Mining utilizan el entrenamiento previo, el aprendizaje no supervisado, el aprendizaje semisupervisado y el aprendizaje activo para ofrecer una precisión de vanguardia con un tiempo y una inversión mínimos por parte de nuestros usuarios.
En esta publicación de investigación, exploramos un nuevo enfoque no supervisado para reconocer automáticamente los temas y las intenciones, y su estructura de taxonomía, a partir de un conjunto de datos de comunicaciones. Se trata de mejorar la calidad de los conocimientos que ofrecemos y la velocidad con la que se obtienen.
Los modelos de tema son una clase de métodos para descubrir los "temas" que se producen en una colección de "documentos". Es importante destacar que los modelos de tema funcionan sin tener que recopilar ningún dato de entrenamiento anotado. Identifican automáticamente los temas en un conjunto de datos y qué temas aparecen en cada documento.
Un correo electrónico hipotético de "comercio fallido" y los tipos de temas jerárquicos que nos gustaría inferir automáticamente
En esta publicación:
- Explicamos los modelos de temas tradicionales y discutimos algunas de sus debilidades, por ejemplo, que el número de temas debe conocerse de antemano, las relaciones entre temas no se capturan, etc.
- Organizamos los temas en una jerarquía que se deduce automáticamente en función de la estructura temática del conjunto de datos. La jerarquía agrupa temas relacionados semánticamente.
- Conseguimos una jerarquía de temas más coherente incorporando incrustaciones basadas en Transformer en el modelo.
Los modelos de temas asumen que un conjunto de datos (colección de documentos) contiene un conjunto de temas. Un tema especifica la probabilidad de que aparezca cada palabra en un documento. Cada documento del conjunto de datos se genera a partir de una combinación de los temas. Por lo general, los conjuntos de palabras que aparecen juntas con frecuencia tendrán una alta probabilidad en un tema determinado.
Por ejemplo, supongamos que tenemos un conjunto de datos compuesto por los siguientes documentos:
- Documento 1: "los perros son descendientes domesticados de los lobos"
- Documento 2: "los gatos son mamíferos carnívoros con bigotes y garras retráctiles"
- Documento 3: "se sabe que los grandes felinos atacan a los perros"
- Documento 4: "tras ser arañados por las afiladas garras de los gatos, algunos perros pueden volverse temerosos de los gatos"
- Documento 5: "los perros domesticados pueden preferir la presencia de gatos a otros perros"
Un modelo de tema entrenado en estos documentos puede aprender los siguientes temas y asignaciones de tema de documento:
TEMA 1 | TEMA 2 |
---|---|
perros | gatos |
domesticado | garras |
Lobos | Bigotes |
... | ... |
Temas de ejemplo con palabras ordenadas por mayor probabilidad.
TEMA 1 | TEMA 2 | |
---|---|---|
Documento 1 | 100 % | 0% |
Documento 2 | 0% | 100 % |
Documento 3 | 50 % | 50 % |
Documento 4 | 33% | 67% |
Documento 5 | 67% | 33% |
Ejemplos de asignaciones de tema de documento.
Ver las palabras más probables para cada tema, así como los temas a los que pertenece cada documento, proporciona una visión general de lo que trata el texto de un conjunto de datos y qué documentos son similares entre sí.
El modelo de tema canónico se llama Asignación de Dirichlet latente (LDA). Es un modelo generativo, entrenado utilizando la estimación de máxima verosimilitud (aproximada). LDA asume que:
- Hay K temas, cada uno de los cuales especifica una distribución sobre el vocabulario (el conjunto de palabras en el conjunto de datos).
- Cada documento (colección de palabras) tiene una distribución por temas.
- Cada palabra de un documento se genera a partir de un tema, según la distribución del documento sobre los temas y la distribución del tema sobre el vocabulario.
La mayoría de los modelos de temas modernos se basan en LDA; inicialmente nos centramos en el modelo de tema integrado (ETM). El ETM utiliza incrustaciones para representar tanto palabras como temas. En el modelado de temas tradicional, cada tema es una distribución completa sobre el vocabulario. Sin embargo, en el ETM, cada tema es un vector en el espacio de incrustación. Para cada tema, el ETM utiliza la incrustación de temas para formar una distribución sobre el vocabulario.
Entrenamiento e inferencia
- Muestra la representación latente z de la distribución previa: z∼N(0,I).
- Calcular las proporciones del tema θ=softmax(z).
- Para cada palabra w del documento:
- Ejemplo de la asignación del tema latente
- Muestra la palabra
- Ejemplo de la asignación del tema latente
Se utiliza una gaussiana para la distribución de inferencia, cuya media y varianza son las salidas de una red neuronal que toma como entrada la representación de la bolsa de palabras del documento.
Gracias al objetivo de entrenamiento anterior, la distribución de inferencia aprende a aproximarse a la verdadera pero intratable posterior, es decir, qθ(z∣x)≃p(z∣x). Esto significa que una vez entrenado el modelo, podemos utilizar la distribución de inferencia para encontrar los temas a los que se ha asignado un documento. Tomar la media de la distribución de inferencia y aplicar la función softmax (según el paso 2 del proceso generativo anterior) proporcionará las proporciones posteriores aproximadas del tema para un documento determinado.
Un ejemplo del mundo real
Entrenamos un ETM en el conjunto de datos de 20 grupos de noticias , que tiene comentarios de foros de discusión sobre 20 temas jerárquicos categorizados de la siguiente manera:
- Informática: comp.graphics, comp.os.ms-windows.misc, comp.sys.ibm.pc.hardware, comp.sys.mac.hardware, comp.windows.x
- Recreación: rec.autos, rec.motorcycles, rec.sport.baseball, rec.sport.hockey
- Ciencia: sci.crypt, sci.electronics, sci.med, sci.space
- Política: talk.politics.misc, hablar.política.pistolas, talk.politics.mideast
- Religión: talk.religion.misc, alt.atheism, soc.religion.christian
- Varios: misc.forsale
En Communications Mining, trabajamos exclusivamente con datos de comunicaciones, que son notoriamente privados. Para la reproducibilidad y porque es el conjunto de datos de modelado de temas más utilizado en la literatura de investigación de aprendizaje automático, utilizamos aquí el conjunto de datos de 20 grupos de noticias. Esto se considera el "Hola mundo" del modelado de temas.
Entrenamos el modelo con 20 temas (es decir, K = 20), ya que para este conjunto de datos ya sabemos cuántos temas hay (pero, en general, este no será el caso). Usamos GloVe para inicializar la matriz de incrustación U.
A continuación se muestran las 10 palabras más aprendidas para cada tema, y el número de documentos que tienen cada tema como el más probable:
Las principales palabras aprendidas coinciden en términos generales con los temas reales del conjunto de datos, por ejemplo tema 2 = talk.politics.guns, tema 13 = sci.space, etc Para cada documento, también podemos ver las probabilidades de asignación de temas; a continuación se muestran algunos ejemplos. Ciertos documentos tienen una alta probabilidad de un solo tema, mientras que otros documentos son mezclas de varios temas.
Ejemplo 1
Parece una tontería, pero aunque he localizado cosas como tgif que puede editar archivos gif, y varias herramientas para convertir a/desde formato gif, no he podido localizar un programa que solo abra una ventana y muestre un archivo gif en ella. He buscado en varios archivos de preguntas frecuentes, también en vano. ¿Hay alguno al acecho en algún archivo? Nada sofisticado; simplemente "mostrar la imagen bonita"? Alternativamente, si pudiera localizar las especificaciones para gif, supongo que no sería demasiado difícil escribirlo yo mismo, pero no tengo ni idea de dónde empezar a buscar las especificaciones. (Bueno, en realidad tengo una idea: este grupo de noticias. ;-) Obtener, xv, versión 3.0. Lee/muestra/manipula muchos formatos diferentes.
Ejemplo 2
El portero al que te refieres es Clint Malarchuk. En ese momento estaba jugando con los Sabres. Su equipo inmediatamente anterior era el Washington Capitals. Aunque se recuperó y siguió jugando, desconozco su paradero actual.
Ejemplo 3
hola en networld, tenemos un laboratorio de mac antiguos (SE y Plus). No tenemos suficiente dinero para comprar todas las máquinas nuevas, por lo que estamos considerando comprar algunos superdrives para nuestros viejos Mac para permitir que las personas con discos de alta densidad utilicen nuestro equipo. Me preguntaba qué experiencias (buenas o malas) han tenido las personas con este tipo de actualización. Murray
Incluso sin saber nada sobre el conjunto de datos de antemano, estos resultados muestran que es posible obtener rápida y fácilmente una visión general del conjunto de datos, identificar a qué temas pertenece cada documento y agrupar documentos similares. Si también queremos recopilar datos anotados para entrenar una tarea supervisada, las salidas del modelo de tema nos permiten comenzar a anotar desde una perspectiva más informada.
Aunque los modelos de tema descritos en la sección anterior pueden ser muy útiles, tienen ciertas limitaciones:
- El número de temas debe especificarse de antemano. En general, no sabremos cuál debería ser el número correcto.
- Aunque es posible entrenar varios modelos con diferentes números de temas y elegir el mejor, esto es costoso.
- Incluso si conocemos el número correcto de temas, los temas aprendidos pueden no corresponder a los correctos, por ejemplo el tema 16 de la figura 1 no parece corresponder a ninguno de los temas reales del conjunto de datos de 20 grupos de noticias.
- El modelo no captura cómo se relacionan los temas entre sí. Por ejemplo, en la Figura 1 hay varios temas sobre informática, pero el modelo no aprende la idea de que están relacionados.
En realidad, suele ocurrir que el número de temas se desconoce de antemano, y los temas están relacionados de alguna manera entre sí. Un método para abordar estos problemas es representar cada tema como un nodo en un árbol. Esto nos permite modelar las relaciones entre temas; los temas relacionados pueden estar en la misma parte del árbol. Esto proporcionaría resultados mucho más fáciles de interpretar. Además, si el modelo puede aprender de los datos cuántos temas debe haber y cómo se relacionan entre sí, no necesitamos saber nada de esto de antemano.
Para lograrlo, utilizamos un modelo basado en el Modelo de tema neural estructurado en árbol (TSNTM). El proceso generativo funciona eligiendo una ruta desde la raíz del árbol hasta una hoja, y luego eligiendo un nodo a lo largo de esa ruta. Las probabilidades sobre las rutas del árbol se modelan mediante un proceso de ruptura de palos, que se parametriza mediante una red neuronal doblemente recurrente.
Procesos de ruptura de palos
El proceso de ruptura de palos se puede utilizar para modelar las probabilidades sobre las rutas de un árbol. Intuitivamente, esto implica romper repetidamente un palo que inicialmente tiene una longitud de 1. La proporción del palo correspondiente a un nodo en el árbol representa la probabilidad a lo largo de ese camino.
Por ejemplo, considera el árbol de la Figura 2, con 2 capas y 2 elementos secundarios en cada capa. En el nodo raíz, la longitud del stick es 1. A continuación, se divide en dos partes, de 0,7 y 0,3 de longitud respectivamente. Cada una de estas piezas se descompone aún más hasta llegar a las hojas del árbol. Como podemos seguir rompiendo el palo, el árbol puede ser arbitrariamente ancho y profundo.
Redes neuronales doblemente recurrentes
Se utiliza una red neuronal doblemente recurrente (DRNN) para determinar las proporciones de desconexión. Después de inicializar aleatoriamente el estado oculto del nodo raíz, h1, para cada tema k el estado oculto hk viene dado por:
donde hpar(k) es el estado oculto del nodo principal, y hk-1 es el estado oculto del nodo hermano inmediatamente anterior (los hermanos se ordenan en función de su índice inicial).
donde j∈{1,…,k−1} son los hermanos anteriores del nodo k. Estos son los valores en verde en la Figura 2. El valor en cada nodo hoja es la probabilidad de esa ruta (solo hay una ruta a cada nodo hoja).
Ahora que tenemos probabilidades sobre las rutas del árbol, necesitamos probabilidades sobre los nodos dentro de cada ruta. Estos se calculan utilizando otro proceso de ruptura de palos. En cada nivel del árbol, el estado oculto gl viene dado por:
Esto significa que todos los nodos en el mismo nivel del árbol tienen el mismo valor para gl.
La proporción del stick restante asignado al nivel l,nl viene dada por:
La probabilidad en el nivel l,θl viene dada por:
Empíricamente, a veces encontramos que las palabras más probables para los nodos secundarios en el árbol no estaban semánticamente relacionadas con las de sus padres. Para solucionar esto, en la Ecuación 2 aplicamos una temperatura para ablandar el sigmoide:
En nuestros experimentos, establecemos ψ=0.1. Esto hace que sea más probable que cuando un nodo secundario tenga una masa de probabilidad distinta de cero, sus padres también la tengan (reduciendo la posibilidad de que los nodos secundarios no estén relacionados con sus padres).
Entrenamiento e inferencia
El objetivo de entrenamiento sigue siendo el mismo que en la Ecuación 1; el único cambio es cómo se especifica p(xw=vw|z). Esto viene dado ahora por:
Actualizar la estructura de árbol
Hasta ahora, la estructura de árbol se ha corregido. Sin embargo, nos gustaría que esto se aprendiera en función de los datos. Especificar la estructura exacta del árbol como un hiperparámetro es mucho más difícil que simplemente especificar una serie de temas, como haríamos para un modelo de tema plano. Si conociéramos la estructura general del árbol de antemano, probablemente no necesitaríamos modelar los temas. Por lo tanto, las aplicaciones prácticas de los modelos de temas estructurados en árbol deben poder aprender la estructura de los datos. Para ello, se utilizan dos reglas heurísticas para añadir y eliminar nodos del árbol. En primer lugar, se estima la masa de probabilidad total en cada nodo utilizando un subconjunto aleatorio de los datos de entrenamiento. En el nodo k, esta estimación es:
donde d={1,…,D} indexa el subconjunto de documentos elegido aleatoriamente y Nd es el número de palabras en el documento d. Según estas estimaciones, después de cada I iteraciones:
- Si pk está por encima de un umbral, se añade un elemento secundario debajo del nodo k para refinar el tema.
- Si la suma acumulada es menor que un umbral, se eliminan el nodo k y sus descendientes.
Resultados en 20 grupos de noticias
Ejecutamos el TSNTM en el mismo conjunto de datos de 20 grupos de noticias utilizado para entrenar el ETM anterior. Inicializamos el árbol para que tenga 2 capas con 3 elementos secundarios en cada capa. A continuación se muestra la estructura de árbol final, las 10 palabras principales aprendidas para cada tema y el número de documentos que tienen cada tema como el más probable:
En comparación con el modelo de tema plano, el enfoque estructurado en árbol tiene claras ventajas. El árbol se aprende automáticamente a partir de los datos, y los temas similares se agrupan en diferentes partes del árbol. Los temas de nivel superior se encuentran en la parte superior del árbol (p. ej. las palabras poco informativas que aparecen en muchos documentos están en la raíz), y los temas más refinados/específicos están en las hojas. Esto hace que los resultados sean mucho más informativos y fáciles de interpretar que la salida del modelo plano de la Figura 1.
A continuación se muestran documentos de ejemplo y las probabilidades de asignación de temas asociadas aprendidas por el TSNTM:
Ejemplo 1
Acabamos de recibir un escáner en color AppleOne para nuestro laboratorio. Sin embargo, tengo problemas para obtener una salida escaneada razonable al imprimir una foto escaneada en una LaserWriter IIg. He intentado escanear a una resolución más alta y la visualización en la pantalla parece muy agradable. Sin embargo, la versión impresa sale fea. ¿Se debe a las capacidades de resolución de la impresora? ¿O hay trucos para obtener una mejor calidad? ¿O deberíamos obtener algo (como PhotoShop) para "embellecer" la imagen? Agradeceré cualquier sugerencia. Gracias de antemano, -Kris
Ejemplo 2
Se acabó: los Sabres regresaron para vencer a los Bruins en tiempo extra 6-5 esta noche para arrasar en la serie. Un bonito gol de Brad May (Lafontaine le dio una asistencia mientras estaba tumbado sobre el hielo) puso fin al encuentro. Fuhr abandonó el juego con una lesión en el hombro y Lafontaine también se golpeó; sin embargo, los Sabres tendrán una semana de descanso, por lo que las lesiones no deberían ser un problema. Montreal superó a Quebec por 3-2 para cuadrar su serie, que parece dirigirse al Juego 7. Los Habs dominaron los dos primeros períodos y tuvieron la mala suerte de tener un empate 2-2 solo después de 40 minutos. Sin embargo, un gol tempranero de Brunet en el tercero lo ganó. Los Islanders ganaron su tercer partido de la serie gracias a un gol de Ray Ferraro por 4-3; los Caps simplemente colapsaron después de tomar una ventaja de 3-0 en el segundo. El récord de todos los tiempos de las Islas en los playoffs es ahora de 28-7.
Ejemplo 3
Dígame dónde puedo conseguir un CD del sello Wergo Music por menos de 20 $.
Los documentos que pertenecen claramente a un tema específico (por ejemplo, el primero) tienen una alta probabilidad en un nodo hoja, mientras que los que no pertenecen claramente a ninguno de los temas aprendidos (por ejemplo, el tercero) tienen una alta probabilidad en el nodo raíz .
Evaluación cuantitativa
Los modelos de temas son notoriamente difíciles de evaluar cuantitativamente. Sin embargo, la métrica más popular para medir la coherencia de los temas es la información mutua normalizada por puntos (NPMI). Tomando las M palabras principales de cada tema, el NPMI será alto si cada par de palabras wi y wj tienen una alta probabilidad conjunta P(wi,wj) en comparación con sus probabilidades marginales P(wi) y P(wj):
Las probabilidades se estiman utilizando recuentos empíricos.
NPMI | |
---|---|
ETM | 0.193 |
TSNTM | 0.227 |
Estos resultados respaldan los resultados cualitativos de que el TSNTM es un modelo más coherente que el ETM.
Aunque el TSNTM produce resultados intuitivos y fáciles de interpretar, el modelo aprendido aún tiene debilidades. Por ejemplo, en la Figura 3, los temas relacionados con la política y el espacio se han agrupado en el mismo nodo principal. Esto puede ser razonable, pero su nodo principal se relaciona con la religión, lo que podría decirse que no es coherente. Otro ejemplo más sutil es que el Tema 1.3 agrupa temas informáticos relacionados tanto con el hardware como con el software; quizás estos deberían estar separados.
Nuestra hipótesis es que estos problemas se deben a que los modelos entrenados hasta ahora se han basado en incrustaciones de GloVe (no contextuales). Esto puede dificultar la eliminación de la ambigüedad de las palabras que tienen diferentes significados en diferentes contextos. En los últimos años, los modelos basados en Transformer han alcanzado un rendimiento de última generación para el aprendizaje de representaciones informativas y contextuales de texto. Buscamos incorporar las incrustaciones de Transformer en el TSNTM.
all-mpnet-base-v2
de Oración-BERT (SBERT), ya que consigue puntuaciones altas de forma constante en una serie de tareas a nivel de oración.
Entrenamos un modelo que, por lo demás, es idéntico al TSNTM de la sección anterior, excepto con las incorporaciones SBERT añadidas al modelo de inferencia. Nuevamente, a continuación se muestran las 10 palabras más aprendidas para cada tema, y el número de documentos que tienen cada tema como el más probable:
El TSNTM con las incrustaciones de SBERT parece abordar algunos de los problemas de incoherencia del modelo exclusivo de GloVe. Los temas de religión, política y cifrado ahora se agrupan bajo el mismo tema principal. Pero, a diferencia del modelo exclusivo de GloVe, este tema principal es ahora un tema más genérico cuyas principales palabras se relacionan con personas que expresan opiniones. Los temas de hardware y software de la computadora ahora se han dividido, y el espacio está en su propia parte del árbol. El NPMI también sugiere que el modelo con las incorporaciones SBERT es más coherente:
NPMI | |
---|---|
ETM | 0.193 |
TSNTM (solo GloVe) | 0.227 |
TSNTM (guante + SBERT) | 0.234 |
Hemos demostrado que los modelos de tema pueden ser una excelente manera de obtener una comprensión de alto nivel de un conjunto de datos sin tener que hacer ninguna anotación.
- Los modelos de tema 'planos' son los más utilizados, pero tienen puntos débiles (por ejemplo, resultado no es fácil de interpretar, necesita saber el número de temas de antemano).
- Estas debilidades pueden abordarse utilizando un modelo estructurado en árbol que agrupe los temas relacionados y aprenda automáticamente la estructura del tema a partir de los datos.
- Los resultados del modelado pueden mejorarse aún más utilizando las incrustaciones de Transformer.
Si desea probar Communications Mining en su empresa, regístrese para una prueba o vea una demostración.