Construcción de gráfico de conocimiento automotriz para recomendación

un fondo

1. Introducción

El concepto de gráfico de conocimiento, propuesto por primera vez por Google en 2012, tiene como objetivo realizar un motor de búsqueda más inteligente y, después de 2013, comenzó a popularizarse en la academia y la industria. En la actualidad, con el rápido desarrollo de la tecnología de inteligencia artificial, los gráficos de conocimiento se han utilizado ampliamente en búsquedas, recomendaciones, publicidad, control de riesgos, programación inteligente, reconocimiento de voz, robots y otros campos.

2 Estado de desarrollo

Como la fuerza impulsora técnica central de la inteligencia artificial, el gráfico de conocimiento puede aliviar el problema del aprendizaje profundo que se basa en datos de entrenamiento masivos y poder de cómputo a gran escala. Puede adaptarse ampliamente a diferentes tareas posteriores y tiene un buen poder explicativo. Por lo tanto, el mundo Las mayores empresas de Internet están desplegando activamente sus propios gráficos de conocimiento.
Por ejemplo, en 2013, Facebook lanzó Open Graph, que se aplica a la búsqueda inteligente en las redes sociales; en 2014, Baidu lanzó Knowledge Graph, que se utiliza principalmente en escenarios comerciales de búsqueda, asistente y toB; juega un papel clave en negocios como preguntas y respuestas y preguntas y respuestas inteligentes; Tencent Cloud Knowledge Graph, lanzado por Tencent en 2017, ayuda de manera efectiva a escenarios como la búsqueda financiera y la predicción de riesgos de entidades; se ha implementado en múltiples negocios, como la recomendación de búsqueda y la operación comercial inteligente.
inserte la descripción de la imagen aquí

3 Objetivos y Beneficios

En la actualidad, los gráficos de dominio se concentran principalmente en campos comerciales como el comercio electrónico, la atención médica y las finanzas, mientras que faltan métodos de orientación sistemáticos para la construcción de redes semánticas y gráficos de conocimiento sobre el conocimiento automotriz. Este artículo toma el conocimiento en el campo automotriz como ejemplo y proporciona una manera de construir un mapa de dominio desde cero alrededor de entidades tales como series de automóviles, modelos, distribuidores, fabricantes y marcas y sus relaciones, y describe los pasos y métodos en construyendo un mapa de conocimiento en detalle, instrucciones, así como varias aplicaciones de aterrizaje típicas basadas en este mapa.
Entre ellos, la fuente de datos es el sitio web de Autohome. Autohome es una plataforma de servicio de automóviles compuesta por guías de compras, información, evaluaciones y boca a boca. El mapa de conocimiento organiza y extrae el contenido centrado en los automóviles, proporciona información rica en conocimientos, estructura y describe con precisión los intereses, y admite múltiples dimensiones, como arranque en frío, recuperación, clasificación y visualización de usuarios recomendados, lo que brinda resultados para la mejora comercial.

Construcción de dos mapas

1 Desafíos de la construcción

El mapa de conocimiento es una representación semántica del mundo real, y su unidad básica es el triplete de [entidad-relación-entidad], [entidad-atributo-valor de atributo] Las entidades están conectadas entre sí a través de relaciones para formar una red semántica. Habrá grandes desafíos en la construcción del mapa, pero después de la construcción, puede mostrar un gran valor de aplicación en múltiples escenarios, como el análisis de datos, el cálculo de recomendaciones y la interpretabilidad.
Desafío de construcción:

  • El esquema es difícil de definir: actualmente no existe un proceso de construcción de ontología unificado y maduro, y la definición de ontología de un dominio específico generalmente requiere la participación de expertos;
  • Heterogeneidad del tipo de datos: por lo general, la fuente de datos que se enfrenta en la construcción de un mapa de conocimiento no será de un solo tipo, incluidos datos estructurados, semiestructurados y no estructurados. Ante datos con estructuras diferentes, el modelo de transformación del conocimiento y la dificultad de excavación es relativamente alta;
  • Confíe en el conocimiento profesional: los mapas de conocimiento del dominio generalmente se basan en un sólido conocimiento profesional, como los métodos de mantenimiento correspondientes a los modelos de vehículos, que involucran conocimientos en múltiples campos, como maquinaria, ingeniería eléctrica, materiales, mecánica, etc., y tales relaciones tienen altos requisitos. para la precisión y la necesidad de estar garantizado El conocimiento es lo suficientemente correcto, por lo que se necesita una combinación de mejores expertos y algoritmos para la construcción eficiente de gráficos;
  • La calidad de los datos no está garantizada: la extracción o extracción de información requiere una fusión de conocimientos o una verificación manual antes de que pueda usarse como conocimiento para ayudar a las aplicaciones posteriores.
  • ingreso:
  • Representación de conocimiento unificado del gráfico de conocimiento: al integrar datos heterogéneos de múltiples fuentes, se forma una vista unificada;
  • Información semántica rica: mediante el razonamiento relacional se pueden descubrir nuevas aristas relacionales y obtener información semántica más rica;
  • Fuerte interpretabilidad: las rutas de razonamiento explícito son más explicativas que los resultados del aprendizaje profundo;
  • Acumulación continua y de alta calidad: diseñe una solución de almacenamiento de conocimiento razonable de acuerdo con los escenarios comerciales para realizar la actualización y acumulación de conocimiento.

