数据可视化是数据分析师探索数据中的模式、趋势和见解的主要手段。遗憾的是,现有的可视化分析工具提供的功能有限表达能力而且可伸缩性当涉及到在大型数据集上搜索可视化时,这会使可视化数据探索变得费时费力。在这项工作中,我们介绍了可视化搜索的问题,并强调了搜索枚举和可视化匹配两个潜在的挑战。为了解决这些问题,我们首先介绍了我们在Zenvisage上的工作,它可以帮助枚举大量的可视化集合,并在交互式界面和富有表现力的可视化查询语言的帮助下支持简单的可视化匹配。为了更细粒度和更灵活的可视化匹配,包括搜索未指定的和近似的模式,我们扩展了Zenvisage来开发ShapeSearch。ShapeSearch支持一本小说形状查询代数这有助于表示现有系统难以指定的大量模式查询。ShapeSearch公开了多种规范机制:草图、自然语言和可视化正则表达式,帮助用户轻松发出形状查询,同时应用查询感知和感知优化,在交互响应时间内高效地执行它们。最后,我们讨论了一些开放的研究问题,以进一步提高Zenvisage和ShapeSearch的可用性和性能。
<一个href="#PageTop">回到顶部一个>
<一个name="body-2">
数据可视化是主要手段通过哪些数据分析师(其中许多人的编程技能有限)会探索他们的数据。虽然数据可视化工具(如Tableau和Excel)的可用性和可视化编码能力在过去几年里经历了巨大的发展,但在搜索大型和复杂数据集中的模式、趋势和见解时,这些工具严重受限。数据分析师,尤其是非程序员,最先进的技术是将他们的数据加载到可视化工具中,并反复生成可视化,直到确定所需的模式或见解。不幸的是,随着数据集的规模和复杂性的增加,这种重复的手工检查过程将变得痛苦、乏味和耗时。即使在中等大小的数据集上,数据分析师也可能需要检查多达数万个可视化结果,所有这些都是为了检验一个假设,这严重阻碍了数据探索。我们把这个问题定性为可视化搜索以基因组学数据分析为例。
激励的例子。基因组研究人员经常研究基因,例如,基因如何影响临床试验结果,基因的行为如何影响特定的药物。例如,给定一个包含临床试验结果(阳性和阴性)的数据集,研究人员通常希望找到能够直观解释这些结果差异的基因。要做到这一点,目前的工具需要研究人员手工生成数万个散点图——x轴和y轴分别指向一个基因,每个结果都被描述为散点图中的一个点——以确定散点图中是否能清楚地区分出结果。
类似地,研究人员在研究药物对疾病治疗的影响时也会研究基因表达的变化。为了做到这一点,他们经常探索趋势线可视化,一个对应于每个基因,x轴是天数,y轴是表达值。例如,当受到外部因素的影响时,基因可以被诱导(上调),或被抑制(下调),或在一定的时间窗口内同时具有两种模式。基于他们对领域的理解,研究人员首先假设了一个受影响基因应该描述的预期表达变化。然后,他们生成数千个可视化图像,每个基因都有一个,然后手动检查假设的模式。
在天文学、材料科学和公共卫生等许多其他领域,我们已经看到了类似的例子,分析人员手动阅读数千个可视化结果,以搜索每个见解。在大多数这些场景中,常见的主题是手动检查大量生成的可视化,以匹配特定的可视化模式。中所描绘的一样<一个href="https://dl.acm.org/cms/attachment/08092e43-e35a-4b93-995c-a482caf77488/f1.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=684,height=187'); return false;">图1一个>,这个可视化搜索问题有两个挑战。首先,用户很难指定他们感兴趣的可视化的搜索空间,这迫使他们手动生成大量的可视化集合。可视化空间由X轴和Y轴的可能属性、聚合函数和可能的数据子集(用符号Z表示)的数量决定<一个href="https://dl.acm.org/cms/attachment/08092e43-e35a-4b93-995c-a482caf77488/f1.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=684,height=187'); return false;">图1一个一个>).随着数据中属性的大小和数量的增加,该空间呈指数级增长。第二部分处理可视化匹配。给定感兴趣的特定模式,用户通常会对与该模式密切匹配的可视化子集感兴趣。不幸的是,现有的可视化工具不是这样的富有表现力的足以捕获两个组件中的任何一个。
<一个href="https://dl.acm.org/cms/attachment/08092e43-e35a-4b93-995c-a482caf77488/f1.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=684,height=187'); return false;">
图1。可视化搜索问题的两个组成部分。
为了应对这些挑战,我们首次尝试开发了可视化数据探测系统Zenvisage。8一个>,<一个href="#R17">17一个>,<一个href="#R18">18一个>Zenvisage将用户想要的高级规范作为输入,并自动识别相关的可视化。它支持一个交互式界面,允许用户快速搜索简单的模式通过草图。为了表达更复杂的搜索枚举和匹配,Zenvisage支持zql——一种富有表现力的可视化探索语言,它允许用户使用一组核心的基元(例如,比较、过滤、排序)基于可视化模式对可视化集合进行操作。使用ZQL,用户可以使用两行或三行来表示复杂的可视化搜索任务。
虽然Zenvisage是解决可视化搜索问题的有用的第一步,但可视化匹配的潜在挑战仍然没有解决。特别是,Zenvisage使用标准的相似度量(例如,欧氏距离)进行匹配,因此缺乏足够的相似性灵活性支持在所需模式未指定或近似的情况下进行搜索,例如,查找销售额在某个3个月窗口内下降的产品,但不指定时间;查找销售额有许多增加和减少部分的产品,但不指定这些部分出现的时间、大小或宽度。我们注意到,这种模式匹配任务在大多数可视化查询系统中很难表示。
为了支持更灵活的查询需求,我们开发了ShapeSearch,19一个>,<一个href="#R20">20.一个>一种模式搜索系统,支持多种机制来帮助用户表达和搜索所需的视觉模式。ShapeSearch集成了一个表达形状查询代数,由基于形状的原语和操作符组成,用于在趋势线中表达各种各样的模式。我们在与领域专家(包括来自天文学和基因组学的专家)讨论之后开发了这个代数,并研究了收集到的大量模式查询语料库通过机械土耳其人。
年代hapeSearch支持多种规范机制,这些机制在内部转换为形状查询代数表示自然语言界面,以及一个复杂的解析器和翻译器,用于将它们转换成代数。shapessearch还支持草图界面用于更简单的模式和返回与绘制的趋势精确匹配的可视化。为了支持更复杂的需求,系统提供了一个视觉的正则表达式用于发出不能轻松表达的查询的语言通过自然语言或素描随着用户需求和模式复杂性的发展,这三个接口可以同时和交换地使用。
最后,确保交互响应时间特别的ShapeSearch利用了一个模式匹配引擎,它依赖于最小的预处理或索引。直接生成和处理大量可视化集合(其中每个可视化都有数千个值)可能会导致较长的响应时间。相反,ShapeSearch使用perceptually-aware模式评分机制和query-aware优化—帮助删除大量可视化和/或部分可视化,以实现有效和高效的模式匹配。
大纲。本文的其余部分组织如下。我们首先讨论了我们以前在Zenvisage工作的经验,这激励我们开发ShapeSearch,描述了一个简单的交互界面和ZQL(第2节)。然后我们给出了一个ShapeSearch的概述,讨论了它如何解决Zenvisage的限制(第3节)。我们深入到形状代数的细节,使核心的ShapeSearch(第4节)。我们然后描述执行形状查询的高效算法(第5节)。我们讨论我们如何在ShapeSearch中支持自然语言查询(第6节)。最后,我们讨论了未来的方向,以进一步提高Zenvisage和ShapeSearch的可用性和性能(第7节)。
<一个href="#PageTop">回到顶部一个>
<一个name="body-3">
Zenvisage是一个可视化分析系统,它支持使用简单模式进行可视化搜索的交互界面,以及用于更复杂查询的表达性查询语言。我们将简要讨论每一种模式,然后描述用户评估的结果。
<我米g alt="*" src="https://dl.acm.org/images/bullet.gif">2.1.互动搜索界面
图2一个>展示了加载房地产数据集的Zenvisage交互搜索界面。
<一个href="https://dl.acm.org/cms/attachment/f9a4db43-ed75-4d4b-894c-976ed49645a7/f2.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=590,height=340'); return false;">
图2。Zenvisage交互式可视化查询界面。
属性选择。第一步是属性选择(框1)。在这里,用户可以为用户感兴趣的可视化指定所需的x轴属性和y轴属性。在本例中,用户将X轴指定为季度(换句话说,时间),Y轴指定为房地产销售价格。此外,用户指定类别:这是用户操作的候选可视化空间的一个变量索引。在这里,选择的类别是“metro”——表示一个都市区或乡镇。我们把这个类别描述为Z<一个href="https://dl.acm.org/cms/attachment/08092e43-e35a-4b93-995c-a482caf77488/f1.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=684,height=187'); return false;">图1一个一个>.
典型和异常趋势的总结。一旦用户选择了X、Y和类别,Zenvisage就会立即在Box 2中填充跨类别的典型或代表性趋势,以及异常值。在这种情况下,在不同的城市(即类别)中发现了三种典型趋势:一种对应于中部的峰值(巴拿马城),一种对应于逐渐增加的趋势(圣何塞),一种对应于先增加后减少的趋势(雷诺)——大多数其他趋势与这三种趋势中的一种相似。异常值可视化(匹兹堡,皮奥里亚,锡达拉皮兹)有大量看似随机的峰值。
绘图或拖放画布。然后,在Box 3(可编辑的画布)中,用户可以绘制他们正在寻找的形状,或者将显示的可视化内容拖放到画布中。通过这种方式,用户表示他们希望看到从他们绘制或拖动到画布上的形状或模式开始的相似性搜索。用户还可以自由编辑绘制的图案。在这张图中,用户画了一个趋势,是逐渐上升,然后逐渐下降。
相似性搜索结果。一旦用户在Box 3中完成了一个交互,Box 4就会填充与Box 3中趋势最相似的可视化结果(通过改变类别),并按相似度排序。该系统允许用户在三种不同的相似度指标之间进行选择。目前,Zenvisage提供的三个指标是欧几里得距离、DTW和分割。18一个>
总的来说,这个交互式搜索界面满足了简单的模式搜索需求通过素描和拖放,并提供上下文通过代表性和异常模式。但是,当涉及到更复杂的数据探索需求时,它提供的表达能力有限。例如,很难在X和Y属性的广泛范围内搜索可视化(回想一下,在绘制草图之前,我们需要将X和Y轴设置为特定的属性),或者不使用绘图画布就比较两个可视化(例如,找到两个具有相似的多年收入和利润趋势的产品)。此外,不能指定同时搜索多个模式的多步骤查询,例如,查找在欧洲销售趋势上升但在美国销售趋势下降的产品。为了支持这些更复杂的需求,我们引入了第二种模式,称为ZQL (Zenvisage查询语言的缩写),用户可以在第5条中指定它<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>.
<我米g alt="*" src="https://dl.acm.org/images/bullet.gif">2.2.ZQL:可视化查询语言
ZQL是一种高级语言,它允许用户用几行代码指定他们想要的可视化目标,从而自动化手动数据探索过程。用户在级别上进行操作,而不是提供低级数据检索和操作操作可视化集,以及比较、排序、筛选和转换可视化以及属性—最终在X轴或Y轴上可视化,或用于选择要可视化的数据集。
<一个href="https://dl.acm.org/cms/attachment/1eeb928c-b165-4280-b7b5-ea116abed65a/t1.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=758,height=202'); return false;">
表1。一个ZQL查询检索一种状态的可视化,该状态的年销售价格趋势与销售价格persqft趋势最不相似。
表2。一个ZQL查询检索最不相似的CA和NY状态的两种不同可视化(在x和y的不同组合之间)。
一旦我们组合了两个可视化集合(参考通过f1和f2), Process列用于比较、排序和筛选集合之间的可视化。在这个例子中,我们迭代f1和f2中的每个状态的可视化(注意变量z1),并使用函数原语D来比较它们,计算距离,通过D (f1、f2)。然后,argmin是一个排序过滤器原语,它根据距离分数对各州进行排序,并选择分数最低的前1个州。最后,在第3行,我们将所选产品的全年整体销售可视化输出为柱状图。的*在*F3表示这些可视化将输出给用户。
另一个例子是,假设我们想要找到一对X轴和y轴,其中两个特定状态“NY”和“CA”的可视化差异最大。为此,我们编写了中描述的ZQL查询<一个href="https://dl.acm.org/cms/attachment/7d8cf570-c72f-4d6f-a212-3e3948f79a12/t2.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=759,height=173'); return false;">表2一个>.在第一行中,我们获取了状态“NY”的所有可视化结果,这些状态可以通过具有不同的X轴和y轴组合而形成。类似地,在第二行中,我们检索产品“订书机”的所有可能的可视化。在流程列中,我们对可能的X轴和Y轴值对进行迭代,比较f1和f2中对应的可视化结果,最后选择两个产品差异最大的X轴和Y轴值对。在最后两行中,我们输出了这些可视化结果。
总的来说,ZQL可以捕获广泛的可视化探索查询,包括基于特定模式的下钻和过滤。在我们的全文中,我们使用可视化探索代数正式描述了ZQL的表达能力。17一个>
2.3.从Zenvisage外卖
我们从用户研究中得到的发现17一个>并与基因组学、天文学和电池科学等领域的合作者进行案例研究7一个>,<一个href="#R8">8一个>与现有的可视化工具(如Tableau)相比,Zenvisage能够实现更快、更准确的探索,后者需要大量的人工探索才能找到具有特定模式的可视化图形。使用过MATLAB、Python和R的用户表示,ZQL可以更快地初始化数据,而不需要编写大量代码。有SQL经验的人会发现,在比较数据子集时,ZQL要简单得多,冗长得多,而且速度更快。17一个>类似地,我们合作的研究人员已经使用Zenvisage进行了各种研究,包括光曲线的下降是由设备故障引起的(天文学方面),电解质的两种特定物理性质之间的关系独立于第三种物理性质(电池科学方面),以及从最近的一篇论文中复制特征基因表达谱(遗传学方面)。8一个>
虽然Zenvisage为解决人工可视化探索的痛苦问题迈出了有希望的第一步,但可视化搜索的潜在挑战还远未解决。我们发现了两个主要的挑战。其中之一与ZQL的可用性有关。为了利用ZQL,领域专家需要学习一种新的查询语言,这是广泛采用ZQL的主要障碍。具有计算笔记本经验的领域专家经常表示需要在编写代码和使用ZQL抽象之间进行转换。此外,用户不是一步编写查询,而是使用之前的查询作为上下文,以增量的方式构建查询。在第7节,我们讨论这些问题和潜在的解决方案更详细,突出另一个系统LUX9一个>这在一定程度上解决了这些问题。
Zenvisage的第二个挑战是如何匹配可视化。在本文的其余部分,我们专注于这一挑战,并提出了一个新的系统ShapeSearch来解决它。
柔性形状匹配问题。Zenvisage以及其他可视化查询工具2一个>,<一个href="#R10">10一个>,<一个href="#R21">21一个>在如何匹配可视化方面提供有限的灵活性。例如,可视化搜索经常涉及到模式匹配,其中所期望的兴趣模式是不明确的和近似的,例如,寻找价格在一段时间内下降,然后急剧上升的股票,而移动的位置和强度是不确定的,或者当所期望的形状是复杂的,例如,寻找基因表达谱,其中有不确定的峰和谷的数量,然后变平。我们将在下面强调这种模式匹配任务的关键特征。
模糊匹配。领域专家(i)通常搜索的模式是近似和整体形状相比,他们往往对具体细节或局部波动不感兴趣,而且(ii)他们经常不指定甚至知道模式发生的确切位置。例如,生物学家经常寻找基因表达的结构变化,例如,在不同的时间上升和下降(<一个href="https://dl.acm.org/cms/attachment/88bcc44c-bcfd-4e2b-b095-98a7771c1b35/f3.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=723,height=194'); return false;">图3一一个>),表征内部的生物过程,如细胞周期或昼夜节律,或外部的干扰,如药物的影响或疾病的存在。
<一个href="https://dl.acm.org/cms/attachment/88bcc44c-bcfd-4e2b-b095-98a7771c1b35/f3.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=723,height=194'); return false;">
图3。表征现实世界现象的形状。
搜索多个简单模式。我们注意到领域专家经常使用多个简单的组合。通常使用“增加”、“稳定”、“下降”等词来描述每个模式,这些词很容易用自然语言表述,但很难使用现有查询语言来指定。此外,模式匹配任务通常超出了寻找一系列模式的范围,需要任意的组合,例如,分离、连接或量化,并有不同的位置或宽度限制。例如,找到在6个月内至少有两个峰值的股票,例如,所谓的“双/三重顶”模式,表明未来的下跌趋势。5一个>
临时和交互式查询。通常定义基于模式的查询动态在分析期间,根据观察到的其他模式。例如,生物学家经常在一组基因中寻找与最近在另一组基因中发现的模式相似的模式。8一个>同样,天文学家监测恒星随时间变化的光度趋势,以寻找和描述新的行星物体(<一个href="https://dl.acm.org/cms/attachment/88bcc44c-bcfd-4e2b-b095-98a7771c1b35/f3.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=723,height=194'); return false;">图3 c一个>).例如,亮度的下降通常表明有行星物体从恒星和望远镜之间经过。
为了支持这些特性,我们开发了ShapeSearch,下面将介绍。
<一个href="#PageTop">回到顶部一个>
<一个name="body-4">
ShapeSearch为用户提供了强大而灵活的机制,以搜索具有所需形状的趋势线可视化。在本节中,我们首先介绍ShapeSearch的概述以及用户体验。
年代hapeSearch支持一个用于组合形状查询的交互界面。<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>用介绍中讨论的基因组数据查询示例描述此接口。在这里,用户感兴趣的是寻找那些由于药物的影响而被抑制的基因,它们的基因表达以一种特定的形状来描述——首先上升,然后下降,最后再次上升——有三种模式:按顺序上升、下降、上升。要搜索此形状,用户首先加载数据集1一个>通过左边的基于表单的选项(<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>,框1),然后通过设置,选择要探索的可视化空间x-轴作为时间y-轴为表达式值,类别为基因。category属性的每个值都会产生一个给定的候选可视化x−和y设在。因此,category属性定义了我们匹配形状的可视化空间。ShapeSearch支持三种形状规范机制——自然语言、正则表达式(简称regex)和在画布上画草图:
<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">
图4。ShapeSearch接口,由六个组件组成。(1)数据上传、属性选择、过滤约束应用;(2)查询规范:(2a)素描画布;(2b)自然语言查询接口;(2c)正则表达式接口;(3)修正面板;
草图在画布上。通过在画布上画出想要的形状(<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>,框2a),用户可以搜索可视化精确的类似的(使用距离测量,如欧氏距离或动态时间扭曲)。当用户完成草图绘制后,ShapeSearch会在结果面板中输出与绘制草图相似的可视化结果(<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>4),盒子。
自然语言(NL)。对于搜索与模式大致匹配的可视化效果,用户可以使用自然语言。例如,在<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>Box 2b,在上述基因组学示例中所需的形状可以表示为“给我看看那些先上升,然后下降,然后上升的基因。”同样地,分析宇宙学数据的科学家也可以很容易地用它来搜索超新星(明亮的恒星爆炸)"找到发光尖峰的物体。"Siddiqui等人描述过。20.一个>ShapeSearch如何将自然语言查询转换为结构化的内部表示。
正则表达式(regex)。对于涉及到使用自然语言或草图难以表达的复杂模式组合的查询,用户可以发出一个类似正则表达式的查询,直接映射到结构化的内部表示,由ShapeSearch原语和操作组成,在第4节中详细描述。
在探索过程中,用户可以根据查询的复杂性互换选择规范机制。对于NL和regex, ShapeSearch还支持自动完成功能,引导用户进行目标查询。我们使用这个术语用户查询使用任何规范机制引用提交的查询。
年代hapeSearch后端解析并将用户查询转换为ShapeQuery,这是查询的一种结构化的内部表示,由运算符和代数中支持的原语组成(第4节)。后端支持一个歧义解析器,它使用一组规则来自动解析语法和语义歧义,并将解析后的查询转发给用户以进行进一步的更正和验证(<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>验证过的查询最终由执行引擎优化并执行(章节4.3),最匹配ShapeQuery的顶部可视化结果将在结果面板(<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>接下来,我们讨论构成ShapeSearch核心的ShapeQuery代数。
<一个href="#PageTop">回到顶部一个>
<一个name="body-5">
ShapeQueries帮助用最小的原语和操作符集合来表达趋势线上的各种模式。ShapeQuery表示形状作为一个倍数的组合简单的模式。一个简单的模式可以精确地使用特定的位置约束,例如匹配y=x之间的x= 2x= 6,或者模糊,例如,大致递增,其中模式的概念是近似的,它的位置是不确定的。每个简单的图案及其精确或不精确的约束被称为形状段。复杂的形状,例如,上升和下降,是通过使用一个或多个shapesegents组合形成的操作符。可以在序列中搜索多个模式(CONCAT,⊗)或匹配趋势线的相同子区域(AND,),或匹配子区域(or,⊕)的多个模式之一,稍后描述。
举个例子,“从x= 2x= 5,然后下落”可以转换为ShapeQuery[x。S =2, x.e=5, p=up]⊗[p=down]
由⊗操作符分隔的两个ShapeSegments组成。第一个ShapeSegment捕捉到了“从x= 2x= 5”;第二个表达的是“下降”模式。因为第二个必须“跟随”第一个,所以两个ShapeSegments使用CONCAT操作符(用⊗表示)进行组合。我们现在描述构成ShapeQuery代数的形状原语和操作符。<一个href="https://dl.acm.org/cms/attachment/b5e01155-9b34-41a4-9268-4149f3186ab8/t3.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=759,height=549'); return false;">表3一个>列出这些原语和操作符。
<一个href="https://dl.acm.org/cms/attachment/b5e01155-9b34-41a4-9268-4149f3186ab8/t3.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=759,height=549'); return false;">
表3。ShapeQuery中的原语和操作符。
4.1.形状原语和操作符
ShapeSegment使用两个高级原语描述:LOCATION和PATTERN。可以跳过LOCATION值,以便在趋势线的任何地方匹配PATTERN。类似地,用户可以输入精确的趋势线来匹配或ShapeSegments的端点来匹配,而无需指定PATTERN。
指定的位置。LOCATION定义模式匹配的趋势线子区域的端点:开始X/Y坐标(x /廖曜生)
,结束X/Y坐标(x.e / y.e)
.例如,[x。S =2, x.e=10, y.e=10, y.e=100]
是一个简单的形状查询找到趋势线之间的趋势x= 2x= 10类似于(2,10)到(10,100)的线段。用户还可以画草图来找到与草图相似的趋势线,介绍中提到的其他工具也支持这个功能。2一个>,<一个href="#R17">17一个>Shape-Search将用户绘制的草图的像素值转换为X和Y属性的域值,并添加变换后的向量(x,y)值为向量vShapeQuery。
指定模式。PATTERN在趋势线的子区域中定义趋势或语义特征。支持许多常用来表示趋势线的基本语义模式,例如向上,下来,平,或斜率(ϑ)学位。例如,[p =了]
发现增长的趋势线,[p = 45]
发现趋势线,增加的斜率约为45°,和[x。s = 2, x.e = 10, p =)
发现增长的趋势线x= 2到10。最后,可以用p = *
以匹配任何模式和p =空
确保分区域上没有点。
结合模式。ShapeQuery支持三种操作符来组合ShapeSegments:
[p =了]
⊗[p =下来]
我们可以寻找那些先升后降的基因。请注意⊗是最常用的操作之一,我们有时会在ShapeSegments之间省略⊗,例如:[p =了][p =下来)
,使其描述简洁。比较模式。在某些情况下,我们可能想要将ShapeSegment中的模式与前面或后面的ShapeSegments进行比较。为了支持这样的用例,ShapeSearch (i)允许ShapeSegment分别使用$+或$−引用上一个或下一个形状段,并且(ii)使用>,<,或=操作比较当前和引用的形状段之间的模式。例如,天文学家可以发出一个ShapeQuery[p =了]
⊗(p <−美元每分钟)
与x=时间和y=光度(亮度)来搜索最初快速向地球移动,但在某个点之后速度变慢或开始远离地球的天体。(p <−美元每分钟)
确保亮度随时间的斜率小于前一个子区域的斜率[p =了]
.
表达复杂的模式。前面提到的基本原语和操作符非常强大,足以表达更复杂的ShapeSearch用例。例如,用户可能希望找到特定宽度的特定形状,而不考虑它们的起始位置,例如,搜索宽度超过3个月的温度上升最快的城市。为了表达这样的查询,ShapeSearch支持ITERATOR(.),例如:[x。s =, x.e = x。s + 3, p =)
迭代遍历趋势线上的所有点,将每个点设置为起点x的位置,x终点位置设置在前方3个单位。内部,长度趋势线n,此查询可重写为对(n- 3 + 1) ShapeSegments,其中,为我th Shape-Segment,x =我
而且x.e =我+ 3
.
类似地,可以使用量词搜索趋势线,其中一个模式出现特定次数,用问
.例如,[p =, = {1,2}]
可用于搜索趋势线,其中有一个增加的模式至少一次,最多两次。可以使用一个或多个CONCAT操作的OR在内部重写量词。例如,上面的查询被重写为([p = *]
⊗[p =了]
⊗[p = *])
⊕([p = *]
⊗[p =了]
⊗[p = *]
⊗[p =了]
⊗[p = *]
).我们讨论了可以在扩展版本中使用ShapeQuery表示的更复杂的模式。20.一个>
4.2.语义
一个ShapeQuery问在一条趋势线上运作,V我,并返回一个实数,称为分数,取值为−1 ~ +1。它的运作V我在ShapeSegments (年代1,年代2、……年代n)及营办商(O1,O2、……O米).每个ShapeSegment年代我作用于V我p, q的分区域V我从p=x到最后问=x.e并返回一个分数我ε[−1,1]使用我们随后描述的得分函数。使用⊗,,⊕等操作符组合一个或多个ShapeSegments。在形式上,操作员O我将分数作为输入分数1,分数2、……分数n从它的n输入ShapeSegments并输出另一个分数我使用捕获运算符行为的评分函数。
为了提高效率和效果,ShapeSearch用一条直线逼近每个子区域,使用斜率来量化它捕获任何给定的ShapeSegment的紧密程度。中所描绘的一样<一个href="https://dl.acm.org/cms/attachment/9cdc18eb-03b3-4f7f-9f3a-2f43c83159a9/t4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=758,height=482'); return false;">表4一个>, ShapeSearch为每个模式原语使用不同的评分函数,该函数将斜率转换为[−1,1]中的值棕褐色−1函数。例如,For an向上模式中,函数返回斜率从0°到90°的趋势线的分数在[0,1]之间,而小于0°的趋势线的分数为[−1,0](与向上).
<一个href="https://dl.acm.org/cms/attachment/9cdc18eb-03b3-4f7f-9f3a-2f43c83159a9/t4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=758,height=482'); return false;">
表4。模式的分数。
为了执行,ShapeSearch采用整个趋势线、ShapeQuery的抽象树表示(AST)和评分函数列表ScrFunc就像在<一个href="https://dl.acm.org/cms/attachment/9cdc18eb-03b3-4f7f-9f3a-2f43c83159a9/t4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=758,height=482'); return false;">表4一个>而且<一个href="https://dl.acm.org/cms/attachment/160dafdf-acbd-4588-a7fd-6b328712c111/t5.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=757,height=144'); return false;">5一个>作为输入。如果ShapeQuery树的根节点是一个ShapeSegment, ShapeSearch直接计算ShapeSegment在趋势线指定部分的得分。如果根节点是或⊕,ShapeSearch调用每个操作数(即子树)独立计算它们在子区域上的得分,并根据每个操作符的函数结合得分。但是,如果根节点是带有的CONCATk操作数,也就是子子树,ShapeSearch分段l到所有可能的k条件:l1,l2、……lk然后,对于每个分段,调用第i个操作数。最后,输出所有分段的最大分数。
<一个href="https://dl.acm.org/cms/attachment/160dafdf-acbd-4588-a7fd-6b328712c111/t5.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=757,height=144'); return false;">
表5所示。运营商的分数。
4.3.模糊ShapeQueries
ShapeQueries的一个常见子类是模糊ShapeQueries,由至少一个缺少或多个可能值的ShapeSegment组成x或x.e。因此,对于模糊的ShapeQueries,一种幼稚的方法是尝试所有可能的值p而且问,选择得分最高的次区域。随着趋势线上点数的增加,这将变得非常昂贵。对于CONCAT与k穷举方法创建操作数n(k−1)分割,n是趋势线上的点的数量。
动态规划算法。我们观察到,对于CONCAT操作,给定子区域上一个操作数的评分与其他子区域上其他操作数的评分是独立的。20.一个>我们利用这一思想开发了一种更快的动态规划算法(DP),用于在形状段上对CONCAT操作进行评分。正式,让选择(1,t(1:j- 1)的最佳分数对应于最优分割之间的子区域x= 1,x=t第一j1操作数,SC(t+ 1,我,我的分数j之间子区域上的操作数x=t+ 1,x=我。然后,进行最优分割选择(1,我(1:j)j操作数在x= 1,x=我可以使用以下递归计算:
<我米g alt="ueq01.gif" src="https://dl.acm.org/cms/attachment/1903ecdf-2648-49f6-a557-482817a6bc2a/ueq01.gif">
不幸的是,尽管DP算法比穷举方法快了几个数量级,但对于具有大量点的趋势线,即使是一个带有单个CONCAT操作的ShapeQuery也可能很慢,这是因为它的二次元复杂度。接下来,我们讨论优化以进一步减少ShapeSegments上CONCAT操作的运行时间。
模式感知的自底向上方法。基于dpp的最优方法为CONCAT操作中的每个操作数评分所有可能的子区域。我们观察到,更有效的方法可能是选择端点为斜率(或模式)急剧变化的端点。我们首先说明我们的直觉,然后描述一个算法,执行分割模式感知的方式。
的直觉。中所描绘的一样<一个href="https://dl.acm.org/cms/attachment/b8952969-b531-44a3-9ba1-2e05ec83c751/f5.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=395,height=239'); return false;">图5一个>,考虑两个次区域一个在左边B右边是趋势线l说分区域的趋势线一个是倒v型的,也就是说,直到一个点P然后减少。对于所有可能的分段[p =了]
美国的次区域完全位于一个,有以下几种可能性x.e
的[p =了]
: 1)[p =了]
的x.e
点之前P。2)[p =了]
的x.e
点后P。3)[p =了]
的x.e
点是在P。
图5。模式感知的lop选择。
自[p =下来]
遵循[p =了]
,我们可以看到选项1设置[p =了]
的x.e
<P不太可能是最优的,因为这将导致得分的一部分[p =下来]
呈上升趋势。同样的,x.e
>P不是最优的,因为这将导致得分的一部分[p =了]
呈下降趋势。因此,如果我们必须(贪婪地)在子区域中选择一个点一个为[p =了]
的x.e
,P可能是一个更好的选择。我们把这样的点称为本地最佳点(删)。
自底向上算法。基于上述直觉,我们开发了一个更快的算法,使用以下假设来减少分割的数量。
假设4.1(关闭)。方法中的任何子表达式,如果某个点不是局部最优CONCAT运算(即aCONCAT对于操作数的子序列),则不能x
或x.e
的ShapeSegment在最优分割。
也就是说,局部最优性导致全局最优性。由于这个假设,我们提出的算法是近似的。然而,我们的实证结果表明,尽管有这样的假设,该算法的精度非常接近DP,而减少了数量级的时间。
在较高的层次上,该算法首先将趋势线划分为更小的连续子区域。接下来,它在小的子区域上选择局部最优点(LOPs),然后是一个自底向上的合并步骤,使用小的子区域上的LOPs来找到大的子区域上的LOPs。我们将在下面讨论这两个步骤。
选择修剪。一个点PLOP是否位于子表达的子区域年代我如果它是第一个ShapeSegment的x.e或的最后一个ShapeSegment的x.s年代我.例如,在上述例子中,LOP (P在次区域一个是x.e
的价值[p =了]
的最优分割[p =了]
⊗[p =下来]
在一个。由于CONCAT操作与k操作数可以有(k2)子序列,最多可以有2个。k2耷拉在一个。
合并。接下来,我们以自底向上的方式逐步合并节点,以在较大的子区域上选择lop。例如,在<一个href="https://dl.acm.org/cms/attachment/5e30f281-13e1-4320-8a33-af921ee816c1/f6.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=693,height=310'); return false;">图6一个>,节点4表示节点1和节点2的子序列组合形成的子序列,节点5表示节点3和节点4的子序列组合形成的子序列。当子节点中的多个子序列在父节点中产生相同的子序列时,我们选择拼接后得分最高的子序列(即分割最优的子序列),从而修剪掉未被选中子序列对应的LOPs。例如,在节点5上,⊗b
可以从1计算一个
从节点3和b
来自节点4,2)⊗b
从节点3和b
来自节点4和3)一个
从节点3和⊗b
从节点4。在这三个连接中,我们选择得分最高的一个。这个合并过程在每个中间节点重复。最后,在根节点上,我们选择导致整个操作数序列得分最高的点。更多细节可以在ShapeSearch扩展版本中找到。15一个>
基于闭包的假设,我们在ShapeSearch扩展版中进行了证明15一个>合并的过程可以得到最优的分割结果,而自底向上算法可以得到最优的分割结果kCONCAT操作数是最优的,其时间复杂度为O(nk4一个>),即趋势线中点的数量呈线性。
<一个href="#PageTop">回到顶部一个>
<一个name="body-6">
ShapeSearch的一个关键组件是自然语言解析器,它允许用户使用自然语言表达ShapeQueries。我们将简要概述解析过程中涉及的三个关键步骤,并将读者介绍给Siddiqui等人。15一个>为更多的细节。我们使用下面的自然语言短语来说明:“向我展示从2增加到5,然后下降的趋势线。”
步骤1。原语和操作符识别。给定一个自然语言查询,第一步是将单词映射到它们对应的形状原语和操作符。例如,上面的查询被标记为“show (noise) me (noise) the (noise) trendline (noise) that (noise) are (noise)增加(p)从(噪音)2 (x)来(噪音)5(x.e)然后(⊗)减少(p)”。为此,我们学习了一个线性链条件随机场模型(CRF)6一个>然后用我们收集的250个自然语言查询来训练它通过机械土耳其人(描述在Shapesearch扩展版本15一个>),以了解查询特征。对于每个单词,我们使用它的词性(POS)标记以及单词级上下文作为特性。
步骤2。识别模式的价值。对于上面查询中预测的每一个p类型的单词,例如,递增和递减,我们将它们额外映射到ShapeSearch支持的相应语义模式,例如,“递增”被映射到p=up。对于这个映射,ShapeSearch首先使用编辑距离,然后使用wordnet计算指定的单词和支持模式的同义词之间的相似性。选择同义词与指定单词之间相似性最高的语义模式。
步骤3。ShapeQuery的生成和歧义解决。接下来,我们将原语和操作符分组到ShapeQuery中,首先将两个操作符之间的所有原语分组到单个Shape-Segment中。对于示例查询,原语按如下分组:[增加(p =)、2 (x),5(x.e)]然后(⊗)[减少(p =))。在某些情况下,这会导致不正确的基元分组,例如,同一个ShapeSegment中的两个模式。例如,错误的实体标签可能会导致语义模糊,减少(p =)从5(廖曜生)10(y.e)其中x.s和x.e值分别错误地标记为y.s和y.e。ShapeSearch使用基于规则的转换,试图重新排序和更改实体的类型,以获得正确和有意义的ShapeQuery。20.一个>
解析后的ShapeQuery被发送到前端(Box 4 in<一个href="https://dl.acm.org/cms/attachment/17e29dcb-7a63-46a9-94dd-d7bc9c9c827f/f4.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=732,height=456'); return false;">图4一个>),供用户在有需要时编辑或进一步修订。然后执行验证过的查询来生成匹配的趋势线。
<一个href="#PageTop">回到顶部一个>
<一个name="body-7">
我们现在讨论提高Zenvisage和ShapeSearch可用性和性能的开放研究方向。
<我米g alt="*" src="https://dl.acm.org/images/bullet.gif">6.1.搜索枚举+形状匹配
在ShapeSearch中,用户当前需要在发出ShapeQueries之前指定X和Y属性。但是,在某些场景中,用户可能事先不知道X和Y属性,或者希望在不同的属性组合中搜索相同的形状。此外,用户可能希望同时发出一个涉及多个形状的多步骤查询,查找挂牌价格趋势下降但房屋销售价格趋势增加的状态。为了支持这种复杂的数据探索需求,我们设想将ZQL与ShapeQuery集成在一起。一个简单的选项是支持ShapeQuery作为功能原语,作为ZQL中的流程列的一部分。例如,<一个href="https://dl.acm.org/cms/attachment/81a03830-40c8-45b4-a4fb-ce3051f428b7/t6.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=757,height=202'); return false;">表6一个>描述上面示例的一个集成查询,用于查找列表价格趋势减少但销售价格趋势增加的状态。结合ZQL和ShapeQuery还增加了ZQL的表现力和效率——函数原语目前被视为黑盒,因此在Zenvisage中没有进行优化。通过添加对shape - query的支持,Zenvisage可以利用前面讨论的形状匹配算法来高效地处理可视化。
<一个href="https://dl.acm.org/cms/attachment/81a03830-40c8-45b4-a4fb-ce3051f428b7/t6.jpg" onclick="window.open(this.href, '', 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no,width=757,height=202'); return false;">
表6所示。的例子ZQL查询使用ShapeQuery作为Process列中的功能原语。该查询查找的状态是,相对于房屋的趋势,listprice是下降的,但是卖价是上升的。
6.2.数据库内支持模糊匹配
ShapeSearch在关系数据库外部执行形状匹配;因此,随着数据集大小的增加,数据传输和序列化/反序列化开销往往占主导地位,从而导致延迟的增加。另一方面,在关系数据库的行序列中识别模式已经得到了广泛的期望,但只得到少数供应商的支持。例如,Oracle数据库12c支持MATCH recognition11一个>子句用于原生SQL中的模式匹配。时间序列的简单查询语言14一个>是对模式查询的SQL扩展的另一个建议。然而,这些扩展都不支持模糊匹配功能;相反,它们要求用户使用匹配列的值来定义模式(例如,上、下)——这使得规范相当繁琐和冗长。
为了支持模糊形状查询,我们设想开发新的数据库扩展,将ShapeQuery作为SQL查询的一部分,并利用形状匹配算法在数据库内核中高效地执行ShapeQuery。例如,下面的查询描述了在SQL语法中支持ShapeQuery的潜在扩展。
SELECT *
从股票T,
(根据价格上的符号匹配
USING PATTERN [p=*]⊗p=down]⊗[p=up]⊗[p=*] AS评分
按分数排序
限制1)年代
WHERE T.symbol = S.symbol
给定一个表Ticker,上述查询找到一个股票代码(指定通过MATCH BY子句)与列price(指定的)的值上最接近的v形趋势匹配通过子句)并输出相应的元组。
<我米g alt="*" src="https://dl.acm.org/images/bullet.gif">6.3.混合代码和交互
为了加速数据探索,重要的下一步是集成支持的可视化搜索抽象通过ZQL和ShapeQuery与现有的数据科学库,如Pandas。这将允许用户在编写代码(例如,数据清洗和转换)之间无缝切换;得到的建议通过搜索规范和对可视化执行交互—所有这些都集中在一个地方。作为这个方向的一步,LUX9一个>,这是一个最新的Python库,它将部分用户规范与可视化数据分析的最佳实践相结合,为用户推荐了一些有趣的可视化效果,指导用户进行下一步操作。它进一步将可视化显示为小部件原位在Jupyter笔记本中支持更容易的代码转换和交互。“免费”为用户提供这些功能已经在开源中得到了大量采用,下载量超过5万次。4一个>虽然LUX中的规范受到了ZQL的启发,但添加自然语言或基于regex的模式搜索功能(如ShapeQuery所支持的那样)可以进一步增强这些库的功能。
<一个href="#PageTop">回到顶部一个>
<一个name="body-8">
我们的工作借鉴了之前在可视化查询和符号模式挖掘方面的工作。可视化查询工具13一个>,<一个href="#R17">17一个>,<一个href="#R21">21一个>通过将所需形状的草图作为输入,帮助用户搜索具有所需形状的可视化图形。这些工具大多使用欧几里得距离或DTW等度量来进行精确的逐点匹配。一些工具,如TimeSearcher2一个>让用户应用软约束或硬约束x而且y范围值通过框或查询信封,但不支持在位置约束之外指定形状原语的机制。ShapeSearch引入了一种新颖的代数,通过充当各种输入机制的通用“基板”来提高可扩展性,以及一个优化引擎,可以有效地根据大量趋势线集合匹配模式。
符号序列匹配论文通过离线计算将趋势线分成固定长度的块,用描述该块中的模式的符号对每个块进行编码,来解决模式匹配的问题。3.一个>,<一个href="#R12">12一个>,<一个href="#R16">16一个>由于这些工作是在预先分块和标记的趋势线上进行的,所以问题是如何将正则表达式与字符串序列(每个预先标记的趋势线对应一个)进行匹配。这些论文中的大多数只返回一个布尔值,用于判断模式是否匹配字符串序列。此外,由于趋势线是预先标记和索引的,它们不支持动态模式匹配,即相同的趋势线可以根据过滤器或聚合约束改变形状。另一方面,ShapeSearch采用了更在线的查询趋势线排序,不需要预先计算,因此更适合特别的数据探索场景。
<一个href="#PageTop">回到顶部一个>
<一个name="body-9">
在这项工作中,我们描述了ShapeSearch,一个模式匹配系统,补充了我们之前的系统Zenvisage,通过提供表达灵活的机制,领域专家毫不费力和高效地搜索趋势线可视化。我们描述了ShapeQuery代数,它构成了ShapeSearch的核心,并帮助用最小的原语和操作符集合表达大量的模式。该代数由形状匹配引擎支持,该引擎支持动态和可伸缩的模式匹配。总之,与Zenvisage一起,ShapeSearch为新手和专家分析人员提供了一个有希望的第一步,极大地简化和改善了交互式数据探索的过程。
<我米g alt="uf1.jpg" src="https://dl.acm.org/cms/attachment/671de5d3-3c75-4f86-8393-bf54fa9b61f3/uf1.jpg">
数字观看作者对这部作品的独家讨论通信视频。<一个href="//www.eqigeno.com/videos/visual-querying">//www.eqigeno.com/videos/visual-querying一个>
1.布尔特,c.j.,埃皮格,J.T,卡丁,j.a.,理查德森,J.E,布莱克,j.a., M.G.D.集团。小鼠基因组数据库(mgd):小鼠生物学和模型系统。诊断。酸Res 36, suppl_1 (2008), D724-D728。
<一个n一个米e="R2">2.Buono, P., Aris, A., Plaisant, C., Khella, A., Shneiderman, B.时间序列中的交互模式搜索。在可视化和数据分析,2005。第5669卷,国际光学与光子学学会,2005,175 - 187。
<一个n一个米e="R3">3.C.法劳索斯,M.兰加纳桑,Y.马诺洛波洛斯。时间序列数据库中的快速子序列匹配。卷23。ACM, 1994年。
<一个n一个米e="R4">4.<一个href="https://github.com/lux-org/lux">https://github.com/lux-org/lux一个>.
<一个n一个米e="R5">5.Investopedia。<一个href="https://www.investopedia.com/terms/t/tripletop.asp">https://www.investopedia.com/terms/t/tripletop.asp一个>.
<一个n一个米e="R6">6.刘志强,刘志强,刘志强,等。条件随机场:序列数据分割和标记的概率模型。2001.
<一个n一个米e="R7">7.Lee, D., Lee, J., Siddiqui, T., Kim, J., Karahalios, K., Parameswaran, A.通过可视化查询系统加速科学数据探索。arXiv: 1710.00763(2017)。
<一个n一个米e="R8">8.Lee, D., Lee, J., Siddiqui, T., Kim, J., Karahalios, K., Parameswaran, A.你不能总是勾画出你想要的东西:理解视觉查询系统中的意义。IEEE反式。粘度第一版。图(2019)。
<一个n一个米e="R9">9.Lee, D., Tang, D., Agarwal, K., Boonmark, T., Chen, C., Kang, J., Mukhopadhyay, U., Song, J., Yong, M., Hearst, m.a.等。Lux:探索性数据科学的实时可视化建议。arXiv:2105.00121(已被VLDB 2021接受)。
<一个n一个米e="R10">10.Mannino, M., Abouzied, A.用手绘无比例尺草图查询表达时间序列。在2018年CHI计算系统中的人为因素会议论文集ACM(2018), 388。
<一个n一个米e="R11">11.匹配识别。<一个href="https://bit.ly/3bWwUhs">https://bit.ly/3bWwUhs一个>.在线(17 - 8月- 2015年访问)。
<一个n一个米e="R12">12.Psaila, r.a.g., Wimmers, E.L. Mohamed & It。查询历史形状。非常大的数据库。IEEE,苏黎世,瑞士,1995。
<一个n一个米e="R13">13.Ryall, K., Lesh, N., Lanning, T., Leigh, D., Miyashita, H., Makino, S.查询线:视觉浏览的近似查询。在计算系统中人为因素的扩展文摘ACM(2005), 1765 - 1768。
<一个n一个米e="R14">14.在数据库系统中序列查询的表达和优化。ACM tod 29, 2(2004), 282-318。
<一个n一个米e="R15">15.Shapesearch扩展版本。<一个href="https://arxiv.org/abs/1811.07977">https://arxiv.org/abs/1811.07977一个>.
<一个n一个米e="R16">16.大数据序列的近似查询和表示。在数据工程,1996:第十二届国际会议论文集(1996)、IEEE 536 - 545。
<一个n一个米e="R17">17.Siddiqui, T., Kim, A., Lee, J., Karahalios, K., Parameswaran, A., zenvisage轻松的数据探索:一个具有表现力和互动性的视觉分析系统。Proc. VLDB赋值10, 4(2016), 457-468。
<一个n一个米e="R18">18.Siddiqui, T., Lee J., Kim A., Xue E., Yu X., Zou S., Guo, L., Liu C., Wang, C., Karahalios K.等。快进到所需的可视化与zenvisage。在CIDR, 2017年。
<一个n一个米e="R19">19.西迪基,T.,卢,P.,王Z., Karahalios, K., Parameswaran, A. Shapesearch:趋势线可视化的灵活模式查询。Proc. VLDB Endow. 11, 12(2018), 1962-1965。
<一个n一个米e="R20">20.王志刚,陆鹏飞,王志刚,王志刚,王志刚,王志刚,王志刚,王志刚,王志刚。基于形状的趋势线探测系统研究。在2020年ACM SIGMOD数据管理国际会议论文集(2020), 51 - 65。
<一个n一个米e="R21">21.绘制图表来查询时间序列数据库。在计算系统中人为因素的扩展文摘(2001)。ACM, 381 - 382。
要查看随附的技术观点,请访问<一个href="https://doi.acm.org/10.1145/3535336">doi.acm.org/10.1145/3535336一个>
这篇论文的原始版本名为“从素描到自然语言:加速洞察的表现力视觉查询”,发表在ACM SIGMOD记录50, 1(2021年3月),51-58。
©2022 0001 - 0782/22/7 ACM
如果您不是为了盈利或商业利益而制作或分发本作品的部分或全部,并在第一页注明本通知和完整引用,则允许您免费制作本作品的部分或全部数字或纸质副本,供个人或课堂使用。本作品的组成部分必须由ACM以外的其他人享有版权。信用文摘是允许的。以其他方式复制、重新发布、在服务器上发布或重新分发到列表,需要事先获得特定的许可和/或费用。请求发布的权限<一个href="mailto:permissions@acm.org">permissions@acm.org一个>或传真(212)869-0481。
数字图书馆是由计算机协会出版的。版权所有©2022 ACM股份有限公司
没有发现记录