Articulo de referencia

distancia de edición del gráfico

A primera vista, la distancia de edición del grafo ( GED ) puede parecer 7, ya que implica eliminar 3 aristas, añadir el vértice amarillo y añadir aristas entre este y los otros...

A primera vista, la distancia de edición del grafo ( GED ) puede parecer 7, ya que implica eliminar 3 aristas, añadir el vértice amarillo y añadir aristas entre este y los otros 3 vértices. Sin embargo, el conjunto óptimo de operaciones sería eliminar la arista entre dos colores elegidos (por ejemplo, verde y azul), cambiar el tercero (rojo) a amarillo, añadir un vértice del color ahora ausente (rojo) y conectarlo al nuevo vértice amarillo, para obtener una GED de 4.

En matemáticas e informática , la distancia de edición de grafos ( GED ) es una medida de similitud (o disimilitud) entre dos grafos . El concepto de distancia de edición de grafos fue formalizado matemáticamente por primera vez por Alberto Sanfeliu y King-Sun Fu en 1983. [ 1 ] Una aplicación importante de la distancia de edición de grafos es la comparación inexacta de grafos , como el reconocimiento de patrones tolerante a errores en el aprendizaje automático . [ 2 ]

La distancia de edición de grafos entre dos grafos está relacionada con la distancia de edición de cadenas entre cadenas . Con la interpretación de las cadenas como grafos acíclicos dirigidos y conexos de grado máximo uno, las definiciones clásicas de distancia de edición, como la distancia de Levenshtein , [ 3 ] [ 4 ] la distancia de Hamming [ 5 ] y la distancia de Jaro-Winkler, pueden interpretarse como distancias de edición de grafos entre grafos adecuadamente restringidos. Asimismo, la distancia de edición de grafos es también una generalización de la distancia de edición de árboles entre árboles con raíz . [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ]

Definiciones y propiedades formales

La definición matemática de la distancia de edición de grafos depende de las definiciones de los grafos sobre los que se define, es decir, si los vértices y las aristas del grafo están etiquetados y cómo lo están, y si las aristas son dirigidas . Generalmente, dado un conjunto de operaciones de edición de grafos (también conocidas como operaciones elementales de grafos ), la distancia de edición de grafos entre dos grafosgramo1{\displaystyle g_{1}}ygramo2{\displaystyle g_{2}}, escrito comoGRAMOmiD(gramo1,gramo2){\displaystyle GED(g_{1},g_{2})}puede definirse como

GRAMOmiD(gramo1,gramo2)=min(mi1,...,mik)PAG(gramo1,gramo2)i=1kdo(mii){\displaystyle GED(g_{1},g_{2})=\min _{(e_{1},...,e_{k})\in {\mathcal {P}}(g_{1},g_{2})}\sum _{i=1}^{k}c(e_{i})}

dóndePAG(gramo1,gramo2){\ Displaystyle {\ mathcal {P}} (g_ {1}, g_ {2})}denota el conjunto de rutas de edición que transformangramo1{\displaystyle g_{1}}en (un grafo isomorfo a)gramo2{\displaystyle g_{2}}ydo(mi)0{\displaystyle c(e)\geq 0}es el costo de cada operación de edición de gráficomi{\displaystyle e}.

El conjunto de operadores elementales de edición de grafos normalmente incluye:

Inserción de vértices para introducir un único vértice nuevo y etiquetado en un grafo.
Eliminación de vértices para eliminar un único vértice (a menudo desconectado) de un grafo.
Sustitución de vértices para cambiar la etiqueta (o el color) de un vértice determinado.
Inserción de aristas para introducir una nueva arista de color entre un par de vértices.
Eliminación de aristas para eliminar una sola arista entre un par de vértices.
Sustitución de bordes para cambiar la etiqueta (o el color) de un borde determinado.

Otros operadores, aunque menos comunes, incluyen operaciones como la división de aristas , que introduce un nuevo vértice en una arista (creando también una nueva arista), y la contracción de aristas , que elimina vértices de grado dos entre aristas (del mismo color). Si bien estos operadores de edición complejos pueden definirse en términos de transformaciones más elementales, su uso permite una parametrización más precisa de la función de coste.do{\displaystyle c}cuando el operador es más barato que la suma de sus componentes.

En [ 11 ] [ 12 ] [ 13 ] se presenta un análisis profundo de los operadores de edición de grafos elementales.

Y se han presentado algunos métodos para deducir automáticamente estos operadores elementales de edición de grafos. [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] Y algunos algoritmos aprenden estos costos en línea: [ 19 ]

Aplicaciones

