Papers·1주 전
ReSyn: 복잡한 정규식 합성을 위한 분할-정복 프레임워크 — Set2Regex 결합으로 실제 벤치마크 정확도 SOTA

ReSyn은 기존 PBE(Programming-By-Example) 시스템이 복잡한 실제 정규식(깊은 중첩, 유니온 연산)에서 성능이 떨어지는 문제를 해결하기 위해 제안된 합성기-무관 분할-정복 프레임워크입니다. Set2Regex라는 예제의 순열 불변성을 활용하는 파라미터 효율적 합성기와 결합하여 기존 합성기 대비 정확도를 크게 향상시켰으며, 까다로운 실제 벤치마크에서 새로운 SOTA를 달성했습니다. 코드와 데이터셋, 모델 체크포인트는 모두 공개되었습니다.
복잡한 실제 정규식 합성 문제를 분할-정복으로 해결하는 프레임워크 ReSyn이 공개되었습니다.
핵심 결론
- 태스크 — 예제 기반 정규식 합성(PBE)에서 실제 수준의 복잡한 정규식(깊은 중첩, 유니온 연산)을 대상으로 함.
- 성능 — ReSyn을 다양한 합성기에 적용했을 때 정확도가 일관되게 향상되었으며, Set2Regex와 결합 시 기존 SOTA 대비 유의미한 개선을 보임.
- 데이터 — 실제 정규식의 구조적 복잡성을 반영한 새로운 벤치마크를 구축하여 평가.
방법
- 분할-정복 — 복잡한 정규식 합성 문제를 하위 문제로 분해하고, 각 하위 문제의 결과를 조합하는 합성기-무관 프레임워크.
- Set2Regex — 예제 집합의 순열 불변성을 모델에 주입한 파라미터 효율적 합성기로, 기존 Transformer 기반 접근보다 적은 파라미터로 높은 성능.
- 호환성 — ReSyn은 기존 합성기(예: RegexNet, TransRegex) 위에 쉽게 적용 가능하며, Set2Regex와의 조합이 최상의 결과.
한계·조건
- 벤치마크 — 실제 정규식의 복잡성을 반영했으나, 극도로 긴 정규식이나 특수 문자 집합에 대한 일반화는 추가 검증 필요.
- 리소스 — Set2Regex는 파라미터 효율적이지만, 분할-정복 과정에서 여러 합성기를 호출하므로 추론 시간이 다소 증가할 수 있음.
- 공개 — 전체 소스 코드, 데이터셋, 사전 학습 모델 체크포인트를 GitHub에 공개하여 재현 가능.
편집자 한 줄
분할-정복 아이디어 자체는 단순하지만, 실제 정규식의 구조적 복잡성을 체계적으로 다룬 점이 인상적입니다. Set2Regex의 순열 불변성 주입 방식은 다른 합성 태스크에도 응용 가능해 보입니다.
- #program-synthesis
- #regex
- #pbe
- #set2regex
- #resyn
Seongmin Kim