Press "Enter" to skip to content

知识图谱的器与用(一):百万级知识图谱实时可视化引擎

目录:

 

一、什幺是可视化?

 

二、知识图谱可视化

 

三、 知识图谱可视化案例:Palantir

 

四、 当前知识图谱可视化的难点和挑战

 

五、 DataExa-Kali : 百万级知识图谱实时可视化 引擎

 

一、 什幺是可视化?

 

在计算机学科的分类中,利用人眼的感知能力对数据进行交互的可视表达以增强认知的技术,称为可视化。

 

它将大量的数据、信息和知识转化为一种人类的视觉形式(图形、符号、颜色、纹理等),直观、形象地表现、解释、分析、模拟、发现或揭示隐藏在数据内部的特征和规律,提高人类对事物的观察、记忆和理解能力及整体概念的形成。广义上的数据可视化包括科学可视化、信息可视化和知识可视化:

 

(1) 科学可视化是最早被提出的,其主要研究如何从三维数据体中提取有用的信息并且显示出,如建筑学、气象学、医学或生物学的各种系统,强调的是体积,表面,照明源的真实渲染。目的是以图形方式说明科学数据,使科学家能够从中理解,说明和收集洞察力。

 

(2) 信息可视化研究的是抽象的、非结构化数据的交互式视觉表示,我们熟悉的柱状图、趋势图、流程图、树状图等都属于信息可视化。其与与科学可视化的不同在于,科学可视化处理的数据具有天然几何结构(如磁感线、流体分布等),信息可视化处理的数据具有抽象数据结构(如文本、图表、软件、复杂系统等)。

 

(3)知识可视化 是在科学可视化和信息可视化基础上发展起来的新兴研究领域,指对于数据和知识进行可视化方式的展示,包括图标可视化、散点可视化、图谱可视化、地图可视化等。除了传达事实信息之外,知识可视化的目标还在于传输人类的知识,并帮助他人正确地重构、记忆和应用知识。

 

二、知 识图谱可视化

 

知识图谱是一种基于图的数据结构,它将各类信息、数据和链接关系聚合为知识, 是大数据环境下知识的有效组织方法。

 

引入人类的知识是人工智能的重要研究方向之一,知识图谱作为一种结构化的人类知识,同时受到了学术界和工业界人士的极大关注。

 

 

在2019 年 8 月 6 日 Gartner 发布《2019 新兴技术成熟度》中,我们可以看到Knowledge Graph与Graph Anlytics。处于创新触发期与期望膨胀期交界处的知识图谱,毫无疑问是当今最火的技术之一。

 

在过去几十年间, 国内外的研究者在知识图谱可视化方面做了大量的研究工作, 大体可以分为以下3个方面:

 

(1)知识图谱的可视表达: 知识图谱的概念由Google公司于2012年提出, 在之前, 就已经存在大量可视化方法, 主要关注知识图谱中不同类型信息的可视表达设计,按照可视化布局与视觉编码方式可将知识图谱可视化表达归类空间填充、节点链接图、热图、邻接矩阵、热图、缩进列表和欧拉图表等。

 

(2) 大规模知识图谱的可视化方法: 2018 年, Gómez-Romero 等针对大规模知识图谱的可视化及可视分析问题,将过程分为了5个阶段: 数据检索、图构建、度量计算、布局和渲染。

 

 

异质网络可视化及分析一般步骤

 

(3)知识图谱的可视分析方法: 孤立、静态的可视化图表无法满足日益复杂的数据分析需求。针对不同的分析任务, 国内外研究者提出了多种基于查询、过滤、多视图联动等交互环境下的可视分析方法。知识图谱可视分析任务总结为: 知识推理可视分析、知识补全/去噪可视分析、异常检测可视分析三大类。

 

三、可视化案例:Palantir

 

在图可视化与图分析分析领域,国内外已经有不少商业化产品。我们以在分析领域着称的Palantir在军事国防领域的知识图谱可视化为例,来说明复杂的关系网络可视化分析。

 

Palantir是硅谷最神秘的大数据独角兽企业,最初服务于FBI、CIA等政府机构,而后向金融机构延伸。

 

Palantir研发的大数据平台产品实际上是一种人和机器高效结合的数据分析平台,通过图(graphs)、地图(maps)、统计(statistics)、集合(set theory)等来分析结构或非结构化数据。

 

在军事国防领域,可视化的核心目标是将多个军事情报领域的海量数据进行融合和关联分析,转化为可操作的决策指挥能力。其中,多领域海量数据的集成和融合是关键问题,包括非结构化和结构化数据流,如链接图,电子表格,电话,文档,网络数据,传感器数据,甚至动态视频、图像等。

 

Palantir将多方孤立的数据源无缝整合同步和进行分析模型协同(包括各类数据模型、安全模型和本体对象的管理),其全量数据分析和知识管理能跟踪每一个数据和模型的读,写和编辑、保存,以积累战场空间的决策知识。基于通用的大数据融合和可视化分析平台,使指挥人员和调度人员能在单一系统内解决所有问题:包括敌人的活动情报分析(情报报告,事件行为等),关联分析(背景、关联、跟踪、反应等)和预判决策等。

