《图可视化有点意思-十吾》演讲视频 + 文字版

简介: 《图可视化有点意思-十吾》演讲视频 + 文字版
编者按:本文是蚂蚁集团 AntV 工程师十吾在 SEE Conf 2022 的演讲内容,文中包括演讲视频以及演讲文字内容,欢迎享用。

大家好,我是来自蚂蚁集团 AntV 的工程师十吾。今天将通过我在图可视化社区混迹若干年,学习和总结到的一个小故事,来逐步介绍图可视化的应用。首先,我将使用图可视分析技术,抽丝剥茧地来分析一个虚构的小故事。然后,总结这个小故事以及我平时的图可视分析项目经历得到图可视分析的一般过程。最后,将回顾图的行业现状和场景。


首先,什么是图(Graph)呢?

这里所说的图不是指中文字面意思上的图画、图像等,也不是指在视觉上看到这种点和边的呈现形式。在离散数学当中,Graph 指的是一种数据结构:实体和关系的集合。通常使用这个表达式描述:G = { V: [v1, v2, …], E: [e1, e2, …] }。其中,V是实体集合;E是实体之间关系的集合。而我们常常看到的点和线的呈现形式,是一种经典的图可视化形式。图可视化是把这种错综复杂的图数据,使用图形化的手段直观地表达在二维平面中,让人们能够便捷地获取数据中洞察的手段。


案例分析

来看这样一个虚构的电信诈骗小故事:65 岁的吴大爷被骗了。根据他所提供的相关信息以及有关部门的调查结果,我们得到了与他相关的几个方面的关系数据,包括他的家庭主要成员、账户最近转账记录、社交媒体最近联络人、以及他所参与的两个老年活动社团。使用这份数据,我们希望通过图可视分析的手段发现风险、保护潜在受害人。

image.png

吴大爷说,棋牌社的小张告诉他,有一个投资的渠道可以得到双倍的回报。吴大爷心动了,他找小张尝试投资了 100 元,果然得到了 200 元的回报。于是吴大爷就想投入更大的金额。小张称后续投资需自行联系网友1。吴大爷通过社交媒体联系到网友1,转账 1 万元后,却再联系不上网友1了。他意识到自己很有可能骗了,于是进行了报案。此时,这份数据上数据已经有了一些线索:小张、吴大爷、网友1,这三个是我们关注的节点,也就是种子节点。除了已知的种子节点外,可利用分析手段发现更多种子节点,帮助用户启发对数据的理解。下面有两个分析方法的例子。下图中左边是数据属性的标注,吴大爷所在的小城市里,老年人每月一般不会有太大的收入和支出。我们就把所有的账户节点中,月支出金额大于 2 万的标注为绿色,把月收支总额大于 10 万元的标记为红色。我们看到被标记为红色的节点是商家节点,符合我们的预期。但有一些个人节点,比如说吴大爷、小张、刘大妈、郭大爷,他们的支出金额比较高,这些节点很可能需要我们继续关注。他们也许正在被骗,或者是有其他潜在的风险。下图中右边是节点重要性分析。使用算法计算每个节点在网络中的重要程度,并把重要程度映射到节点大小上。可以发现在这个网络中,除了吴大爷和小张外,还有其他比较大节点,即比较重要的节点。很可能和犯罪诈骗团伙有一定关系,需要继续关注。有了若干个种子节点之后,一般需要对它们进行扩散,即寻找更多相似的种子节点。左图展示了“拥有共同邻居的节点发现”方法,找到与吴大爷拥有共同邻居小张的其他人。这些人可能也有被骗的风险,他们也许正在被骗,也有可能将要被骗。根据这一信息,我们可以进行定点定向的提示和宣传。下图中右边展示了节点相似性算法。我们知道,骗子挑选被骗对象可能存在一定规律。例如和吴大爷在年龄范围、职业、家庭关系、收入情况、爱好等各方面比较相似的节点,很有可能是骗子下一步诈骗的对象。我们可以在更大的数据集当中使用这一方法这一高危人群,对他们进行定点宣传。图的关系结构,使它区别于统计型数据,这也是图更复杂的一大原因。而复杂的关系结构,也能带给我们更多的信息。现在,我们来看如何分析图的结构。已知吴大爷先给小张转账了 100 元;小张回报 200 元;然后吴大爷给王友1转账 1 万元。这几条边我们可以很快地在图上找到,同时也很容易发现这个链路存在闭环,即网友1给小张转账 1600 元。以上几个转账关系,很有可能描述了该诈骗团伙的惯用套路:派出一个线下人员潜入老年活动社团,引诱老年人上钩之后,再介绍给线上的同伙,线上同伙再给以线下人员小金额回报。

