Natural Language to Visualization by Neural Machine Translation(IEEE VIS 2021)
一个还不错的输入自然语言-可视化的工具包
论文:https://luoyuyu.vip/files/ncNet-VIS21.pdf
Github:https://github.com/Thanksyy/ncNet
相关背景介绍:
机器翻译任务与自然语言-可视化任务类似。如下图:都是输入自然语言,经过序列的编码和解码操作后,得出对应的自然语言。
区别在于:
翻译任务的输入和输出是两个不同语种。
自然语言-可视化任务的输入是自然语言查询,输出是往预先定义好的Vega模板中填词(确定可视化的图表类型,横纵坐标元素等词信息)。
贡献:
-
提出ncNet,一个用于自然语言到可视化(NL2VIS)任务的基于transformer的序列到序列的模型。整体结构如下图所示:
具体结构如下:
-
为了使用神经机器翻译技术简化NL2VIS翻译任务,提出一个新颖的可视化语法Vega-Zero。(相比现有的Vega-Lite,Vega-Zero的模板更加简洁)
-
为了提升翻译准确率,使得用户去选择一个表格模板增强ncNet
-
设计了两个优化技巧:
【1】attention forcing:整合预定义好的领域知识(结合先验知识,使得训练过程中增加或降低对于某些词的关注度和加权系数)
【2】visualization-aware translation:为了更好的可视化生成(设立了特定的启发式搜索规则进行可视化感知的翻译)
In Jupyter Notebook的可视化效果图:
此项工作目前的技术痛点:难以处理不友好的行列表头名称,难以用于大数据可视化,工具包开发的集成度和封装度还较低,技术实现较有难度。