2 Diseño de arquitectura gráfica

La arquitectura técnica se divide principalmente en tres capas: capa de construcción, capa de almacenamiento y capa de aplicación.El diagrama de arquitectura es el siguiente:

  • Capa de construcción: incluida la definición de esquemas, la transformación de datos estructurados, la extracción de datos no estructurados y la fusión de conocimientos;
  • Capa de almacenamiento: incluye almacenamiento e indexación de conocimientos, actualización de conocimientos, gestión de metadatos y soporte para consultas de conocimientos básicos;
  • Capa de servicio: incluidas las capas de aplicaciones posteriores relacionadas con el negocio, como el razonamiento inteligente y la consulta estructurada.
    inserte la descripción de la imagen aquí

3 Pasos y proceso de construcción de hormigón

De acuerdo con el diagrama de arquitectura, el proceso de construcción específico se puede dividir en cuatro pasos: diseño de ontología, adquisición de conocimiento, almacenamiento de conocimiento y diseño y uso del servicio de aplicación.

3.1 Construcción de ontologías

La ontología es una colección de conceptos reconocidos. La construcción de la ontología se refiere a construir la estructura de la ontología y el marco de conocimiento del gráfico de conocimiento de acuerdo con la definición de ontología.
Las principales razones para construir grafos basados ​​en ontologías son las siguientes:

  • Aclare la terminología, las relaciones y los axiomas de dominio, y solo cuando un dato satisfaga los tipos y objetos de entidad predefinidos del esquema, podrá actualizarse en el gráfico de conocimiento.
  • Al separar el conocimiento del dominio del conocimiento operativo, Schema puede proporcionar una comprensión macroscópica de la estructura del mapa y las definiciones relacionadas, sin necesidad de generalizar a partir de tripletes.
  • Lograr un cierto grado de reutilización del conocimiento del dominio. Antes de construir una ontología, es posible investigar si ya se ha construido una ontología relacionada, de modo que se puedan realizar mejoras y extensiones basadas en la ontología existente para lograr el doble de resultado con la mitad del esfuerzo.
  • Con base en la definición de la ontología, es posible evitar la desconexión entre el mapa y la aplicación, o la situación en la que el costo de modificar el esquema del mapa es más alto que reconstruirlo. Por ejemplo, almacenar "BMW x3" y "BMW x3 2022" como entidades de automóviles puede causar confusión en las relaciones de instancia y una mala usabilidad durante la aplicación. Para evitar la subdivisión de las subcategorías "serie de automóviles" y "modelo".

Según la cobertura del conocimiento, los gráficos de conocimiento se pueden dividir en gráficos de conocimiento general y gráficos de conocimiento de dominio. En la actualidad, hay muchos casos de gráficos de conocimiento general, como Knowledge Graph de Google, Satori y Probase de Microsoft, etc., y gráficos de dominio. son financieros, electrónicos, etc. Negocios y otros mapas específicos de la industria. El mapa general presta más atención a la amplitud, enfatizando la integración de más entidades, pero los requisitos de precisión no son altos, es difícil razonar y utilizar los axiomas, reglas y restricciones con la ayuda de la biblioteca de ontologías; mientras que la cobertura de conocimiento del mapa de dominio es pequeño, pero la profundidad del conocimiento es más profunda y, a menudo, se construye en un determinado campo profesional.
Teniendo en cuenta los requisitos de precisión, la construcción de ontologías de dominio tiende a construirse manualmente, como el método representativo de siete pasos, el método IDEF5, etc.[1] La idea central de este tipo de método es llevar a cabo el análisis de ontologías resumir y construir una ontología que cumpla con el propósito y el alcance de la aplicación, y luego optimizar y verificar la ontología para obtener la definición de ontología inicial. Si desea obtener una ontología de dominio de una categoría más amplia, puede complementarla con un corpus no estructurado. Teniendo en cuenta que el proceso de construcción manual es relativamente largo, este artículo toma el campo automotriz como ejemplo para proporcionar un método de construcción de ontología semiautomático. Los pasos detallados son los siguientes:

  • Primero recopile una gran cantidad de corpus no estructurado de automóviles (como consultas de series de automóviles, artículos de guías de compra de automóviles nuevos, etc.), como el conjunto de conceptos individuales iniciales, y use métodos estadísticos o modelos no supervisados ​​(TF-IDF, BERT, etc.) para obtener características de palabras y características de palabras;
  • En segundo lugar, el algoritmo de agrupamiento BIRCH se usa para dividir los niveles de los conceptos, y la relación jerárquica entre los conceptos se construye inicialmente, y los resultados del agrupamiento se verifican y resumen manualmente para obtener los conceptos superior e inferior equivalentes de la ontología;
  • Finalmente, se utiliza la red neuronal convolucional combinada con el método de supervisión remota para extraer la relación de entidad de los atributos de la ontología, complementada con el reconocimiento manual de los conceptos de clases y atributos en la ontología, y se construye la ontología del dominio automotriz.