美国国防部的联席分析功能界面,对其舰船、飞机、情报文本和相关战场环境资源做了融合和关联,在统一视图里面进行管控,技术实现上把上述资源映射为各类事件、实体、对象及其关系。

阿富汗战场的融合分析功能界面,对各个区域的各类事件(武装袭击、爆炸、绑架等)进行了大规模关联分析,通过大规模数据可视化钻取和查询,可以找出事件之间的因果关系链。

 

四、难点和挑战

 

由于知识图谱的规模日益扩大, 一体化可视布局整个图谱变得困难。同时,知识图谱存在多层次结构和链接关系复杂的特征, 如何利用可视化,表达知识图谱中的语义关系、网络结构, 以良好的布局帮助用户快速探索和分析知识图谱中的数据,成为大规模知识图谱可视化的难点和挑战。

 

难点一:渲染大量的节点和边

 

举个例子,我们知道播放一个1080P的电影就足以使很多性能一般的电脑卡顿,卡顿的原因是画面复杂,像素点多。1080*1920=2073600 也就2百来万的像素, 换句话说,如果数量增加到200万个节点,画面就满屏了。以上说的只是像素点,实际上知识图谱的节点是个圈,且画面上还有边, 复杂量级更高。

 

随着知识图谱规模的迅速增长,在有限空间显示器上可视化整个知识图谱或大量信息变得困难,容易造成视觉混乱使用户无法快速聚焦有用信息,而且大规模图的绘制效率较低,影响人机交互流畅性。

 

除了画面像素外,海量渲染的复杂性还体现在存储和表示方面。一个节点表示如果我们需要几个Byte, 加上边和相关的属性就会把数据撑爆掉, 如果对数据接口有设计经验的工程师就会知道, 一个十几万条记录的json数据也是能把浏览器给炸掉的。

 

除此之外,海量的节点除了像素和存储尺寸的问题外还有事件绑定、位置计算、交互拾取更新等复杂问题。

 

难点二:快速且优美的布局海量节点

 

还是以屏幕举例: 如果一个节点用6*6这幺小的尺寸来说,1080*1920的屏幕铺满能摆57600个节点,若有10万个节点加上点边那必然是麻团的样子。

 

在这一问题上,通常使用节点链接图并结合经典力导向布局算法或弹性布局算法对知识图谱进行可视化。弹性布局算法能够拉近彼此语义相近的节点,对于较小量的图谱来说能够解决, 但面对复杂的海量节点, 节点和链接的绝对数量使得传统方法可视化布局视觉混乱,且布局计算异常耗时。

 

难点三:富客户端带来的前端计算性能压力

 

富客户端的优点是具备丰富的用户界面和智能的数据模型,但受IE运行方式限制,对用户硬件或系统要求高。

 

一是大规模可视化渲染时的数据量极大,当对数据进行筛选过滤加工时,如果不注重内存使用的变量类型、变量回收等,会使内存暴增乃至浏览器内容溢出。

 

二是大规模可视化渲染时,每一帧画面的计算量都极大,极度依赖CPU,CPU的使用率极高时,会使浏览器进入假死状态,导致操作不流畅或者程序崩溃。另外引入WebGL时,利用擅长图形处理的GPU进行图形计算,大规模可视化渲染时,高使用率的GPU会使浏览器无响应。

 

难点四:数据的筛选过滤、定位拾取与组合等交互处理

 

在一堆海量数据的图谱里,并非所有信息都对用户有用,信息过多会让用户感到困惑, 信息少会导致分析不出有用的结果,所以,在显示网络信息和设计用户交互时平衡复杂性与表达很重要。

 

知识图谱本质上是异质网络的一种,相比同质网络, 异质网络包含更丰富的结构信息和语义信息, 这也就决定了异质网络可视分析更关注分析过程中对节点和链路上语义信息的理解, 用户更希望通过检索, 多视图联动等交互手段, 更准确、直观地展示用户所需的知识。可视化分析系统需要经过精巧的算法、高效的筛选、精准的定位,配合以舒适的操作体验才能使用户便捷地得到需要的目标数据。

 

五、DataExa-Kali

 

DataExa-Kali是渊亭自主研发的知识图谱实时可视化引擎,是渊亭科技知识图谱(DataExa-Sati)产品的基础组成。

 

相比Palantir Gotham的可视化引擎,DataExa-Kali具备以下优势:

 

(1)更实用 : Gotham是C/S架构,C/S架构分发部署相对繁琐,同时对客户端有不少限制和要求,在团队协作上也比较麻烦。DataExa-Kali引擎是B/S架构,客户端软件主要是浏览器,只要是符合规范的浏览器皆可以正常运行引擎,兼容性、适配性、跨平台性强;

 

(2)更高效:DataExa-Kali具备丰富的交互操作,路径分析、群体分析、统计分析、中心度分析、关系分析等大类里包含了400余项可视化操作,挖掘数据价值的能力大大加强;

(3)更美观:

(4)性能更强:Gotham只能渲染数千节点,而DataExa-Kali引擎在上万级数量的节点渲染下还能保证帧率稳定不掉帧不卡顿,动画也流畅;

 