上述模式可以抽取成三个节点形成的环路,且环路上还存在平行边。使用该模式在原图上进行模式匹配算法计算,得到了一个相似的结构与刘大妈相关,即可猜测刘大妈很有可能也已经被骗了。当然,在这个虚构的案例中,数据量小且结构清晰,似乎不需要用什么复杂的模式匹配算法,也能用肉眼发现这个相似风险。但如果在下图这样更大、更复杂的数据集上,你是否就很难快速的找到这些我们想要关注的结构了呢?使用模式匹配分析方法,可以快速帮助用户在复杂的数据中找到他感兴趣的图模式结构。通过可视化,我们可以结合机器智能和人脑智能,让用户在此基础上,深入分析和验证这些结构中的各个节点,确定他们是否真正存在风险。结构模式并不是唯一的。在各个场景、各个需求下,不同结构模式可以用于精确表达。例如:


  • 在社交网络中,若有 5 个节点形成的全连接图,可以代表这五个人存在非常紧密的关联,可能是一个小社团;
  • 在代码依赖关系图上,可以使用若干个节点形成的环路表达循环依赖的关系。在大规模的代码结构图中,使用这种循环依赖的模式可以快速找到循环依赖风险;
  • 模式也可以用来描述一个商品。如显卡、内存、CPU 组成的结构可以描述一个机器型号;
  • 在投资理财中,模式可帮助用户找到他们感兴趣的投资板块,进行基金推荐。一个用户购买了多支属于同一版块的基金,可能说明了他对该板块有强烈的投资兴趣;
  • 在我的生活当中,我也发现了一个有意思的模式。还房贷时,还款金额先要来自公积金的账户,汇入到主贷人和副贷人卡上,副贷人需要汇入主贷人卡上后,由主贷人分别进行商业贷款和公积金贷款还款。这一模式每个月都会重复出现在我的生活中。

不同场景、需求,可能产生不一样的关键图模式。模式中的节点和边也可以配置业务语义的属性条件。所以我们说图模式是不可枚举的。在分析图模式时,一般建议用户结合领域专家经验,边探索边沉淀的方式去绘制一个自己场景所需的模式。再在数据上进行模式匹配计算,找到关心部分,即子结构、子图。图结构还有什么分析方式呢?社区分析可用于分析吴大爷的人际关系网络情况。下图数据结合了吴大爷他所在的社团以及他线上的社交媒体的各个人员,进行人际网络扩张得到的更大的交际网络。节点和边的颜色映射了不同人员扩展出的数据,即节点和边颜色代表来数据的来源渠道。使用一个经典的社区划分算法:LOUVAIN,该图被划分成了几个社区(使用轮廓标记)。可以发现,来自相同渠道的节点很有可能在结构上与其他社区更接近。例如,右侧这个蓝色节点其实与黄色节点在图结构上更相近,于是被划分到了黄色节点所在的社区中。该数据上还有很多类似情况,也值得继续关注。社区划分方法可以帮助用户了解吴大爷人际交际网络的人员组成和划分的情况,以便分片分区进行深入分析。

故事讲完了,回顾来看:通过一些图可视分析的手段,

  • 帮助用户找到了吴大爷和小张的共同邻居,他们可能正在被骗。
  • 用节点相似性方法,找到了很多类似的高危的人群。
  • 发现刘大妈有相同的转账结构模式,她很有可能也已经被骗了。

这些手段帮助我们找到、保护了潜在受害人,进行及时止血和精准教育。现在,我们希望把刚刚这个故事的过程沉淀下来,包括每一步用了什么算法,采用何种配置等,以便结合更多周边数据,复用这个分析的手段发现、预测更多风险,保护更多的受害人。更有甚者,更换算法、配置,也许能让这个分析链路复用到更多场景中。

有没有高效的沉淀方式?