El método anterior puede usar de manera efectiva tecnologías de aprendizaje profundo como BERT para capturar mejor la relación interna entre los corpus, usar el agrupamiento y la construcción jerárquica de cada módulo de la ontología, complementada con intervención manual, y puede completar de manera rápida y precisa la construcción preliminar de la ontología. La siguiente figura es un diagrama esquemático de la construcción semiautomática de ontologías:
inserte la descripción de la imagen aquí
utilizando la herramienta de construcción de ontologías de Protégé [2], se pueden construir clases de conceptos de ontologías, relaciones, atributos e instancias
inserte la descripción de la imagen aquí
. Hay tres categorías, entidad, evento y sistema de etiquetas:

  1. Las clases de entidad representan entidades conceptuales con significados específicos, incluidas entidades léxicas y entidades de automóviles, entre las cuales las entidades de automóviles incluyen tipos de subentidades como organizaciones y conceptos de automóviles;
  2. El sistema de etiquetas representa el sistema de etiquetas de cada dimensión, incluida la clasificación de contenido, las etiquetas de concepto, las etiquetas de interés y otras etiquetas descritas por la dimensión material;
  3. La clase de evento representa los hechos objetivos de uno o más personajes, y existe una relación de evolución entre diferentes tipos de eventos.

Protégé puede exportar diferentes tipos de archivos de configuración de Schema, entre los cuales se muestra el archivo de configuración de la estructura owl.xml en la figura a continuación. El archivo de configuración se puede cargar y utilizar directamente en MYSQL y JanusGraph para realizar la creación automática de esquemas.
inserte la descripción de la imagen aquí

3.2 Adquisición de conocimientos

Las fuentes de datos de los gráficos de conocimiento suelen incluir tres tipos de estructuras de datos, a saber, datos estructurados, datos semiestructurados y datos no estructurados. Para diferentes tipos de fuentes de datos, las tecnologías clave involucradas en la extracción de conocimiento y las dificultades técnicas que deben resolverse son diferentes.

3.2.1 Transformación del conocimiento estructurado

Los datos estructurados son la fuente de conocimiento más directa para los gráficos y se pueden utilizar básicamente a través de una conversión preliminar. En comparación con otros tipos de datos, el costo es el más bajo. Por lo tanto, los datos estructurados tienen prioridad sobre los datos gráficos generales. Los datos estructurados pueden involucrar múltiples fuentes de bases de datos y, por lo general, requieren el uso de métodos ETL para transferir modelos. ETL significa Extraer (extraer), Transformar (transformar) y Cargar (cargar). La extracción consiste en leer datos de varios sistemas comerciales originales. , que es la premisa de todo el trabajo; la conversión es convertir los datos extraídos de acuerdo con reglas prediseñadas, de modo que los formatos de datos heterogéneos originales puedan unificarse; la carga es importar los datos convertidos de forma incremental o completa a los datos en el almacén.
A través del proceso ETL anterior, se pueden colocar diferentes datos de origen en la tabla intermedia, para facilitar el almacenamiento de conocimiento posterior. La siguiente figura es un ejemplo de la tabla de relación y atributo de entidad de serie de automóvil:
inserte la descripción de la imagen aquí
tabla de relación de serie y marca de automóvil:
inserte la descripción de la imagen aquí

3.2.2 Extracción de conocimiento no estructurado - Extracción triple