La distancia de edición de grafos encuentra aplicaciones en el reconocimiento de escritura a mano , [ 20 ] el reconocimiento de huellas dactilares [ 21 ] y la quimioinformática . [ 22 ]

Algoritmos y complejidad

Los algoritmos exactos para calcular la distancia de edición entre dos grafos suelen transformar el problema en uno de encontrar la ruta de edición de coste mínimo entre ambos. El cálculo de la ruta de edición óptima se plantea como una búsqueda de rutas o un problema de ruta más corta , que a menudo se implementa mediante un algoritmo de búsqueda A* .

Además de los algoritmos exactos, también se conocen varios algoritmos de aproximación eficientes. La mayoría de ellos tienen un tiempo de cálculo cúbico [ 23 ] [ 24 ] [ 25 ] [ 26 ].

[ 27 ] Sin embargo, el tiempo de ejecución de al menos un algoritmo es lineal en el número de nodos, aunque sigue siendo cúbico en el grado del nodo. [ 28 ]

A pesar de que los algoritmos anteriores a veces funcionan bien en la práctica, en general el problema de calcular la distancia de edición de grafos es NP-difícil (para una demostración disponible en línea, consulte la Sección 2 de Zeng et al. ), e incluso es difícil de aproximar (formalmente, es APX -difícil [ 29 ] ).

Distancia de edición del árbol

La distancia de edición de árbol (TED) representa el costo mínimo de transformar un árbol en otro utilizando tres operaciones: inserción, eliminación y reemplazo. El primer algoritmo TED de tiempo polinomial fue propuesto por Tai en 1979. [ 30 ] En 1989, Kaizhong Zhang y Dennis Shasha propusieron el algoritmo TED más conocido, [ 31 ] que introdujo técnicas de programación dinámica (DP) para resolver TED y tiene una complejidad temporal en el peor de los casos de O(n 4 ). Este método emplea una serie de tablas DP, donde cada tabla calcula la distancia de edición entre una subparte del primer árbol de entrada y una subparte del segundo árbol de entrada. Desde entonces, importantes esfuerzos de investigación [ 32 ] [ 33 ] [ 34 ] se han centrado en mejorar su complejidad temporal secuencial, y se ha demostrado que O(n 3 ) es el límite teórico más bajo. [ 35 ]

Paralelización

A pesar de estas mejoras secuenciales, TED sigue siendo computacionalmente costoso para árboles grandes, y su paralelización es sumamente compleja. [ 36 ] Específicamente, el cálculo de TED implica dependencias de datos tanto dentro de la tabla como entre tablas: las entradas dentro de una tabla DP dependen de entradas calculadas previamente, mientras que el cálculo de cada tabla DP depende de los resultados de otras tablas. [ 10 ] Estas intrincadas dependencias dificultan la ejecución paralela. Además, el grave desequilibrio de la carga de trabajo entre las tablas DP complica aún más la planificación y reduce la utilización de recursos paralelos.

X-TED [ 10 ] es un marco de trabajo masivamente paralelo para el cálculo de TED que aborda estos desafíos estructurales. Emplea un nuevo algoritmo de preprocesamiento para determinar eficientemente las relaciones de dependencia entre tablas DP analizando únicamente las estructuras de árbol. Con base en esta información de dependencia, X-TED agrupa tablas DP independientes en lotes y las procesa en paralelo. Para manejar tablas de diferentes tamaños, X-TED adopta además una estrategia de paralelización dinámica que asigna diferentes niveles de recursos paralelos según el tamaño de cada tabla. Experimentos exhaustivos en CPU y GPU multinúcleo utilizando árboles reales y sintéticos demuestran la eficacia de X-TED para el cálculo de TED a gran escala. [ 10 ]

