Podium:用混合驱动的可视分析对数据排序(Podium: Ranking Data Using Mixed-Initiative Visual Analytics)

对数据进行排序是数据分析中基础的操作之一。人们使用排序来理解大数据集中最重要的元素、根据数据属性进行决策、或者给原本没有排名的数据增加排名以表达某种含义。例如,人们会按照统计数据给球队排名,会根据电影的特性或者票房给电影排序等等。人们也会将一些排名和自己的认识进行对比,例如球队的粉丝可能希望理解专家发布的排名是基于什么样的准则。

排序模型可以对大量数据项进行排名。一些系统允许用户调整不同属性的权值来调整排序模型,观察不同权值设置的变化。但是,当用户希望特定数据点拥有特定顺序时,需要花费很大的力气进行权值向量的微调。而且这样的系统假设用户对数据属性的重要程度有很清楚的认识,而不了解数据项,而实际上用户可能对数据项的整体认识更深入,对数据项有主观偏好,能给出一些数据项的前后关系。

因此,该论文从与以往的数据排序工作相反的角度进行研究,提出了原型系统Podium,通过输入用户对数据项的排序,反推出权值向量。这样,一方面可以让用户理解自己进行主观排名所看重的属性;另一方面,对于一些标准下的排名,用户可以发现重要属性,从而预测各对象未来的排名。

Podium用户界面

图1. Podium系统界面图

Podium分为右侧的表格视图和左侧的控制面板。

表格视图

表格视图中,行代表数据项,列代表数据属性。最左侧三栏分别是数据项在整个数据集的分数的排名,在用户交互选取的子集中的排名以及分数,而不是原始表格的数据。其中,以矩形的宽度映射分数,其它两个属性则以文本形式映射。

表格的其它列对应原始数据,每一个单元对应数据项的属性值,用户可以选择附加一层矩形,其宽度映射属性值。用户还可以选择附加竖直的细矩形,x轴位置映射该属性对分数的贡献度。对第i个数据的第j个属性,贡献度值为|wi * dij| / max{|wi’ * di’j|}。

用户可以拖拽一个数据项到不同的位置,如果排名提前,则第三列映射分数的矩形变为绿色;如果排名推后,则变为红色;以透明度映射排名改变的大小,颜色越深,代表排名改变越多。用户还可以点击数据行,标记出此行。用户拖拽或标记的行将作为排序模型训练的输入数据。

图2. 用户拖拽的数据项,绿色代表排名提前,红色代表排名推后。

控制面板

控制面板分为3个部分:顶部、中部、底部。

图3. Podium控制面板

顶部的三个开关分别代表是否用颜色映射数据项的移动,是否在表格单元中附加代表数值的矩形和是否在表格中增加映射属性贡献度的竖直细矩形。

中部是额外的视图,有两个标签页:属性和Minimap。

  • 在属性标签页中,每个属性的权值以柱形的宽度编码,绿色为正值,红色为负值。用户可以对权重进行调整,也可以点击最左侧的横线,变为向上或向下箭头,要求训练排序模型的过程中增加或减少某一属性的权值。
  • 在Minimap属性标签页中,每个数据项的分数对应一个水平的柱形,宽度对应大小,颜色编码和表格视图中的编码一致,可以使用户很容易地发现分数分布的趋势和异常点。

图4. Podium控制面板的Minimap标签页

底部是控制模型的按钮。”计算权值”的按钮以用户交互选取的数据项子集和要求增加或减少权值的属性为输入,训练排序模型;“排序”按钮将排序模型应用于数据全集;”X“按钮使排序模型回退至上一状态。

Podium权值模型

RankingSVM

Podium采用Ranking SVM,学习用户排序的模型。具体地,对于用户确定进行排序的数据子集{d1,d2,…,dk},不相同的数据项两两组成一对。对数据项di和dj,取x=di-dj,如果di排在dj之前,则y=1,否则y=-1,以(x, y)和(-x, -y)为di和dj数据对对应的训练数据。同时,对用户要求增加权值的属性,取x=[0,…,0,1,0,…,0],训练数据为(-x, -1);对减少属性的权值,取训练数据为(-x, 1)。该论文中的原型系统只支持对数值型的数据进行训练。

对训练数据,使用软间隔的SVM训练出分类超平面,得到属性的权值的向量。

对数据进行排序

对每个数据项,计算它的分数为权值向量与数据项的点积。以分数高低进行排序。

用户反馈和讨论

Podium的作者收集了4位可视化专家的反馈,对目前的原型系统进行了讨论

用户界面

Podium对用户选取的数据子集训练排序模型,而与未选取的数据无关,但是交互时是在数据全集上进行拖拽或标记,因此,一种替代形式为设置额外的排序过程,只显示进行训练的数据子集;

Podium训练的模型的效果,可能和用户期待的不一致,如何解释模型结果,增进用户对模型的信任,对自己的认知进行反思,是需要进行解决的问题。

排序模型

需要对用户拖拽行为的含义进行探究,如,当用户拖拽一个数据项时,是否意味着他们认为该数据项排名高于它之后的数据项,低于它之前的数据项;

一些其它的训练排序模型的方法需要进行测试和比较;

系统需要评估模型的质量,例如,如果用户选取的数据项较少,则有可能造成模型的欠拟合。

总结

这篇论文提出,用户通过自己对多属性数据项的整体认识,排序数据子集,系统对子集的排序,训练出反映用户主观偏好的排序模型。

参考文献

[1] E. Wall, S. Das, R. Chawla, B. Kalidindi, E. T. Brown, A. Endert. “Podium: Ranking Data Using Mixed-Initiative Visual Analytics”, IEEE Transactions on Visualization and Computer Graphics, 24(1): 288-297.

发表评论?

0 条评论。

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>