Además de los datos estructurados, también hay una gran cantidad de información de conocimiento (triple) en los datos no estructurados. En términos generales, la cantidad de datos no estructurados en una empresa es mucho mayor que la de datos estructurados.La extracción de conocimiento no estructurado puede expandir y enriquecer enormemente el mapa de conocimiento.
Desafíos del algoritmo de extracción de tripletes
Problema 1: en un solo dominio, el contenido y los formatos del documento son diversos, lo que requiere una gran cantidad de datos etiquetados y el costo es alto Problema 2: el efecto
de la migración entre dominios no es lo suficientemente bueno y escalabilidad de dominio El
modelo de costos a gran escala está básicamente dirigido a escenarios específicos de industrias específicas.Si cambia un escenario, el efecto se reducirá significativamente.
Idea de solución, paradigma Pre-train + Finetune, pre-entrenamiento: la base de peso pesado permite que el modelo esté "bien informado" y haga un uso completo de documentos sin etiquetar de múltiples industrias a gran escala para entrenar una base unificada de pre-entrenamiento para mejorar La capacidad del modelo para representar y comprender varios documentos.
Ajuste fino: Algoritmo ligero de estructuración de documentos. Sobre la base del entrenamiento previo, cree un algoritmo ligero orientado a documentos para reducir
el costo del etiquetado.
El método de preentrenamiento para documentos
Existe un modelo de preentrenamiento para documentos. Si el texto es corto, Bert puede codificar completamente todo el documento; sin embargo, nuestros documentos reales suelen ser más largos y los valores de los atributos necesitan para extraer Muchos de ellos tienen más de 1024 caracteres, y la codificación de Bert hará que el valor del atributo se trunque.
Para las ventajas del método de preentrenamiento de texto largo y la falta de
atención dispersa, al optimizar la atención propia, el cálculo de O(n2) se optimiza a O(n), lo que aumenta considerablemente la longitud del texto de entrada. Aunque la longitud del texto del modelo común se ha aumentado de 512 a 4096, todavía no puede resolver por completo el
problema de fragmentación del texto truncado. Baidu propuso ERNIE-DOC[3] usando el método del Transformador de recurrencia, que teóricamente puede modelar un texto infinitamente largo. Dado que el modelado requiere la entrada de toda la información del texto, requiere mucho tiempo.
Los dos métodos de preentrenamiento anteriores basados ​​en textos extensos no tienen en cuenta las características del documento, como la información espacial (parcial), visual (visual) y de otro tipo. Además, la PretrainTask basada en texto está diseñada para texto sin formato en su conjunto y no existe un diseño de estructura lógica para los documentos.
Apuntando a las deficiencias anteriores, aquí hay un modelo de entrenamiento previo de documento largo DocBert [4], Diseño de modelo DocBert: uso de datos de documentos sin etiquetar a gran escala (millones de niveles) para entrenamiento previo, basado en la semántica de texto de los documentos (Text ), información de diseño
(Layout) y características visuales (Visual) para construir tareas de aprendizaje autosupervisadas, de modo que el modelo pueda comprender mejor la semántica del documento y la información estructural.

  1. MLM con reconocimiento de diseño: tenga en cuenta la posición del texto y la información del tamaño de fuente en el modelo de lenguaje de máscara para obtener una comprensión semántica del conocimiento del diseño del documento.
  2. Alineación de texto e imagen: integra las características visuales del documento, reconstruye el texto enmascarado en la imagen y ayuda al modelo a aprender la relación de alineación entre diferentes modalidades de texto, diseño e imagen.
  3. Permutación de títulos: cree una tarea de reconstrucción de títulos de manera autosupervisada para mejorar la capacidad del modelo para comprender la estructura lógica de los documentos.
  4. Capas de transformador dispersas: use el método Atención dispersa para mejorar la capacidad del modelo para procesar documentos largos.
    inserte la descripción de la imagen aquí
3.2.3 Conceptos de minería, etiquetas de palabras de interés, relacionadas con series de automóviles y entidades

Además de obtener triples de textos estructurados y no estructurados, Autohome también extrae la clasificación, las etiquetas de concepto y las etiquetas de palabras clave de interés contenidas en los materiales, y establece la relación entre los materiales y las entidades del automóvil, aportando nuevos conocimientos. La siguiente es una introducción al contenido que comprende parte del trabajo y el pensamiento de Autohome a partir de la clasificación, las etiquetas de concepto y las etiquetas de palabras de interés.
El sistema de clasificación se utiliza como base para la descripción del contenido y los materiales se dividen en granos gruesos. El sistema de contenido unificado establecido se basa más en la definición manual y está dividido por modelo de IA. En términos de métodos de clasificación, utilizamos el aprendizaje activo para etiquetar datos difíciles de segmentar y, al mismo tiempo, utilizamos métodos de mejora de datos, entrenamiento de confrontación y fusión de palabras clave para mejorar el efecto de clasificación.
inserte la descripción de la imagen aquí
La granularidad de las etiquetas de concepto está entre la clasificación y las etiquetas de palabras de interés, y es más fina que la granularidad de clasificación. Al mismo tiempo, la descripción de los puntos de interés es más completa que las palabras de interés. Hemos establecido tres dimensiones de visión de vehículos, visión humana y visión de contenido para enriquecer la dimensión de la etiqueta Se refina la granularidad de la etiqueta. Las etiquetas de materiales ricas y específicas facilitan la búsqueda y recomiendan la optimización del modelo basada en etiquetas, y se pueden usar para la divulgación de etiquetas para atraer usuarios y drenaje secundario. La minería de etiquetas de concepto se combina con el uso de métodos de minería de máquinas en datos importantes como consultas y se analiza la generalización.A través de la revisión manual, se obtiene un conjunto de etiquetas de concepto y se utiliza un modelo de etiquetas múltiples para la clasificación.
La etiqueta de palabra de interés es la etiqueta más detallada, que se asigna al interés del usuario y puede realizar mejores recomendaciones personalizadas de acuerdo con las diferentes preferencias de interés del usuario. La minería de palabras clave adopta una combinación de múltiples métodos de minería de palabras interesantes, incluido Keybert, que extrae subcadenas clave y combina TextRank, positionRank, singlerank, TopicRank, MultipartiteRank, etc. + métodos de análisis sintáctico para generar palabras candidatas de interés.
inserte la descripción de la imagen aquí
Las palabras excavadas tienen una similitud relativamente alta, es necesario identificar sinónimos y mejorar la eficiencia manual, por lo que también realizamos una identificación automática de similitud semántica mediante agrupamiento. Las funciones utilizadas para la agrupación incluyen word2vec, bert embding y otras funciones artificiales. Luego usamos el método de agrupamiento y, finalmente, después de la corrección manual, generamos un lote de palabras clave de alta calidad fuera de línea.
Para las etiquetas de diferentes granularidades, todavía están a nivel de material. Necesitamos asociar la etiqueta con el automóvil. Primero, calculamos las etiquetas del título/artículo respectivamente, y luego identificamos las entidades en el título/artículo para obtener varios pseudo-etiquetas de entidad de etiqueta. , y finalmente de acuerdo con una gran cantidad de corpus, la etiqueta con alta probabilidad de co-ocurrencia se marcará como la etiqueta de la entidad. A través de las tres tareas anteriores, hemos obtenido etiquetas ricas y masivas. Asociar estas etiquetas con series y entidades de automóviles enriquecerá en gran medida nuestro mapa de automóviles y establecerá etiquetas de automóviles para la atención de los medios y los usuarios.