Referencias

  1. Sanfeliu, Alberto; Fu, King-Sun (1983). "Una medida de distancia entre grafos relacionales con atributos para el reconocimiento de patrones". IEEE Transactions on Systems, Man, and Cybernetics . 13 (3): 353– 363. doi : 10.1109/TSMC.1983.6313167 . S2CID 1087693 . 
  2. Gao, Xinbo; Xiao, Bing; Tao, Dacheng; Li, Xuelong (2010). "Una revisión de la distancia de edición de grafos". Pattern Analysis and Applications . 13 : 113–129 . doi : 10.1007/s10044-008-0141-y .
  3. Влади́мир И. Levènstein (1965). Двоичные коды с исправлением выпадений, вставок и замещений символов[ Códigos binarios capaces de corregir eliminaciones, inserciones y reversiones ] . Доклады Академий Наук СССР (en ruso). 163 (4): 845–848 .
  4. Levenshtein, Vladimir I. (febrero de 1966). "Códigos binarios capaces de corregir eliminaciones, inserciones e inversiones". Soviet Physics Doklady . 10 (8): 707– 710. Bibcode : 1966SPhD...10..707L .
  5. Hamming, Richard W. (1950). "Códigos de detección y corrección de errores" (PDF) . Bell System Technical Journal . 29 (2): 147– 160. doi : 10.1002/j.1538-7305.1950.tb00463.x . hdl : 10945/46756 . MR 0035935. S2CID 61141773. Archivado del original el 25 de mayo de 2006 .  {{cite journal}}: CS1 maint: bot: estado de la URL original desconocido ( enlace )
  6. Shasha, D; Zhang, K (1989). "Algoritmos rápidos y sencillos para la distancia de edición entre árboles y problemas relacionados". SIAM J. Comput. 18 (6): 1245– 1262. CiteSeerX 10.1.1.460.5601 . doi : 10.1137/0218082 . S2CID 10970317 .  
  7. Zhang, K (1996). "Una distancia de edición restringida entre árboles etiquetados no ordenados". Algorithmica . 15 (3): 205– 222. doi : 10.1007/BF01975866 . S2CID 20043881 . 
  8. Bille, P (2005). "Un estudio sobre la distancia de edición de árboles y problemas relacionados" . Theor. Comput. Sci. 337 ( 1– 3): 22– 34. CiteSeerX 10.1.1.100.2577 . doi : 10.1016/j.tcs.2004.12.030 . 
  9. Demaine, Erik D. ; Mozes, Shay; Rossman, Benjamin; Weimann, Oren (2010). "Un algoritmo de descomposición óptimo para la distancia de edición de árboles". ACM Transactions on Algorithms . 6 (1): A2. arXiv : cs/0604037 . CiteSeerX 10.1.1.163.6937 . doi : 10.1145/1644015.1644017 . MR 2654906 . S2CID 7878119 .   
  10. 1 2 3 4 Fan, Dayi; Lee, Rubao; Zhang, Xiaodong (2024). "X-TED: Paralelización masiva de la distancia de edición de árboles" (PDF) . Actas de la Fundación VLDB . 17 (7): 1683– 1696. doi : 10.14778/3654621.3654634 .
  11. Serratosa, Francesc (2021). Redefining the Graph Edit Distance . SN Computer Science, pp: 2-438.
  12. Serratosa, Francesc (2019). Distancia de edición de grafos: restricciones para ser una métrica . Pattern Recognition, 90, pp: 250-256.
  13. Serratosa, Francesc; Cortés, Xavier (2015). Distancia de edición de grafos: pasando de la estructura global a la local para resolver el problema de la coincidencia de grafos . Pattern Recognition Letters, 65, pp: 204-210.
  14. Santacruz, Pep; Serratosa, Francesc (2020). Aprendizaje de los costos de edición de grafos basados ​​en un modelo de aprendizaje aplicado al emparejamiento subóptimo de grafos . Neural Processing Letters, 51, pp: 881–904.
  15. Algabli, Shaima; Serratosa, Francesc (2018). Incrustación de las asignaciones nodo a nodo para aprender los parámetros de distancia de edición del grafo . Pattern Recognition Letters, 112, pp: 353-360.
  16. Xavier, Cortés; Serratosa, Francesc (2016). Aprendizaje de pesos de sustitución de coincidencia de grafos basados ​​en la correspondencia de nodos de verdad fundamental . International Journal of Pattern Recognition and Artificial Intelligence, 30(2), pp: 1650005 [22 páginas].
  17. Xavier, Cortés; Serratosa, Francesc (2015). Aprendizaje de costos de edición de coincidencia de grafos basados ​​en la optimalidad de las correspondencias de nodos del oráculo . Pattern Recognition Letters, 56, pp: 22 - 29.
  18. Conte, Donatello; Serratosa, Francesc (2020). Aprendizaje interactivo en línea para la correspondencia de grafos mediante estrategias activas . Knowledge Based Systems, 105, pp: 106275.
  19. Rica, Elena; Álvarez, Susana; Serratosa, Francesc (2021). Aprendizaje en línea del gráfico editar costos de distancia . Cartas de reconocimiento de patrones, 146, págs: 52-62.
  20. ^ Fischer, Andrés; Suen, Ching Y.; Friken, Volkmar; Riesen, Caspar; Bunke, Horst (2013), "Un algoritmo de coincidencia rápida para el reconocimiento de escritura a mano basado en gráficos", Representaciones basadas en gráficos en el reconocimiento de patrones , Apuntes de conferencias sobre informática , vol. 7877, págs. 194–203 , doi : 10.1007/978-3-642-38221-5_21 , ISBN   978-3-642-38220-8
  21. Neuhaus, Michel; Bunke, Horst (2005), "Un enfoque basado en la coincidencia de grafos para la clasificación de huellas dactilares mediante varianza direccional", Autenticación biométrica de personas basada en audio y vídeo , Lecture Notes in Computer Science , vol. 3546, pp. 191–200 , doi : 10.1007/11527923_20 , ISBN   978-3-540-27887-0
  22. Birchall, Kristian; Gillet, Valerie J.; Harper, Gavin; Pickett, Stephen D. (enero de 2006). "Medidas de similitud de entrenamiento para actividades específicas: aplicación a grafos reducidos". Journal of Chemical Information and Modeling . 46 (2): 557– 586. doi : 10.1021/ci050465e . PMID 16562986 . 
  23. Neuhaus, Michel; Bunke, Horst (noviembre de 2007). Cerrando la brecha entre la distancia de edición de grafos y las máquinas de kernel . Percepción de máquinas e inteligencia artificial. Vol. 68. World Scientific. ISBN  978-9812708175.
  24. Riesen, Kaspar (febrero de 2016). Reconocimiento de patrones estructurales con distancia de edición de grafos: algoritmos de aproximación y aplicaciones . Avances en visión por computadora y reconocimiento de patrones. Springer. ISBN 978-3319272511.
  25. Serratosa, Francesc (2014). Cálculo rápido de la correspondencia de grafos bipartitos . Pattern Recognition Letters, 45, pp: 244 - 250.
  26. Serratosa, Francesc (2015). Aceleración del emparejamiento rápido de grafos bipartitos mediante una nueva matriz de costos . International Journal of Pattern Recognition and Artificial Intelligence, 29 (2), 1550010, [17 páginas].
  27. Serratosa, Francesc (2015). Cálculo de la distancia de edición de grafos: razonamiento sobre optimalidad y aceleración . Image and Vision Computing, 40, pp: 38-48.
  28. Santacruz, Pep; Serratosa, Francesc (2018). Error-tolerant graph matching in linear computational cost using a initial small partial matching . Pattern Recognition Letters.
  29. Lin, Chih-Long (25 de agosto de 1994). "Dificultad de aproximar el problema de transformación de grafos". En Du, Ding-Zhu; Zhang, Xiang-Sun (eds.). Algoritmos y computación . Notas de clase en ciencias de la computación. Vol. 834. Springer Berlin Heidelberg. pp. 74–82 . doi : 10.1007/3-540-58325-4_168 . ISBN   9783540583257.
  30. Tai, Kuo-Chung (1979). "El problema de la corrección de árbol a árbol". Journal of the ACM . 26 (3): 422– 433. doi : 10.1145/322139.322143 .
  31. Zhang, Kaizhong; Shasha, Dennis (1989). "Algoritmos sencillos y rápidos para la distancia de edición entre árboles y problemas relacionados". SIAM Journal on Computing . 18 (6): 1245– 1262. doi : 10.1137/0218082 .
  32. Klein, Philip N. (1998). "Cálculo de la distancia de edición entre árboles ordenados sin raíz". Actas del 6.º Simposio Europeo Anual sobre Algoritmos (ESA '98) . Berlín, Heidelberg: Springer-Verlag: 91–102 .
  33. Demaine, Erik D.; Mozes, Shay; Rossman, Benjamin; Weimann, Oren (2010). "Un algoritmo de descomposición óptimo para la distancia de edición de árboles". ACM Transactions on Algorithms . 6 (1): Artículo 2. arXiv : cs/0604037 . doi : 10.1145/1644015.1644017 .
  34. Pawlik, Mateusz; Augsten, Nikolaus (2011). "RTED: Un algoritmo robusto para la distancia de edición de árboles". Actas de la Fundación VLDB . 5 (4): 334– 345. doi : 10.14778/2095686.2095692 .
  35. Bringmann, Karl; Gawrychowski, Paweł; Mozes, Shay; Weimann, Oren (2020). "La distancia de edición de árboles no se puede calcular en tiempo fuertemente subcúbico (a menos que APSP pueda)". ACM Transactions on Algorithms . 16 (4): Artículo 48. arXiv : 1703.08940 . doi : 10.1145/3381878 .
  36. ^ Shukla, Parijat; Somani, Arun K. (2015). Coincidencia de árboles mediante modelado de datos . 2015 Congreso Internacional IEEE sobre Big Data. IEEE. págs. 166–173 . doi : 10.1109/BigDataCongress.2015.32 . 
  • X-TED