(本文阅读时间:8分钟)
在如今这个数据驱动的时代,数据可视化已成为展示数据内在信息的重要工具之一。想象一下,若只需一句简单的指令,复杂的数据便能“化繁为简”,呈现为直观、易于理解的图表,那么既可以减轻分析数据的压力,也让数据的交流与传递变得更为轻松有趣。近期,得益于大语言模型(LLMs)的突破性进展,自动化数据可视化生成的梦想逐步实现。然而,潜在的问题也随之而来:由 LLMs 生成的可视化图表,真的可靠吗?它们是否能遵循数据可视化的最佳实践?
为了有效应对这些挑战,微软亚洲研究院推出了一套全新的评估框架——VisEval,为数据可视化生成提供了更全面、更科学的评估机制。VisEval 不仅构建了一个高质量、覆盖广泛的可视化数据集,还通过多维度的评估机制,从生成代码的有效性到图表的契合性、可读性进行了全面审查。相关论文已被全球可视化领域顶尖的学术会议 IEEE VIS 2024 评选为最佳论文。
论文链接:
https://arxiv.org/abs/2407.00981
GitHub 链接:
https://github.com/microsoft/VisEval
用大模型生成可视化的过程通常包括:将用户的查询(query)和数据整合到提示词(prompt)中,然后使用诸如 Matplotlib 或 Seaborn 等可视化库生成代码,最终在沙盒环境中执行这些代码以生成图表。虽然这个过程听起来简单,但实际上,现有的大语言模型在生成可视化时会面临诸多问题。
如图1所示,当大模型根据船舶数据生成堆叠条形图时,不同模型的表现各异:有的生成的代码无法执行,有的映射数据出错,还有的未能正确排序或图例摆放混乱。这些问题可以归纳为三大类:有效性、契合性和可读性。具体而言:
有效性指图表能否成功生成并准确呈现数据;
契合性是指图表是否满足用户的实际需求,例如轴、图例、数据字段等是否符合要求;
可读性则考虑图表是否易于理解,例如颜色搭配和布局设计是否合理。
图1:大模型在生成可视化时遇到的问题
可靠、全面的自动化评估框架的缺乏,阻碍了人们对大模型在生成可视化时不足之处的认识。目前,可视化评估数据集普遍存在一些局限性,限制了全面深入的评估:缺少文本查询或原始数据、缺乏明确的标准答案,以及过于专注于狭窄领域且规模有限。
此外,现有的评估方法也存在不足。人工评估虽然被视为“黄金标准”,但其耗时费力,难以大规模推广;基于规则的评估能够检查数据的匹配情况,但常常忽视可视化的可读性问题;而利用大语言模型评估生成代码的方式尚未经过充分验证,其可靠性存疑。
VisEval 的提出不仅提供了一个高质量的大规模数据集,还引入了可靠且多维度的自动化评估框架,从而确保对生成的可视化可以进行全面的评估。
在数据集的构建过程中,研究员们专注于挑选无歧义、合理且无重复的查询,并为每个查询提供了准确的标准答案,来保证数据的可靠性和有效性。为了增强数据集的鲁棒性,研究员们在数据集中涵盖了多个领域和图表类型,同时排除了过于简单的查询,以确保生成的可视化具有一定的复杂性。基于 nvBench 数据集,研究员们结合大语言模型和人工专家的筛选,精心挑选出了高质量的查询。这一过程不仅兼顾了数据的质量,还有效减少了人力工作负担。此外,研究员们通过元信息(meta information)为每个查询注释了所有可接受的标准答案,并进行了数据集的重新平衡。这一系列措施都确保了 VisEval 数据集的全面性和实用性,使其在自动化数据可视化的评估中可以发挥更大的作用。最终,VisEval 的数据集中包含了7种图表类型,超过1,000个可视化图表。
图2:数据集示例
数据集构建完成后,研究员们又开发了一个自动化评估框架。该框架如图3所示,分为三个模块,分别对生成代码的有效性(validity)、契合性(legality)和可读性(readability)进行评估。为了保证评估框架的可靠性,研究员们进行了细致的审查,重点关注数据集和评估框架的各个方面。此外,研究员们通过设计测试用例和进行定量评估,来验证评估的质量。通过这些步骤,研究员们能够确保评估框架可以准确、全面地对生成的可视化进行有效评估。
图3:自动化评估框架概览
自动化评估框架具体如下:
有效性检查
代码生成后,框架会执行代码,并检查是否成功生成了可视化,以确保代码的有效性。
契合性检查
一旦代码通过了有效性检查,契合性检查模块会提取图表类型、数据等信息,并根据数据集中注释的元信息评估图表的契合性。这一步是为了确保生成的图表能够符合用户查询的要求,并且数据映射合理。
可读性检查
可读性评估是框架中最具挑战性的部分。评估可读性需要考虑多方面因素,例如布局、比例和颜色等。为此,研究员们借助了 GPT-4V(ISION) 的强大能力,并将可读性评估任务分解为多个更可控的子问题。先分别对布局、比例尺和刻度进行细化评估,再将评估结果汇总,整体给出可读性的打分。研究员们的定量实验表明,VisEval 的可读性评估结果与人类偏好高度一致。
基于 VisEval 框架,研究员们对多种模型的可视化生成能力进行了系统评估。
第一项实验测试了不同模型在使用 Matplotlib 和 Seaborn 库时的表现。如表1所示,VisEval 揭示了不同模型在生成可视化方面的显著差异。以 GPT-4 为例,在使用 Matplotlib 库生成可视化时,其质量得分为2.89(满分为5),虽然表现尚可,但依然有改进的空间。相对而言,在使用 Seaborn 库时,尽管其代码通常比 Matplotlib 更为简洁,但所有模型的得分均较低,这一结果令人意外。
表1:自动化评估框架概览
通过深入分析,研究员们发现大语言模型在可视化生成的多个阶段都容易出现错误,如图4所示。这些阶段包括代码编写、数据转换、可视化转换以及排序等方面。除了准确性之外,模型生成的图表在可读性方面也频繁出现问题,而这一点在以往的研究中常常被忽视。
图4:大模型在生成可视化时的常见错误
在第二项实验中,研究员们探讨了不同提示词设计对模型性能的影响。其中特别分析了三种基于大语言模型的可视化生成方法:LIDA、Chat2VIS 和研究团队提出的 CoML4VIS。实验结果表明,提示词设计对模型的表现具有显著影响。由于注意到这三种方法采用了不同的表格格式,所以研究员们还进行了额外的实验。实验中研究员们保持 CoML4VIS 中其他条件不变,仅更改表格格式。如图5所示,不同的大语言模型展现出了对不同表格格式的偏好。这一发现提示研究员们,可能需要针对不同模型设计不同的提示词,以优化其表现。
图5:不同的模型有不同的表格格式偏好
在第三项实验中,研究员们测试了无用数据表对生成可视化性能的影响。如表2所示,当给大模型的提示词中包含两张无用的数据表时,所有模型的性能均显著下降。这一结果表明,模型在处理复杂输入时容易受到干扰,强调了在选择数据时确保其相关性的重要作用。
表2:存在无用表格时对模型性能的影响
作为一种全新的可视化生成评估框架,VisEval 通过高质量的数据集和可靠的自动化评估方法,填补了现有评估体系的空白,为未来的可视化生成研究提供了重要的参考标准。微软亚洲研究院的研究员们期待,随着数据可视化技术变得更加智能和便捷,各行各业的数据驱动决策将得到更有力的支持。
你也许还想看: