Este es el resumen y mis conclusiones clave de la
Planteamiento del problema:
Ante una consulta de un usuario, obtenga el artículo de ayuda más relevante de la base de datos.
Iteración 1: Solución inicial
- Indizó todos los artículos de ayuda (documentos) en la base de datos usando Lucene Index . En resumen, genera un diccionario invertido que asigna términos a todos los documentos en los que apareció.
2. La consulta dada se usa para obtener todos los documentos relevantes (hits) usando la indexación de Lucene.
3. Cada acierto se puntúa con el algoritmo BM25F , que tiene en cuenta la estructura del documento , otorgando los pesos más altos a los aciertos en el Título , luego a los aciertos en las Palabras clave y luego en el Cuerpo , y devuelve una puntuación ponderada.
4. Devolver los artículos mejor puntuados.
por qué falló
Dado que el sistema de recuperación de documentos está basado en términos ( sintáctica ), sin tener en cuenta la semántica , los siguientes son dos casos de falla de ejemplo:
Iteración 2: Solución final
Paso 1: Normalización de texto
“ cómo cancelar mis cuentas premium inmediatamente” normalizado a “ cancelar cuenta premium”
Paso 2: Asignación de consultas
Puede suceder que la consulta normalizada no tenga palabras en común con las palabras de los artículos. Por lo tanto, cada consulta se asigna a una consulta más representativa para llenar el vacío entre la terminología de un usuario y la terminología del artículo.
Realizado en los siguientes dos pasos:
- Agrupación de consultas: las consultas se agrupan en función de las métricas de similitud
2. Topic Mining and Rep Scoring: Para cada una de las consultas en el grupo de consultas, se calcula un repScore y las K consultas principales se seleccionan como consultas de representantes.
sim(RQ, Q2) es la similitud entre la consulta sin procesar y otra consulta en el grupo
sim(Q2, título) es la máxima similitud entre Q2 y uno de los temas del título (de manera similar para el cuerpo)
Paso 3: Clasificación de intención
Es posible que las consultas de cola larga no tengan una consulta de representante, en cuyo caso se usa una CNN para clasificar la intención de la consulta.
Por ejemplo: "Cancelar su suscripción premium" y "Cancelar o actualizar una suscripción premium comprada en su dispositivo Apple" se considera que tienen la misma intención que "cancelar premium".
Flujo general
También publicado aquí