这里使用了图编辑编排的方式,梳理了故事中的分析流程。包括刚开始的请求数据,到种子节点的发现、种子节点的扩散、模式分析、社区分析等。每个地方使用了何种算法、何种配置,也可以在图编排过程中记录下来。完成流程图编排后,将来可以对某一个算法节点更换参数配置。例如,模式匹配在该案例中使用的图模式,可以更换成其他结构。同时,可以指定某个节点作为起始步骤,灌入更多数据进行手动的、或周期性的执行,获取更大范围的结果。



图可视分析的一般过程

相信听完这个小故事,大家应该觉得图可视分析还是有点用、有点意思的。总结这个故事以及我的日常项目经验来看,图可视分析一般有如下的过程,我称之为“图可视分析一条龙”:

  • 用户通过 sql、gremlin 等一些查询方法,从后台将数据带条件地获取到前台,如前端页面。前端使用图可视化的手段,将复杂的数据呈现给用户;
  • 第一步,找到数据中用户感兴趣的节点,即种子节点。进行已知种子节点的标记,以及更多种子节点的启发;
  • 第二步,寻找更多结构上、属性上类似的种子节点,即种子节点的扩散;
  • 第三步,从点到线到面地分析图的结构,如图模式、社区情况等。
  • 以上三步,是前端帮助用户探索、验证、分析数据的过程。
  • 第四步,使用图编辑编排,沉淀分析链路,以便复用。
  • 以上是循环往复的过程,可能需要几个步骤重复,最终可到后端更大规模的数据集中进行计算得到更多结果。


最后,回顾图行业的现状和场景。

图是描述这个世界最自然的一种表达。在大量关系数据涌现的今天,也促生了诸多图数据库的诞生。相对于传统型的关系型数据库来说,图数据库对于图数据结构有更好的存储方式,能够快速进行图数据的存储、计算、查询等。这里展示了 2020 年图技术 landscape,从底层技术到上层产品,图已经有非常多的应用了。蚂蚁图基建上,底层有强大的图数据库 GeaBase ,强大的图计算系 GeaFlow 。除此之外,蚂蚁还有非常多其它图基础建设,支撑了上层业务及中台图相关产品。如知识图谱平台、图数据库平台等。上层业务更为大家熟知一些,如智能推荐圈、人保险、财富投资等。举个小例子,在理财方面,可以用下图描述理财师、用户、基金、板块之间的关系。在这个图上,使用前面提到的模式匹配,可以为用户快速推荐感兴趣的基金;使用节点重要性分析,可以帮助理财师找到重点客户,进行更高效客户沟通。

在这些中台产品和上层业务的下面,沉淀的是蚂蚁前端开源技术:图可视化分析引擎 AntV G6 和图可视编排引擎 AntV X6 。它们的存在,使得中台产品和上层业务减少了大量的、专业性重复的建设。在各行各业,图又是如何应用的呢?

  • 在社交媒体中,图可用于推荐关注的人、可能认识的人;
  • 在企业运营商,图可用于优化商家门店选址问题。或做这样企业血缘图,分析企业架构关系等;
  • 在资源管理上,图可用于物联网和存储资源优化、人力资源优化等。如右边的组织网络分析图,分析了公司内部人员的年龄组成、层级组成、业绩分布等。图也可用于编排员工的架构关系;
  • 电商中,图可用于购物推荐、优化上下游采买关系、识别这种刷单行为等;
  • 再如吴大爷故事所属的反欺诈场景,也是我国目前大力提倡的。图可帮助用户进行分析、取证、监控、止血、教育等;
  • 其他蚂蚁内部的例子有:使用图可视化进行服务器持续的异常监控;图数据库上层的应用帮助用户探索、分析、下钻大规模数据;在知识图谱领域帮助用户快速建模与数据分析等。

由此,我们看到在各行各业,图已经发挥了巨大的光和热。我也相信图可视分析技术在将来也能够产生不可限量的价值。欢迎社区中的更多感兴趣的小伙伴加入我们,进行深入的探讨和交流。

