El objetivo de esta pista es configurar tareas de chat activas basadas en gráficos de conocimiento. Diálogo basado en el conocimiento: dirección del sitio web oficial
Objetivo de conversación g, donde g=START->TOPIC_A->TOPIC_B significa que la máquina chatea activamente desde el estado de inicio en frío con el tema A y luego con el tema B. Esto significa que en esta tarea, la máquina guía activamente la conversación, en esta tarea los temas específicos incluyen películas y personajes de entretenimiento;
Información de conocimiento relacionada M, donde M = f1, f2,..., fn incluye tres categorías, a saber: información de conocimiento del tema A, información de conocimiento del tema B e información relacionada del tema A y el tema B. En esta tarea, la información de conocimiento relevante específica incluye taquilla de películas, director y evaluación, etc., expresada en forma de SPO. Es decir (Sujeto, Predicado, Objeto), es decir (entidad uno, predicado, entidad dos).
Secuencia de diálogo actual H=u1,u2,...u(t-1)
La máquina responde ut.
Combinación de indicadores de evaluación automática e indicadores de evaluación manual. El índice de evaluación automática considera tres niveles de medición, a saber, nivel de caracteres (puntuación F1), nivel de palabras (BLEU) y diversidad de respuestas (DISTINCT). En cuanto a la diversidad de respuestas, todavía se basa en el cálculo de palabras, pero examina otra dimensión de las palabras generadas. En la Referencia 2 el autor escribe:
distintivo-1 y distinto-2 son respectivamente el número de unigramas y bigramas distintos dividido por el número total de palabras generadas
Con referencia al tutorial proporcionado oficialmente por PyTorch (ver Referencia 4), la forma de resolver el problema desde la perspectiva de seq2seq es dividir las múltiples rondas de diálogo en oraciones paralelas. Por ejemplo, la secuencia de diálogo actual H=u1,u2,...u(t-1) se puede dividir en t-2 grupos de muestras, que son: u1->u2;u2->u3;...; u (t-2)->u(t-1); Sin embargo, hay un problema obvio con este método de división: la suavidad entre oraciones. Esto debería ser una pregunta, pero no lo he pensado profundamente.
Actualmente, se refactorizó el código tutorial del Chatbot oficial de PyTorch, se desacopló cada módulo y se descubrió un error. Sobre esta base, prepárese para implementar una dirección de código de referencia
Para ideas de implementación, nos referimos principalmente al artículo "Un modelo de conversación neuronal basado en el conocimiento", que incluye dos partes principales:
Primero: cómo incrustar la información del gráfico de conocimiento en el modelo;
Segundo: la implementación del mecanismo de memoria;
Reponer:
La sección 3.2 del artículo IJCAI16 "Respuesta a preguntas generativas neuronales" propone dos métodos para la interacción entre la entrada y KG:
Primero: modelo bilineal
Segundo: modelo de coincidencia basado en CNN
referirse a:
0.www2018,《DKN: Red de conocimiento profundo para la recomendación de noticias》
1. Sexta Conferencia Nacional de Procesamiento de Redes Sociales-SMP2017 Evaluación de la Tecnología del Diálogo Chino Humano-Computadora (ECDT)
Contiene dos tareas: clasificación del dominio de intención del usuario y evaluación en línea del diálogo persona-computadora basada en tareas específicas del dominio
2.《Una función objetiva que promueve la diversidad para modelos de conversación neuronal》
3.《Un modelo de conversación neuronal basado en personas》
4. tutorial de chatbot con pytorch
5.Plan final del concurso de diálogo JDDC 2018
6. ¿Cómo puede una máquina adivinar lo que estás pensando? Plataforma de predicción Alibaba Xiaomi descifrada
7. Desmonte el núcleo de Alibaba Xiaomi y vea la lógica de implementación de la interacción inteligente persona-computadora
8. ¡Revela el secreto en un artículo! Todo el proceso de construcción de un gráfico de conocimiento de abajo hacia arriba.
9. ¿Cómo detecta las necesidades del usuario el gráfico de conocimiento creado para el comercio electrónico?
10. ¿Cómo implementan los ingenieros de Alibaba el mapa de conocimientos sobre salud?