渐进式的视觉时序查询设计 (Supporting Iterative Cohort Construction with Visual Temporal Queries)

在许多领域如医学、社会科学以及商业分析领域中,群体指的是一群具有相似特征的对象。在这些领域中,有大量的针对群体的研究。例如,在医学领域,有大量的电子医疗记录,领域专家们常常需要找到满足一定医疗记录的群体,从而进行发病特征或疾病预测等分析。然而,从大量的个体中,要查询获得满足一定时序条件的群体并不直接。使用传统的查询语言来描述时序关系不仅繁琐、易错。同时,由于此类系统不能动态地返回查询结果,按照这种方式查询的结果常常要么过大、要么过小,不能灵活地帮助领域专家对查询条件进行调整。本文作者旨在提出一种直观的渐进式视觉查询设计,通过自然的交互方式以及动态的查询结果反馈机制,更好地帮助领域专家查询符合时序条件的群簇[1]。

他们设计核心理念有二:一是设计便捷,让用户不需要通过过多的学习,就能使用;二是助于数据探索,不仅是设置查询条件,还需要在查询的过程中动态反馈,支持用户调整条件。

在查询设计中的主界面如下图所示,通过节点-有向边的方式来表达。从左向右,节点表示一定的查询条件。最左端的节点表示原始的全数据,最右端的节点表示查询出的数据结果。节点的大小表示符合到当前节点之前所有条件的数据数量。节点颜色表示不同的查询条件类别,在医学领域,有病症、治疗方案等。节点之间的边表示时序关系。而用户可以在边上设置时序的绝对关系,例如小于5天。

query

在这个基础上,提供流畅、自然的交互完成查询条件的创建、改变、删除等操作。如下图。通过拖拽的操作完成条件的创建(d),在拖拽的过程中,前后影响的节点的视觉特征变化(斜线阴影)以提示查询正在进行。另外,通过将一个条件拖入另一个条件节点完成集合交操作,通过将具有两个条件的节点中拖出一个条件完成集合并操作等。

interaction

此外,除了通过节点-有向边的主要设计外,还提供了其他可视化部件丰富查询。比如,在界面下部的树图,不仅仅是表现当前所查询群簇在各类中的层次分布,用户更可以通过直接将树图中的一个节点片拖入主查询面板,新建成一个查询节点。相同的,在右侧的柱状图等可视化,除了显示群簇的各属性分布外,也都可以被拖入主查询面板。

本文作者同时介绍了时序查询的加速技术。首先,由于采用渐进式的查询条件设置,因此在执行查询时也是逐步的。因此不容易存在对全数据范围的查询。同时,用户不需要等待当前查询结果,而可以不断地设置条件,并且最新更新的查询条件会被最新执行。再者,利用最近近期最少使用的缓存来提高命中率。

本文虽主要以医学领域为阐释背景,但他们的形式不仅是应用到医学的研究领域,而是能够被广泛地应用到其他涉及有关满足时序数据的群簇的查询中。例如下图所示,社会媒体的分析学家使用他们的工具在Foursquare上用户的签到数据中挖掘出了两个群体的人。其中一群体是先去咖啡馆,再去市场再去鸡尾酒吧,而另一群体是先去咖啡馆,再去快餐店再去酒吧。将此两类人作为对象进行后继的分析。

case

 

[1] Josua Krause, Adam Perer, Harry Stavropoulos. Supporting Iterative Cohort Construction with Visual Temporal Queries. IEEE Transactions on Visualization and Computer Graphics (VAST’15), To Appear.

评论关闭。