그래프 편집 거리

Graph edit distance

수학컴퓨터 과학에서 그래프 편집 거리(GED)는 두 그래프 사이의 유사성(또는 유사성)을 측정하는 척도다. 그래프 편집 거리 개념은 1983년 알베르토 산펠리우와 킹-썬 푸에 의해 수학적으로 처음 공식화되었다.[1] 그래프 편집 거리의 주요 적용 분야는 기계학습에서 오류 방지 패턴 인식과 같은 부정확한 그래프 매칭이다.[2]

두 그래프 사이의 그래프 편집 거리는 문자열 간의 문자열 편집 거리와 관련이 있다. 문자열을 최대도 1방향 반복 그래프연결된 것으로 해석하면 레벤슈테인 거리,[3][4] 해밍 거리[5] 자로-윙클러 거리와 같은 편집 거리의 고전적 정의는 적절히 제한된 그래프 사이의 그래프 편집 거리로 해석될 수 있다. 마찬가지로 그래프 편집 거리도 뿌리 나무 사이의 나무 편집 거리를 일반화한 것이다.[6][7][8][9]

형식 정의 및 속성

그래프 편집 거리의 수학적 정의는 정의되는 그래프의 정의, 즉 그래프의 꼭지점과 가장자리에 라벨을 붙이는지 여부와 방법, 가장자리가 방향을 향하는지 여부에 따라 달라진다. 일반적으로 일련의 그래프 편집 작업(기본 그래프 작업이라고도 함)을 고려할 때 G , 2)로 기록된 두 그래프 1 ) 사이의 그래프 편집 거리는 다음과 같이 정의할 수 있다

where denotes the set of edit paths transforming into (a graph isomorphic to) and is the cost of each graph edit operation .

기본 그래프 편집 연산자 집합에는 일반적으로 다음이 포함된다.

그래프에 라벨이 붙은 새로운 정점 하나를 도입하기 위한 정점 삽입.
그래프에서 단일(최소 분리) 정점을 제거하기 위한 정점 삭제.
주어진 정점의 라벨(또는 색상)을 변경하기 위한 정점 치환.
쌍의 꼭지점 사이에 새로운 색상의 가장자리를 도입하기 위한 가장자리.
정점 쌍 사이의 단일 에지를 제거하기 위한 에지 삭제.
주어진 가장자리의 레이블(또는 색상)을 변경하기 위한 가장자리 대체.

추가적이지만 덜 일반적인 연산자에는 에지에 새로운 정점을 도입하는 에지 분할(또한 새로운 에지 생성), 에지 사이의 2도 정점을 제거하는 에지 수축(동일한 색상의) 등의 연산이 포함된다. 이러한 복잡한 편집 연산자는 더 많은 기본적인 변환의 관점에서 정의될 수 있지만, 그 사용으로 연산자가 구성 요소의 합계보다 더 저렴한 경우 함수 c 의 매개변수를 더 정밀하게 정의할 수 있다.

기본 그래프 편집 연산자에 대한 심층 분석은 다음과 같다.

그리고 이러한 기본적인 그래프 편집 연산자를 자동으로 추론하는 몇 가지 방법이 제시되었다.[13][14][15][16][17] 일부 알고리즘은 이러한 비용을 온라인에서 학습한다.

적용들

그래프 편집 거리는 필기 인식,[19] 지문 인식[20]척수학에서 응용 프로그램을 찾는다.[21]

알고리즘 및 복잡성

그래프 한 쌍 사이의 그래프 편집 거리를 계산하기 위한 정확한 알고리즘은 일반적으로 문제를 두 그래프 사이의 최소 비용 편집 경로 찾기 중 하나로 변환한다. 최적 편집 경로의 계산은 A* 검색 알고리즘으로 구현되는 경로 찾기 검색 또는 최단 경로 문제로 캐스팅된다.

정확한 알고리즘 외에도 여러 가지 효율적인 근사 알고리즘이 알려져 있다. 그들 중 대부분은 입방체 계산 시간을 가지고 있다.

게다가 GED의 근사치를 선형 시간으로 추론하는 알고리즘이 있다.

위의 알고리즘이 실제로 잘 작동하는 경우도 있지만, 일반적으로 그래프 편집 거리 계산 문제는 NP-하드(온라인에서 사용할 수 있는 증거는 Zeng 2절 참조)이며, 심지어 근사치조차 어렵다(형식적으로는 APX-하드[28]).

참조

  1. ^ Sanfeliu, Alberto; Fu, King-Sun (1983). "A distance measure between attributed relational graphs for pattern recognition". IEEE Transactions on Systems, Man and Cybernetics. 13 (3): 353–363. doi:10.1109/TSMC.1983.6313167.
  2. ^ Gao, Xinbo; Xiao, Bing; Tao, Dacheng; Li, Xuelong (2010). "A survey of graph edit distance". Pattern Analysis and Applications. 13: 113–129. doi:10.1007/s10044-008-0141-y.
  3. ^ Влади́мир И. Левенштейн (1965). Двоичные коды с исправлением выпадений, вставок и замещений символов [Binary codes capable of correcting deletions, insertions, and reversals]. Доклады Академий Наук СССР (in Russian). 163 (4): 845–848.
  4. ^ Levenshtein, Vladimir I. (February 1966). "Binary codes capable of correcting deletions, insertions, and reversals". Soviet Physics Doklady. 10 (8): 707–710.
  5. ^ Hamming, Richard W. (1950). "Error detecting and error correcting codes" (PDF). Bell System Technical Journal. 29 (2): 147–160. doi:10.1002/j.1538-7305.1950.tb00463.x. hdl:10945/46756. MR 0035935. Archived from the original on 2006-05-25.{{cite journal}}: CS1 maint : bot : 원본 URL 상태 미상(링크)
  6. ^ Shasha, D; Zhang, K (1989). "Simple fast algorithms for the editing distance between trees and related problems". SIAM J. Comput. 18 (6): 1245–1262. CiteSeerX 10.1.1.460.5601. doi:10.1137/0218082.
  7. ^ Zhang, K (1996). "A constrained edit distance between unordered labeled trees". Algorithmica. 15 (3): 205–222. doi:10.1007/BF01975866.
  8. ^ Bille, P (2005). "A survey on tree edit distance and related problems". Theor. Comput. Sci. 337 (1–3): 22–34. doi:10.1016/j.tcs.2004.12.030.
  9. ^ Demaine, Erik D.; Mozes, Shay; Rossman, Benjamin; Weimann, Oren (2010). "An optimal decomposition algorithm for tree edit distance". ACM Transactions on Algorithms. 6 (1): A2. arXiv:cs/0604037. CiteSeerX 10.1.1.163.6937. doi:10.1145/1644015.1644017. MR 2654906.
  10. ^ Serratosa, Francesc (2021). Redefining the Graph Edit Distance. S. N. Computer Science, pp: 2-438.
  11. ^ Serratosa, Francesc (2019). Graph edit distance: Restrictions to be a metric. Pattern Recognition, 90, pp: 250-256.
  12. ^ Serratosa, Francesc; Cortés, Xavier (2015). Graph Edit Distance: moving from global to local structure to solve the graph-matching problem. Pattern Recognition Letters, 65, pp: 204-210.
  13. ^ Santacruz, Pep; Serratosa, Francesc (2020). Learning the graph edit costs based on a learning model applied to sub-optimal graph matching. Neural Processing Letters, 51, pp: 881–904.
  14. ^ Algabli, Shaima; Serratosa, Francesc (2018). Embedding the node-to-node mappings to learn the Graph edit distance parameters. Pattern Recognition Letters, 112, pp: 353-360.
  15. ^ Xavier, Cortés; Serratosa, Francesc (2016). Learning Graph Matching Substitution Weights based on the Ground Truth Node Correspondence. International Journal of Pattern Recognition and Artificial Intelligence, 30(2), pp: 1650005 [22 pages].
  16. ^ Xavier, Cortés; Serratosa, Francesc (2015). Learning Graph-Matching Edit-Costs based on the Optimality of the Oracle's Node Correspondences. Pattern Recognition Letters, 56, pp: 22 - 29.
  17. ^ Conte, Donatello; Serratosa, Francesc (2020). Interactive Online Learning for Graph Matching using Active Strategies. Knowledge Based Systems, 105, pp: 106275.
  18. ^ Rica, Elena; Álvarez, Susana; Serratosa, Francesc (2021). On-line learning the graph edit distance costs. Pattern Recognition Letters, 146, pp: 52-62.
  19. ^ Fischer, Andreas; Suen, Ching Y.; Frinken, Volkmar; Riesen, Kaspar; Bunke, Horst (2013), "A Fast Matching Algorithm for Graph-Based Handwriting Recognition", Graph-Based Representations in Pattern Recognition, Lecture Notes in Computer Science, vol. 7877, pp. 194–203, doi:10.1007/978-3-642-38221-5_21, ISBN 978-3-642-38220-8
  20. ^ Neuhaus, Michel; Bunke, Horst (2005), "A Graph Matching Based Approach to Fingerprint Classification using Directional Variance", Audio- and Video-Based Biometric Person Authentication, Lecture Notes in Computer Science, vol. 3546, pp. 191–200, doi:10.1007/11527923_20, ISBN 978-3-540-27887-0
  21. ^ Birchall, Kristian; Gillet, Valerie J.; Harper, Gavin; Pickett, Stephen D. (Jan 2006). "Training Similarity Measures for Specific Activities: Application to Reduced Graphs". Journal of Chemical Information and Modeling. 46 (2): 557–586. doi:10.1021/ci050465e. PMID 16562986.
  22. ^ Neuhaus, Michel; Bunke, Horst (Nov 2007). Bridging the Gap between Graph Edit Distance and Kernel Machines. Machine Perception and Artificial Intelligence. Vol. 68. World Scientific. ISBN 978-9812708175.
  23. ^ Riesen, Kaspar (Feb 2016). Structural Pattern Recognition with Graph Edit Distance: Approximation Algorithms and Applications. Advances in Computer Vision and Pattern Recognition. Springer. ISBN 978-3319272511.
  24. ^ Serratosa, Francesc (2014). Fast Computation of Bipartite Graph Matching. Pattern Recognition Letters, 45, pp: 244 - 250.
  25. ^ Serratosa, Francesc (2015). Speeding up Fast Bipartite Graph Matching through a new cost matrix. International Journal of Pattern Recognition and Artificial Intelligence, 29 (2), 1550010, [17 pages].
  26. ^ Serratosa, Francesc (2015). Computation of Graph Edit Distance: Reasoning about Optimality and Speed-up. Image and Vision Computing, 40, pp: 38-48.
  27. ^ Santacruz, Pep; Serratosa, Francesc (2018). Error-tolerant graph matching in linear computational cost using an initial small partial matching. Pattern Recognition Letters.
  28. ^ Lin, Chih-Long (1994-08-25). "Hardness of approximating graph transformation problem". In Du, Ding-Zhu; Zhang, Xiang-Sun (eds.). Algorithms and Computation. Lecture Notes in Computer Science. Vol. 834. Springer Berlin Heidelberg. pp. 74–82. doi:10.1007/3-540-58325-4_168. ISBN 9783540583257.