内容简介:考虑一个大而复杂的数据集。如果你的任务是分析此数据集,你可以通过绘制几个图表进行探索性可视分析(EVA)。这种迭代的图表驱动方法很受欢迎,并得到Tableau等软件和Kaggle Kernels等数据科学笔记本的支持。不幸的是,由于数据集的深度或宽度,这样的任务对于一个人来说可能太多了。从这些领域中提取有趣知识的问题的直接解决方案并不清晰。一种方法是让多个分析师共同工作以发现结论,无论是作为一个团队(即协同工作)还是独立(每个分析师进行自己的调查)。但现在的问题是,我们如何理解并从这一分析中学习?假设一种
考虑一个大而复杂的数据集。如果你的任务是分析此数据集,你可以通过绘制几个图表进行探索性可视分析(EVA)。这种迭代的图表驱动方法很受欢迎,并得到Tableau等软件和Kaggle Kernels等数据科学笔记本的支持。不幸的是,由于数据集的深度或宽度,这样的任务对于一个人来说可能太多了。从这些领域中提取有趣知识的问题的直接解决方案并不清晰。一种方法是让多个分析师共同工作以发现结论,无论是作为一个团队(即协同工作)还是独立(每个分析师进行自己的调查)。但现在的问题是,我们如何理解并从这一分析中学习?
假设一种元可视化方法,使用可视化来分析和审查先前分析师创建的其他可视化。本文提出了Chart Constellations系统,该系统支持由多个用户创建的可视化集合和数据故事的EVA。
Constellations是一个完全交互的系统,包括多个协调的接口和一个带有数据管理组件的后端服务器。提供基于 排序 的图表视图,该视图可以基于引入的距离启发法进行交互式调整;该 工具 还支持可视化聚类,选择和过滤机制,以提取图表子集,检查单个图表,建议新区域的工作流程。探索数据集,以及创建新图表的机制。
本文希望实现对于先前创建的可视化图表进行灵活探索性的视觉分析(EVA)。遗憾的是,当前的系统要么太麻烦,效率低,无法处理复杂的任务,或者(特别是在数据笔记本中)不便于同时进行多用户分析。本文的目标是设计一个可视化分析工具,用于组织可视化集合并促进交互式探索和分析。在进行这种探索和分析后,用户可能会受到启发,进行自己的图表创作,以进行进一步的数据探索。基于这些目标,本文确定了这样一个系统应该满足的高级任务如下:
任务1:提供所有图表的基于排序的概览
排序是对多变量对象进行排序的过程,使得相似的对象彼此靠近,而不同的对象彼此远离。也就是说,维数减少技术可以在空间上将数据(可视化)投影到二维空间,从而促进探索性可视分析。这样做可以让分析师通过探索汇总的集合来发现趋势,模式和异常值。为此,本文实现了几个功能。首先,在每个图表之间产生一组派生的成对距离(基于它们的相似性),将相似的图表放置在彼此附近。离散的图表集群可以通过分组或分箱进行聚合。
任务2:从概览中提取图表的子集
当希望一次只查看一个子集,而不是查看所有图表时。也就是说,在发现过程中,用户希望搜索符合特定条件的图表。这意味着系统应该包含查询图表的功能。对于概览(任务1)中显示的图表,加以过滤以隐藏不符合所需约束的图表。通过主动选择一组图表(例如使用套索)也可以进行过滤。图表的布局被更新,并且随后可以重新计算新的聚合集群。
任务3:检查单个图表
系统应该能够以全分辨率查看用户创建的特定图表。选择图表将显示它(即编码它)以供检查。
任务4:建议进一步探索的领域
除了检查先前创建的图表之外,用户可能还希望在数据集中发现未探索的区域并进行探索。实现此目的的一种方法是识别数据集中迄今未被高度使用的属性。因此,应该让分析师根据他们之前的用法导航并选择维度,过滤可用维度仅显示这些未开发的区域。
任务5:创建新图表
最后,作为探索的一部分,我们可以进行自己的调查(即创建我们自己的数据故事)。系统应该允许我们生成新的图表。通过从原始数据集中选择(并选择性地聚合)一组数据点,将它们安排成所需的组织形式,将数据编码为可视化,然后将创建的图表记录到该系统供以后审查。
给定一组图表,每个图表都有自己的编码规范:引用的数据点和描述性元标签(标题,关键字,标题,作者等),我们如何确定它与语料库中其他图表的相似性?具体而言,图表编码距离,关键字标记和维度交叉这三个度量被组合成我们想要在Constellations中显示的每对图表的成对距离值。这使我们可以考虑构成数据故事的图表的多个方面。
图表编码距离。GraphScape是最近推出的基于图表编码相似性的可视化设计空间的有向图模型。图形节点表示图表详述,节点之间的边权重表示将一个图表转换为另一个图表的成本。给定两个图表,根据GraphScape的图模型,通过对沿图表之间的最短路径遍历的边权重求和来计算它们之间的编码距离。
关键字标记距离。在Constellations中,允许数据故事图表附加手动注释的描述性关键字。我们使用word2vec来获取标记关键字的单词向量,然后计算每个图表的单词向量之间的成对余弦距离。
维度交叉距离。使用简单的二进制编码将所有数据维度表示为向量。每个图表都有自己的向量,如果维度用于其中一个图表编码,则维度的值为1,否则为0。使用向量,计算每对图表之间的维度交叉距离。
聚合成对距离。在单独计算每个图表之间的图表编码,关键字标记和维度交叉的距离后,距离将按照[0,1]比例进行标准化,并在以下函数中与用户定义的比例权重相结合:
图片1 距离公式
图片2 系统组成
图2显示了Constellations的主要系统组件。Collab View是使用排序投影可视化的地方,通过选择和过滤进行探索;数据覆盖面板显示过去的属性用法并建议新的探索途径。Chart View有助于查看单个图表和创建新图表。后端服务器提供数据存储,计算必要的统计指标的功能。
图片3 系统界面
Collab View(图3A)用作主要概览。基于聚合成对距离,使用降维(a1)在空间上定位先前创建的图表的集合。每个图表都用圆圈标记绘制,并使用色调表示其创建作者。顶部菜单(a2)中提供了标注选项,包括作者折线:显示创建顺序的作者图表之间的有向箭头。在视图的左侧(a3),选项板包含三个距离权重滑块和多个过滤选项。调整滑块会修改公式中使用的缩放权重,重新计算所有图表的聚合成对距离并更新投影布局(图3B)。应用过滤器会根据所需的约束删除图表的子集。应用过滤器时,会在过滤板中创建描述性标签(a5)。在底部,时间线滑块允许时间过滤(a4);用户还可以直接在投影上绘制套索以选择图表的子集。聚类用于将图表分成不连续的组。聚类可以基于图表之间的聚合成对距离或者基于它们的投影x / y坐标。当投影更新时,例如通过过滤或调整距离权重滑块,将重新计算群集。在右侧,集群板显示有关当前绘制的集群的统计信息(a6)。上面是数据覆盖面板(图3C),其中包含一个树形图,显示数据集中的可用属性。每个块对应一个属性,并根据投影中是否有任何图表使用它来着色。在数据覆盖面板中选择一个属性会将其高亮显示为蓝色(c1)并高亮显示任何相交的维度为橙色。交叉维度是在至少一个图表中共同出现的维度。橙色块的亮度表示共现量。
Chart View(图3D)允许对现有图表进行单个检查,并提供创建新图表的功能。要创建新图表,用户输入 SQL 查询(d1)以从后端服务器检索数据,并使用一组下拉菜单(d2)设置图表编码以创建可视化(d3)。可以手动添加自定义的关键字(d4,d5,d6)。创建新图表时,Collab View中可用的图表集合更新(图3E)。
在本文中,通过有效地总结已创建的先前分析师的图表,提出Chart Constellations系统以支持元视觉分析。 Constellations提供各种统计方法来组织和将结果投影到一个视图中;相似的可视化相互靠近。此外,Constellations提供了识别未探索数据子空间的方法,促进了对新区域的有针对性的探索。用户研究结果表明,Constellations系统比传统的数据笔记本界面(Kaggle Kernels)更有效,可以从一组可视化结果中获得高水平的洞察力,并了解探索过程。 用户研究另外表明,有效地总结一组不同的可视化对于协作可视化分析是有益的。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Java程序员修炼之道
[英] Benjamin J. Evans、[荷兰] Martijn Verburg / 吴海星 / 人民邮电出版社 / 2013-7 / 89.00元
本书分为四部分,第一部分全面介绍Java 7 的新特性,第二部分探讨Java 关键编程知识和技术,第三部分讨论JVM 上的新语言和多语言编程,第四部分将平台和多语言编程知识付诸实践。从介绍Java 7 的新特性入手,本书涵盖了Java 开发中最重要的技术,比如依赖注入、测试驱动的开发和持续集成,探索了JVM 上的非Java 语言,并详细讲解了多语言项目, 特别是涉及Groovy、Scala 和Cl......一起来看看 《Java程序员修炼之道》 这本书的介绍吧!