Skip to main content
QUICK REVIEW

[논문 리뷰] Equivalence of Dataflow Graphs via Rewrite Rules Using a Graph-to-Sequence Neural Model

Steve Kommrusch, Théo Barollet|arXiv (Cornell University)|2020. 02. 17.
Software Testing and Debugging Techniques참고 문헌 50인용 수 4
한 줄 요약

이 논문은 프로그램 등가성에 대한 그래프에서 시퀀스로의 신경망인 pe-graph2seq를 소개한다. 이 모델은 한 데이터플로우 그래프를 다른 그래프로 변환하는 증명 가능하게 올바른 재작성 시퀀스를 생성한다. 100개 이상의 등가성 공리가 적용된 선형 대수 언어에서 훈련되었으며, 10,000개의 테스트 쌍에서 96%의 정확도를 달성했고, 추론 시간은 16ms이며, 모든 출력은 무시할 만큼 짧은 시간 내에 결정적으로 검증 가능하다.

ABSTRACT

In this work we target the problem of provably computing the equivalence between two programs represented as dataflow graphs. To this end, we formalize the problem of equivalence between two programs as finding a set of semantics-preserving rewrite rules from one into the other, such that after the rewrite the two programs are structurally identical, and therefore trivially equivalent. We then develop the first graph-to-sequence neural network system for program equivalence, trained to produce such rewrite sequences from a carefully crafted automatic example generation algorithm. We extensively evaluate our system on a rich multi-type linear algebra expression language, using arbitrary combinations of 100+ graph-rewriting axioms of equivalence. Our system outputs via inference a correct rewrite sequence for 96% of the 10,000 program pairs isolated for testing, using 30-term programs. And in all cases, the validity of the sequence produced and therefore the provable assertion of program equivalence is computable, in negligible time.

연구 동기 및 목표

  • 기계 학습을 활용하여 두 데이터플로우 그래프 간의 증명 가능한 프로그램 등가성 검사를 해결한다.
  • 이진 예측을 내는 스토하스틱 신경망의 한계를 극복하기 위해, 결정적이고 검증 가능한 증명 시퀀스를 생성함으로써 프로그램 등가성에서의 한계를 극복한다.
  • 두 동치 프로그램을 구조적으로 동일하게 만들기 위해 의미를 유지하는 그래프 재작성 규칙의 시퀀스를 출력하는 신경망 시스템을 개발한다.
  • 모든 출력이 무시할 만큼 짧은 시간 내에 검증 가능하게 하여 잘못된 양성 결과를 방지함으로써 효율적이고 정확한 등가성 검사를 가능하게 한다.
  • 다양한 유형의 선형 대수 표현식 언어에서 풍부한 대수적 재작성 공리로 구성된 복잡한 환경에서 접근 방식을 입증한다.

제안 방법

  • 연산과 값에 대한 노드와 데이터 의존성에 대한 간선을 가진 방향성 있고 루트가 있는 데이터플로우 그래프로 프로그램을 표현한다.
  • 한 그래프를 다른 그래프로 변환하는 의미 유지 재작성 규칙의 시퀀스의 존재로 프로그램 등가성을 공식화한다.
  • 서브그래프에 적용 가능한 재작성 규칙으로서 100개 이상의 등가성 공리(예: 1*x → x, a*(b+c) → a*b + a*c)를 정의한다.
  • 입력 그래프에서 이러한 재작성 규칙의 시퀀스를 예측하는 그래프에서 시퀀스로의 신경망(pe-graph2seq)을 훈련한다.
  • 알려진 올바른 재작성 시퀀스를 가진 10,000개의 훈련 쌍을 자동으로 생성하는 전용 예제 생성 파이프라인을 사용한다.
  • 예측된 재작성 시퀀스를 한 그래프에 적용하고 깊이 우선 탐색을 통해 구조적 동일성을 확인함으로써 출력을 검증한다.

실험 결과

연구 질문

  • RQ1기계 학습을 통해 한 데이터플로우 그래프를 다른 등가성 그래프로 증명 가능하게 변환하는 그래프 재작성 규칙의 시퀀스를 생성할 수 있는가?
  • RQ2이러한 시스템은 비등가 입력을 잘못된 양성 결과 없이 올바르게 거부할 수 있는가?
  • RQ3신경망의 출력이 무시할 만큼 짧은 시간 내에 결정적으로 검증될 수 있는가? 이는 실용적 구현을 가능하게 한다.
  • RQ4풍부한 대수적 언어에서 서브트리 조작, 노드 삭제 및 재정렬을 포함한 복잡한 재작성 시퀀스를 학습하는 데 모델이 얼마나 효과적인가?
  • RQ5어떤 정도로 어텐션 메커니즘을 갖춘 그래프에서 시퀀스로의 모델은 등가성 유지 변환의 조합적 공간을 탐색하는 히ュ리스틱을 학습할 수 있는가?

주요 결과

  • pe-graph2seq 모델은 다중 유형의 선형 대수 언어에서 10,000개의 테스트 프로그램 쌍 중 96%에 대해 정확하고 검증 가능한 재작성 시퀀스를 성공적으로 생성했다.
  • 예측된 재작성 시퀀스를 적용하고 구조적 동일성을 비교함으로써 모든 출력이 무시할 만큼 짧은 시간 내에 결정적으로 검증 가능하다.
  • 시스템은 오직 설계상으로 잘못된 양성 결과를 생성하지 않는다. 비등가 프로그램은 정확히 비등가로 식별된다.
  • 프로그램 쌍당 평균 추론 시간은 16ms로, 실용적 사용에 있어 높은 효율성을 보여준다.
  • 모델은 서브트리 재정렬, 노드 삭제 및 대수적 간소화와 같은 복잡한 변환에 대해 일반화 능력을 보였다.
  • 그래프 신경망이 등가성 유지 재작성의 조합적 공간을 효과적으로 탐색하는 히ュ리스틱을 학습할 수 있음을 입증했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.