3.2.4 Mejora de la eficiencia humana:

Con muestras de capacitación más grandes, cómo obtener una mejor calidad del modelo, cómo resolver el alto costo del etiquetado y el largo ciclo de etiquetado se han convertido en problemas urgentes que deben resolverse. En primer lugar, podemos usar el aprendizaje semisupervisado y usar datos masivos sin etiquetar para el entrenamiento previo. Luego, adopte el método de aprendizaje activo para maximizar el valor de los datos etiquetados y seleccione iterativamente muestras de alta información para etiquetar. Finalmente, la supervisión remota se puede utilizar para explotar el valor del conocimiento existente y descubrir la correlación entre las tareas. Por ejemplo, después de tener el mapa y el título, puede usar el método de supervisión remota para construir datos de entrenamiento NER basados ​​en el mapa.

3.3 Almacenamiento de conocimientos

El conocimiento en el gráfico de conocimiento está representado por la estructura RDF, y su unidad básica es un hecho. Cada hecho es un triple (S, P, O).En los sistemas reales, de acuerdo con diferentes métodos de almacenamiento, el almacenamiento de gráficos de conocimiento se puede dividir en almacenamiento basado en la estructura de la tabla RDF y almacenamiento basado en la estructura del gráfico de atributos. La galería se almacena principalmente en una estructura de gráfico de propiedades. Los sistemas de almacenamiento comunes incluyen Neo4j, JanusGraph, OritentDB, InfoGrid, etc.
Selección de la base de datos de gráficos
A través de la comparación de JanusGraph con Neo4J, ArangoDB, OrientDB y otras bases de datos de gráficos convencionales, finalmente elegimos a JanusGraph como la base de datos de gráficos del proyecto. Las razones principales para elegir JanusGraph son las siguientes:

  • Código fuente abierto basado en el acuerdo de licencia de Apache 2, buena apertura.
  • Admite el análisis de gráficos globales y el procesamiento de gráficos por lotes mediante el marco Hadoop.
  • Admite el procesamiento de grandes transacciones simultáneas y el procesamiento de operaciones gráficas. Al agregar máquinas para escalar las capacidades de procesamiento de transacciones de JanusGraph, es posible responder a consultas complejas de gráficos grandes en el nivel de milisegundos.
  • Admite de forma nativa el popular modelo de datos de gráfico de propiedades descrito por Apache TinkerPop.
  • Compatibilidad nativa con el lenguaje transversal de grafos Gremlin.

La siguiente figura es una comparación de las principales bases de datos de gráficos
inserte la descripción de la imagen aquí
con Janusgraph.JanusGraph
[5] es un motor de base de datos de gráficos. Se centra en la serialización de gráficos compactos, el modelado de datos de gráficos enriquecidos y la ejecución eficiente de consultas. La composición del esquema de la galería se puede expresar mediante la siguiente fórmula:
esquema de janusgraph = etiqueta de vértice + etiqueta de borde + claves de propiedad
Vale la pena señalar aquí que la clave de propiedad generalmente se usa para el índice del gráfico.