相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
相关文章
|
监控 自动驾驶 数据可视化
GPS 人员定位系统:原理拆解 + 优劣分析 + 避坑指南(一)
本文详解GPS人员定位系统的工作原理,从卫星测距、三角定位到数据解算,解析其实现过程,并介绍实时定位、电子点名、轨迹回溯、智能考勤等核心功能,为后续优劣分析与避坑指南做铺垫。
|
9月前
|
人工智能 边缘计算 移动开发
2025展厅数字人竞争力榜单发布:AI交互数字人驱动智慧展厅全面进化
AI数字人正引领数字展厅迈向智能新时代。世优科技波塔AI凭借拟人形象、实时交互、多模态融合等五大核心能力,在2025年权威榜单中领先,赋能企业、政务、文博等多元场景,实现沉浸式体验与降本增效,推动“人工智能+”战略落地,开启智慧交互新纪元。
514 1
|
8月前
|
存储 人工智能 自然语言处理
企业如何把智能客服系统用好:从“关键词匹配”到“语义理解”
智能客服已成为企业服务的核心基础设施。本文从战略定位、知识库建设、语义理解、系统集成、人机协同、持续优化等八大维度,系统阐述如何真正“用好”智能客服,实现服务升级与体验提升。
企业如何把智能客服系统用好:从“关键词匹配”到“语义理解”
|
8月前
|
存储 SQL 运维
Hologres Dynamic Table:高效增量刷新,构建实时统一数仓的核心利器
在实时数据架构中,Hologres Dynamic Table 基于有状态增量计算模型,有效解决“海量历史+少量新增”场景下的数据刷新难题。相比传统全量刷新,其通过持久化中间状态,实现复杂查询下的高效增量更新,显著降低延迟与资源消耗,提升实时数仓性能与运维效率。
|
7月前
|
人工智能 算法 API
AI英语口语APP的开发
本项目开发AI英语口语APP,深度融合ASR、LLM、TTS与音素级口语评测。优选通义千问、GLM-4等国产大模型,支持低延迟流式交互、多口音TTS及场景化分级训练,专注真实口语提升。(239字)
|
7月前
|
缓存 JSON 运维
翻译文本接口(t_text)对接全攻略
t_text是通用翻译核心接口,支持200+语言互译、文档/语音/术语定制等场景,标准化对接百度、腾讯、阿里、有道、Google、OpenAI等引擎,具备智能翻译、批量处理、格式保持、领域定制与质量优化能力。(239字)
|
人工智能 自然语言处理 关系型数据库
极智编程:基于Qoder+PolarDB Supabase 实现全栈VibeCoding
VibeCoding是AI驱动的编程新范式,开发者通过自然语言描述需求,由AI完成全栈开发。结合Qoder与PolarDB Supabase MCP Server,可填补前后端断层,实现高效全栈应用生成,显著降低开发门槛,提升非专业者的开发效率。
|
8月前
|
存储 弹性计算 小程序
2026年阿里云服务器新手指南:配置选购、费用价格及使用全流程(图文教程)
本文手把手教你从零选购、购买并登录阿里云服务器,涵盖ECS与轻量应用服务器区别、核心配置参数、2026年最新优惠价格及远程登录方法,适合新手快速上手,30分钟轻松迈出上云第一步。
|
8月前
|
人工智能 弹性计算 小程序
2026,想做独立开发者?这些网站+阿里云工具帮你把“想法”落地成“产品”
2026年,独立开发不再是孤军奋战。从MDN、FreeCodeCamp学实战技能,到Product Hunt、Indie Hackers找灵感,再到阿里云ECS、RDS、PAI-EAS等低成本高效工具助力产品落地,最后在SoloDev社区与同频者交流避坑、碰撞创意。技术+资源+社群,让“小想法”跑出“大可能”。加入SoloDev,用阿里云开启你的独立开发之旅。
|
8月前
|
弹性计算 Linux 网络安全
2026年最新阿里云服务器ECS租用流程(新手入门)图文教程一看就懂
阿里云ECS新手租用流程(2026年适用)以控制台操作为主,步骤简洁友好。注册实名账号、充值≥100元后,登录ECS控制台选择“快速购买”,按提示选地域、配置、镜像及计费模式,设置登录凭证并支付即可。推荐新用户使用免费试用额度。实例运行后,通过SSH或RDP连接,完成初始化与应用部署。注意数据备份与安全组端口配置,避免服务无法访问。
957 7