一句话:将自然语言查询转为 refinement 类型规约,并用类型指导合成生成符合用户意图与设计准则的可视化程序。
本文提出一种基于程序合成的方法,从自然语言查询自动生成可视化程序。其核心是将自然语言查询按 intents-and-slots 范式解析为 refinement 类型规约,再通过类型指导合成搜索最可能满足用户意图的可视化程序。所设计的 refinement 类型系统能捕获自然语言查询中的有用线索,并使合成算法拒绝违反输入数据集公认设计准则的可视化。作者实现了工具 Graphy,并在 NLVCorpus 上评估;该基准包含 3 个常用数据集和 700 多条真实自然语言查询。实验表明,Graphy 显著优于基于 transformer 和基于规则的最先进自然语言可视化工具。
We propose a new technique based on program synthesis for automatically generating visualizations from natural language queries. Our method parses the natural language query into a refinement type specification using the intents-and-slots paradigm and leverages type-directed synthesis to generate a set of visualization programs that are most likely to meet the user's intent. Our refinement type system captures useful hints present in the natural language query and allows the synthesis algorithm to reject visualizations that violate well-established design guidelines for the input data set. We have implemented our ideas in a tool called Graphy and evaluated it on NLVCorpus, which consists of 3 popular datasets and over 700 real-world natural language queries. Our experiments show that Graphy significantly outperforms state-of-the-art natural language based visualization tools, including transformer and rule-based ones.
@article{paperbot1475,
title = {Type-directed synthesis of visualizations from natural language queries},
author = {Qiaochu Chen and Shankara Pailoor and Celeste Barnaby and Abby Criswell and Chenglong Wang and Greg Durrett and Işil Dillig},
journal = {Proceedings of the ACM on Programming Languages},
volume = {6},
number = {OOPSLA2},
year = {2022},
doi = {10.1145/3563307}
}