(5)超强的适配性:DataExa-Kali引擎拥有大量的场景引擎,除了Gotham有的平面地图,组织架构,时序分析外,DataExa-Kali还包括三维地图、模拟仿真、兵棋棋盘、金融走势等。

 

针对大规模节点的渲染,DataExa-Kali设计充分压榨了浏览器的渲染性能,使其渲染效果达到最佳状态,渲染过程中流畅、不卡顿、不掉帧,画质细腻。对节点的操作过程中,动画流畅,帧率稳定,在百万级节点上仍然高效渲染。

 

 

 

【渲染效果图】

 

布局处理上,DataExa-Kali具备易用性、可解释性的多种布局算法,能够适应不同的布局需求。其中有机布局算法解决了海量数据快速布局的问题,同时保证了节点排布合理,通过平滑动画技术使得动画过渡完美,运动流畅。DataExa-Kali内置的拾取算法和状态管理,使得对图数据的操作和对节点的拾取十分容易,快速检索、过滤,精准拾取。还有配套的功能强大的拓展菜单和面板,使用户可以轻松的进行下一步工作。

 

DataExa-Kali核心技术及组件:

 

微观粒子系统

 

粒子系统表示三维计算机图形学中模拟一些特定的模糊现象的技术,而这些现象用其它传统的渲染技术难以实现真实感的物理运动规律。典型的粒子系统更新循环可以划分为两个不同的阶段:参数更新/模拟阶段以及渲染阶段。每个循环执行每一帧动画。

 

在对于WebGL的使用上,通常是通过Three.js、Babylonjs提供的API来驱动。为了图形的渲染效果更好,DataExa-Kali引擎在常规的粒子系统上引入了:

 

1、GLSL(OpenGL着色语言),为了更加细粒度控制几何体的顶点以绘制出3D表面网格和控制像素的颜色;

 

2、SDF(Signed-distance-field:有向距离场),空间检测,用于渲染字体,碰撞检测等。

 

GPU加速

 

GPU从设计之初,得益于其特殊的架构,使其一般执行并行计算的任务。GPU不同于CPU,它使用了大量的执行单元,任务可以细化成小计算来分配到执行单元,并可以轻松的加载并行处理,然而CPU那样的单线程处理不能满足并行需要。运用GPU强大的并行能力可以为我们的科学计算的速度带来显着提高。

 

DataExa-Kali利用GPU加速了2D/3D渲染和数据编码解码及传输,以后者为例,引擎使用了流式和渐进式方法,可以隐藏延迟并改善交互性,从而改善用户体验,同时解码完全在GPU上执行。这不仅可以通过减少客户端上的解码时间来提高性能,而且仅需要更少的CPU-GPU带宽。

 

微观粒子系统多线程Worker

 

多线程Worker创造多线程环境,允许主线程创建Worker线程,将一些任务分配给后者运行。在主线程运行的同时,Worker线程在后台运行,两者互不干扰。等到Worker 线程完成计算任务,再把结果返回给主线程。这样的好处是,一些计算密集型或高延迟的任务,被Worker线程负担了,主线程(通常负责 UI 交互)就会很流畅,不会被阻塞或拖慢。

 

多线程Worker和主线程之间提供二进制通道加速信息共享, 多线程 Worker是一个非常好的计算优化手段, 通过这一技术方法能很大程度提高浏览器的并行计算效率。Worker线程一旦新建成功,就会始终运行,不会被主线程上的活动打断, 有利于随时响应主线程的通信。

 

DataExa Worker布局算法开辟了独立的线程, 并采用了二进制共享通道,高效布局算法减少了对象拆装箱,大大的提升了布局性能, 同时也在多耗时的情况下不打断用户的操作。

 

常规图谱可视化组件

 

DataExa-Kali引擎内置400余项可视化交互操作,以群体分析为例,我们可以进行标签传播、强连通分量操作。

 

组织架构插件

 

组织架构通常用于分析军事组织,反动组织等。

 

平面地图插件

 

平面地图可以用添加插件的方式,载入不同底图平台的底图,如百度地图、高德地图、腾讯地图。

 

三维地图插件

 

三维地图插件用于表示三维地理信息,常用于军事地理空间分析。

 

兵棋推演插件

 

模拟战场环境进行战略、战术仿真演练,对战场环境下各类资源和事件总体态势进行分析,帮助实现作战打击链的全局决策支持。

 

VR插件

 

利用WebVR和WebGL,把图形可视化如VR般,在浏览器里虚拟化。

 

科技在发展,技术在革新,随着5G、WebVR的逐步普及,知识图谱可视化技术也将有新的发展。

 

比如当前4G网络应用在WebVR上会带来大约70ms的时延,这个时延会导致体验者存在眩晕感,而5G数据传输的延迟可达到毫秒级,可以有效解决数据时延带来的眩晕感,有助于WebVR的大规模应用。同时 WebVR技术将带来 3D 图谱的可视化需求,让用户对海量数据身临其境、触手可及。

Be First to Comment

发表评论

电子邮件地址不会被公开。 必填项已用*标注