Para mejorar el rendimiento de las consultas de gráficos, janusgraph ha establecido índices, que se dividen en Índice de gráficos e Índices centrados en vértices. El índice del gráfico incluye un índice compuesto (Índice compuesto) y un índice mixto (Índice mixto).
El índice compuesto se limita a la búsqueda de igualdad. (El índice compuesto no necesita configurar el backend de índice externo, es compatible con el backend de almacenamiento principal (por supuesto, también se pueden configurar hbase, Cassandra, Berkeley)) Por ejemplo: mgmt.buildIndex('byNameAndAgeComposite',
Vertex
. clase).addKey(nombre).addKey (edad).buildCompositeIndex() #Construir un índice compuesto "nombre-edad" gV().has('edad', 30).has('nombre', 'Xiaoming')# Encuentre el nodo híbrido
cuyo nombre es Xiaoming's age 30.
Según sea necesaria la segmentación de palabras, se divide en búsqueda de texto completo y búsqueda de cadenas
Modelo de almacenamiento de datos de JanusGraph
Comprender la forma en que Janusgraph almacena los datos nos ayudará a hacer un mejor uso de la biblioteca. JanusGraph almacena gráficos en formato de lista de adyacencia, lo que significa que los gráficos se almacenan como colecciones de vértices y sus listas de adyacencia. La lista de adyacencia de un vértice contiene todos los bordes incidentes (y atributos) de un vértice.
inserte la descripción de la imagen aquí
JanusGraph almacena cada lista de adyacencia como una fila en el backend de almacenamiento subyacente. El ID de vértice (64 bits) (que JanusGraph asigna de forma única a cada vértice) es la clave de la fila que contiene la lista de adyacencia del vértice. Cada borde y atributo se almacena como una celda separada en la fila, lo que permite una inserción y eliminación eficientes. Por lo tanto, la cantidad máxima de celdas por fila permitida en un backend de almacenamiento en particular también es el grado máximo de vértices que JanusGraph puede admitir para ese backend.
Si el backend de almacenamiento admite el orden de claves, la lista de adyacencia se ordenará por ID de vértice, que JanusGraph puede asignar para dividir el gráfico de manera eficiente. Asigne identificadores de modo que los vértices visitados con frecuencia tengan identificadores con pequeñas diferencias absolutas.

3.4 Servicio de consulta de gráficos

Janusgraph utiliza el lenguaje gremlin para la búsqueda de gráficos. Brindamos un servicio de consulta de gráficos unificado. El uso externo no necesita preocuparse por la implementación específica del lenguaje gremlin y utiliza una interfaz general para la consulta. Lo dividimos en tres interfaces: interfaz de búsqueda condicional, consulta externa centrada en el nodo e interfaz de consulta de ruta entre nodos. Aquí hay algunos ejemplos de implementaciones de gremlin:

  • Búsqueda condicional: consulta sobre 100.000 autos con las ventas más altas:
    gV().has('price',gt(8)).has('price',lt(12)).order().by('sales' , desc).valueMap().limit(1)
    salida:
    ==>{name=[xuanyi], price=[10], sales=[45767]}
    Xuanyi tiene el mayor volumen de ventas de 45767
  • Consulta hacia afuera con el nodo como centro: consulta con Xiaoming como centro, el nodo
    gV(xiaoming).repeat(out()).times(2).valueMap() con grado 2
  • Consulta de ruta entre nodos: Recomiende dos artículos a Xiaoming. Estos dos artículos presentan Corolla y Sylphy respectivamente. Consulte la ruta entre Xiaoming y estos dos artículos: gV(xiaoming).repeat(out().simplePath() ) .until(
    or (has("coche", 'nombre', 'kaluola'),has("coche", 'nombre', 'xuanyi'))).ruta().by("nombre") salida == >ruta
    [
    xiaoming , alrededor de 10w, kaluola]
    ==>ruta[xiaoming, alrededor de 10w, xuanyi]
    encontró que hay un nodo "alrededor de 100,000" entre Xiaoming y estos dos artículos

Aplicación de tres grafos de conocimiento en recomendación

Hay una gran cantidad de datos no europeos en el mapa de conocimiento. La aplicación de recomendación basada en KG utiliza efectivamente datos no europeos para mejorar la precisión del sistema de recomendación, y luego permite que el sistema de recomendación logre el efecto que los sistemas tradicionales no pueden lograr. lograr. Las recomendaciones basadas en KG se pueden dividir en tres categorías, según la tecnología de representación KG (KGE), los métodos basados ​​en rutas y las redes neuronales gráficas. Este capítulo presentará las aplicaciones y artículos de KG en los tres aspectos del arranque en frío, la razón y la clasificación en el sistema de recomendación.

1 Aplicación del mapa de conocimiento en la recomendación de arranque en frío

