Data Extraction via Semantic Regular Expression Synthesis
summary
Smore implements semantic regexes that combine syntactic patterns with semantic predicates (dates, ranges, locations, person/org types) and synthesizes them by combining neural sketch generation (GPT prompting to produce type-annotated sketches) with compositional type-directed synthesis, plus over-approximation decomposition and sketch repair. The pipeline uses six labeled examples (pos/neg) and 20 test strings per task, is evaluated on 50 tasks across 10 datasets, and beats traditional regex synthesizers, GPT-3.5 labeling, and FlashFill+GPT on F1 and synthesis completion within one-minute timeouts.
AI-written summary · about
chapters (11)
- 0:00Semantic regex synthesis intro
- 1:04Traditional regex limits
- 2:08Introducing SMoRe
- 3:12Semantic matchers syntax
- 5:19Challenges in synthesis
- 6:00LLMs for type sketching
- 7:28Sketch decomposition workflow
- 8:54Over-approximation in repair
- 11:44Evaluation results
- 13:29Summary and release
- 13:55Q&A
related talks
15mSemantic programming by example with pre-trained models
43mComedy Writing With Small Generative Models
21mTowards Neural Synthesis for SMT-Assisted Proof-Oriented Programming
16mMulti-modal Program Inference: a Marriage of Pre-trained Language Models and Component-based Synthes
43mKeynote: Applied NLP in the age of Generative AI
53mUnleash the power of AI: Automate tasks with OpenAI and Semantic Kernel
49mAutomated Program Generation from Input-Output Examples
36mBeyond Grep: Search for Reliable Coding Agents