El mapa de conocimiento puede modelar la relación oculta de alto orden en KG a partir de la interacción usuario-elemento, lo que puede resolver la escasez de datos causada por el número limitado de comportamientos invocados por el usuario y puede aplicarse para resolver el problema de arranque en frío. También hay investigaciones sobre este tema.
Sang y otros [6] propusieron un método de interacción neuronal de doble canal llamado Knowledge Graph Augmented Residual Recurrent Neural Collaborative Filtering (KGNCF-RRN), que aprovecha las dependencias relacionales a largo plazo del contexto KG y las interacciones usuario-elemento para la recomendación. (1) Para el canal de interacción de contexto KG, se propone una red recurrente residual (RRN) para construir una incrustación de ruta basada en el contexto, y el aprendizaje residual se integra en la red neuronal recurrente (RNN) tradicional para codificar de manera efectiva la red relacional a largo plazo. dependencias de KG. Luego, la red de autoatención se aplica a las incrustaciones de ruta para capturar la polisemia de varias interacciones del usuario. (2) Para el canal de interacción usuario-elemento, las incrustaciones de usuario y elemento se ingresan en un gráfico de interacción 2D de nuevo diseño. (3) Finalmente, además de la matriz de interacción neuronal de doble canal, se utiliza una red neuronal convolucional para aprender correlaciones complejas entre usuarios y elementos. Este método puede capturar información semántica rica y también capturar relaciones implícitas complejas entre usuarios y artículos para recomendación.
Du Y y otros [7] propusieron una nueva solución de problemas de arranque en frío MetaKG basada en un marco de metaaprendizaje, que incluye un metaaprendizaje consciente de la colaboración y un metaaprendiz consciente del conocimiento, para capturar las preferencias del usuario y el conocimiento de arranque en frío de la entidad. La tarea de aprendizaje del metaaprendiz consciente de la colaboración tiene como objetivo agregar la representación del conocimiento de las preferencias de cada usuario. Por el contrario, la tarea de aprendizaje del metaaprendiz consciente del conocimiento es generalizar globalmente diferentes representaciones de conocimiento de las preferencias del usuario. Bajo la guía de dos estudiantes, MetaKG puede capturar de manera efectiva una relación de colaboración de alto orden y una representación semántica, que se puede adaptar fácilmente a escenarios de arranque en frío. Además, los autores diseñan una tarea adaptativa que puede seleccionar de manera adaptativa información KG para aprender a fin de evitar que el modelo se vea perturbado por información ruidosa. La arquitectura MetaKG se muestra en la siguiente figura.
inserte la descripción de la imagen aquí

2 Aplicación del mapa de conocimiento en la generación de razones de recomendación

El motivo de la recomendación puede mejorar la explicabilidad del sistema de recomendación, permitir que los usuarios entiendan el proceso de cálculo para generar los resultados de la recomendación y también puede explicar el motivo por el cual el artículo es popular. El usuario comprende el principio del resultado de la recomendación a través del motivo de la recomendación, lo que puede mejorar la confianza del usuario en el resultado de la recomendación del sistema y ser más tolerante con el resultado incorrecto en el caso de un error de recomendación.
Las primeras recomendaciones interpretables se basaban en plantillas. Los beneficios de las plantillas son que aseguran la legibilidad y alta precisión. Sin embargo, la plantilla debe resolverse manualmente y la generalización no es fuerte, lo que da a las personas una sensación de repetición. Posteriormente, se desarrolló un formulario de forma libre que no necesita ser preestablecido, se agregó un mapa de conocimiento, se usó uno de los caminos como explicación y hubo algunos métodos generativos combinados con el camino KG con anotaciones.Cada punto o el borde seleccionado en el modelo es un proceso de inferencia que se puede mostrar al usuario. Recientemente, Chen Z y otros [8] propusieron un marco de aprendizaje incremental de tareas múltiples, ECR, que puede lograr una estrecha colaboración entre la predicción de recomendaciones, la generación de explicaciones y la integración de comentarios de los usuarios. Consta de dos partes principales. La primera parte, Modelado de conocimiento cruzado incremental, aprende el conocimiento cruzado transferido en tareas de recomendación y tareas de explicación, y muestra cómo se puede usar el conocimiento cruzado para actualizar mediante el aprendizaje incremental. La segunda parte, Predicción incremental de tareas múltiples, ilustra cómo generar explicaciones basadas en el conocimiento cruzado y cómo predecir puntajes de recomendación basados ​​en el conocimiento cruzado y los comentarios de los usuarios.
inserte la descripción de la imagen aquí

3 Aplicación del mapa de conocimiento en el ranking de recomendaciones

KG puede vincular elementos con diferentes atributos, establecer interacción usuario-elemento, combinar gráfico uesr-elemento y KG en un gráfico grande y capturar conexiones de alto nivel entre elementos. El método de recomendación tradicional consiste en modelar el problema como una tarea de aprendizaje supervisado, que ignora la conexión interna entre elementos (como la relación de competencia entre el Camry y el Accord) y no puede obtener señales sinérgicas del comportamiento del usuario. A continuación se presentan dos documentos sobre la aplicación de KG en la clasificación de recomendaciones.
Wang[9] y otros diseñaron el algoritmo KGAT. En primer lugar, la GNN propaga y actualiza iterativamente la incrustación, de modo que las conexiones de alto orden pueden capturarse rápidamente; en segundo lugar, el mecanismo de atención se utiliza en la agregación y el peso de cada vecino se aprende durante el proceso de propagación, lo que refleja la importancia de las conexiones de alto orden; finalmente, se obtienen N representaciones implícitas de elementos de usuario a través de actualizaciones de propagación de N orden, y diferentes capas representan información de conexión de diferentes órdenes. KGAT puede capturar conexiones de orden superior más ricas e inespecíficas.
inserte la descripción de la imagen aquí
Zhang[20] y otros propusieron el modelo RippleNet, cuya idea clave es la propagación de intereses: RippleNet toma los intereses históricos del usuario como la semilla establecida en KG y luego expande los intereses del usuario hacia afuera a lo largo de la conexión de KG para formar el interés del usuario. interés en KG distribución de interés. La mayor ventaja de RippleNet es que puede extraer automáticamente posibles rutas desde los elementos en los que los usuarios han hecho clic hasta los elementos candidatos sin ningún diseño manual de metarutas o metagráficos.
inserte la descripción de la imagen aquí
RippleNet toma un usuario U y un elemento V como entrada y genera la probabilidad prevista de que el usuario U haga clic en el elemento V. Para el usuario U, tome su interés histórico V_{u} como semilla, como se puede ver en la figura, el punto de partida inicial es dos, y luego continúe extendiéndose. Dado cada triple \left(h_{i},r_{i},t_{i}\right) en el conjunto de ondas de 1 salto V_{u_{}^{1}} de itemV y el usuario U, pase Comparando V con nodos h_{i} y relaciones r_{i} en tripletes asigna probabilidades relativas.
inserte la descripción de la imagen aquí
Después de obtener la probabilidad relevante, V_{u_{}La cola del triplete en {1}} se multiplica por la probabilidad relevante correspondiente para la suma ponderada, y se obtiene la respuesta de primer orden del interés histórico del usuario U a V, y el interés del usuario se transfiere de V_{u} a o_ {u} {1} , se puede calcular para obtener o_{u} {2}, o_{u} {3}...o_{u}^{n}, y luego calcular las características de U sobre el elemento V puede calcularse como una fusión de todas sus respuestas de orden.

cuatro resumen

En resumen, presentamos principalmente el proceso detallado de construcción de gráficos en torno a la recomendación y analizamos las dificultades y desafíos involucrados. Al mismo tiempo, también resume una gran cantidad de trabajo importante y brinda soluciones, ideas y sugerencias específicas. Finalmente, se introduce la aplicación del gráfico de conocimiento, especialmente en el campo de la recomendación, se introduce la función y el uso del gráfico de conocimiento en términos de frialdad, interpretabilidad y clasificación de recuerdo.


引用
[1] Kim S,Oh SG.Extracción y aplicación de criterios de evaluación para la evaluación de la calidad de la ontología[J].Library Hi Tech,2019.
[2] Protege: https://protegewiki.stanford.edu
[3] Ding S , Shang J , Wang S , et al. ERNIE-DOC: El transformador de modelado retrospectivo de documentos extensos[J]. 2020.
[4] DocBert, [1] Adhikari A, Ram A, Tang R, et al. DocBERT: BERT para Clasificación de Documentos[J]. 2019.
[5] JanusGraph,https://docs.janusgraph.org/
[6] Sang L, Xu M, Qian S, et al. El gráfico de conocimiento mejoró el filtrado colaborativo neuronal con la red recurrente residual [J]. Neurocomputación, 2021, 454: 417-429.
[7] Du Y, Zhu X, Chen L, et al. MetaKG: metaaprendizaje sobre gráfico de conocimiento para recomendación de arranque en frío [J]. arXiv e-prints, 2022.
[8] Chen Z, Wang X, Xie X, et al. Hacia una recomendación conversacional explicable[C]// Vigesimonovena Conferencia Internacional Conjunta sobre Inteligencia Artificial y Decimoséptima Conferencia Internacional de la Cuenca del Pacífico sobre Inteligencia Artificial {IJCAI-PRICAI-20. 2020.
[9] Wang X, He X, Cao Y, et al. KGAT: Red de atención de gráficos de conocimiento para recomendaciones [J]. ACM, 2019.
[10] Wang H , Zhang F , Wang J , et al. RippleNet: propagar las preferencias del usuario en el gráfico de conocimiento para los sistemas de recomendación [J]. ACM, 2018.

Supongo que te gusta

Origin blog.csdn.net/autohometech/article/details/126536570
Recomendado
Clasificación