2022云栖精选—图计算发展的回顾与展望

简介: 摘要:本文整理自上海交通大学安泰经济与管理学院数据与商务智能系讲席教授、数据与商务智能系系主任、欧洲科学院院士、IEEE Fellow林学民,在云栖大会“图计算及其应用”分论坛的分享。本篇内容主要分为四个部分:1. 子图罗列Subgraph Enumeration2. 内聚子图Cohesive Subgraphs3. 网络弹性Network Resilience4. 二分图Bipartite Graph

lQLPJxbcF2cqNBvMiM0FeLCMz4ifcSGHeANpqgFLAEAA_1400_136.png

什么是图?这个图不是我们平时说的图形或者图像,这个图是点和边。点代表事物,边表示他们之间的关系。

 

image.png

 

我们最早知道图是欧拉定理和格尼斯堡七桥问题,然后翻山越岭,经过历史的长河,我们来到了本世纪初的图数据库和大图计算。

 

image.png

 

现在各行各业都需要图,比如:Web Graph, Social NetworkProtein Interaction Network等等。下图是一个图的应用场景,左边是各种各样的应用,应用可以分解出基本算子,然后基本算子再分解出最基本算子,所以做系统就要把最基本算子处理好。

 

image.png

 

一、子图罗列Subgraph Enumeration

 

左边P是模式图,中间G是数据图,通常模式图比较小,可能就是几个点,数据图有可能非常大。下面是从G中找到所有和P同构的子图实例的三个样例。所以能想象,在实际应用中这种映射有可能会有成千上万,甚至上亿的量。

 

image.pngimage.pngimage.png

 

下面来分享一下子图罗列在各行各业中的应用。

 

1.   实时周期检测

 

下图是几年前和阿里合作的实时周期检测项目,主要用于欺诈检测和洗钱检测。

 

image.png

 

2.   检测指定社区

 

image.png

 

3.   CPU解决方案

 

image.png

 

4.   分布式技术

 

在分布式技术中没有哪一个算法是最好的,需要我们根据数据分布选择适合的算法。

 

image.png

 

二、内聚子图Cohesive Subgraphs

 

下图是曾经和阿里合作的一个项目,目的是抓住刷单的水军。这个问题我们是怎么解决的呢?其实就是将问题转化成抓Bi-Clique就可以了。

 

image.png

 

所谓的Clique就是每两个点之间都有一条边,那么如何把所有的Clique或者最大的Clique找出来呢?这里就会有一个很大的难点。因为CliqueClique之间是可以重叠的,这样就会使数目变得非常大。

 

image.png

 

在数据库他们会做各种各样的变种,比如Quasi-Clique,那么如何定义他们呢?

 

比如clique的边数是| v | ( | v | )-1,那么Quasi-Clique就是γ | v | ( | v | )-1

 

image.png

 

K-PlexClique里它的度数等于n-1,那么K-Plex每个点的度数就会大于等于n-k

 

image.png

 

K-clique是子图中任意两个顶点之间的距离小于等于kK-club同样也是任意两个顶点之间的距离小于等于k,但是它的两点是指子群中两点的距离。

 

image.png

 

K-Core是指子图中每个点的度数大于等于k。这个就比较简单,比如现在这个图里找一度数最小的点,如果度数等于或者大于kfinish了。小于k的,我们就把它除掉,再update度数。

 

image.png

 

K-TrussK-Core的加强版,每条边上三角形的个数要大于等于k-2。那么为什么说K-Truss是加强版呢?你能想象一个K-Truss一定是k-1 Core,就是度数值一定是大于等于k-1的。

 

K-Truss的算法实际上和K-Core的差不多。算法复杂性就是把每条边上的三角形个数全部罗列出来,这也是一个多项式算法。

 

image.png

 

子图里的度数如果大于等于p乘以全局的度数就叫P-Cohesion

 

image.png

 

K-edge Connected是指一个图里去掉任意k减一条边,它仍然是联通的。所以K-edge Connected Component就是找最大的子图。这是一个分解算法,最坏的情形是N的三次方。

 

image.png

 

还有一个是K-vertex Connected Component,这个我们暂时没有找到非常快的算法。如果你们对这个话题感兴趣,可以来一起提高它的性能。

 

image.png

三、网络弹性Network Resilience

 

Friendster曾经是一家比较大的社交网站,但在2005年突然就collapse了。这到底是为什么呢,其实原因非常不好找。

 

就比如你去了一个party,好吃的东西和一个聊得来的人并不会让你留很久。如果想要长时间呆留在party,就需要很多这样的人才可以。

 

image.png

 

假如我是K-Core,给你的budgetb,也就是让你想办法留下b个人。这个b不用满足K-Core条件,那么b要怎么选才能让network最大呢?

 

image.png

 

最终我们没有找出非常快速的精确算法,所以就找了个近似算法。 这个论文发表在了VLDB 2017上。

 

image.png

 

四、二分图Bipartite Graph

 

所谓的Bipartite Graph就是把图分成两层,上面一层,下面一层。它们都没有边只有cross两层。

 

image.png

 

实际上它有很多应用,比如下图最左边的就是一个非常典型的academic的例子,上面是演员,下面是电影。

lQLPJxbcF2cqM2TM-M0CnrCgW_7LDpyh1wNpqgFKAPsA_670_248.png

相关文章
|
Web App开发 JavaScript 前端开发
从零开始,轻松打造个人化Chrome浏览器插件
从零开始,轻松打造个人化Chrome浏览器插件
546 0
|
人工智能 算法 安全
深度:善用人工智能推动高等教育学习、教学与治理的深层变革
本文探讨人工智能技术与高等教育深度融合带来的系统性变革,从学习进化、教学革新与治理重构三个维度展开。生成式AI作为技术前沿代表,正通过标准化认证体系(如培生的Generative AI Foundations)提升职场人士、教育者及学生的能力。文章强调批判性思维、高阶认知能力与社交能力的培养,主张教师从经验主导转向数据驱动的教学模式,并提出构建分布式治理结构以适应技术迭代,最终实现人机协同的教育新生态,推动高等教育在智能时代焕发人性光辉。
|
9月前
|
存储 安全 开发工具
如何安全删除GitHub中的敏感文件?git-filter-repo操作全解析
当敏感文件误传至GitHub时,需使用`git-filter-repo`彻底删除文件及历史记录。本文详解操作步骤与注意事项,如备份、强制推送、团队协作处理,并建议搭配高安全性云服务,防止数据泄露,保障代码仓库安全。
739 1
|
人工智能 自动驾驶 物联网
5G到底有多牛?一文看懂它的原理与优势!
5G到底有多牛?一文看懂它的原理与优势!
966 19
|
存储 缓存 测试技术
80510次/秒,阿里云图计算引擎刷新全球纪录!
近日,LDBC公布最新SNB Interactive基准测试结果,阿里云开源的GraphScope Flex以超80,000 QPS打破历史纪录,性能较第二名提升1倍。作为首个开源的大规模图计算引擎,GraphScope在金融风控、网络安全等领域广泛应用。其通过全栈优化与自研GOpt框架,在声明式与命令式查询双场景全面领先,大幅提升了图查询性能,研究成果已被SIGMOD 2025收录。
371 12
|
存储 移动开发 数据库
HTML5 Web IndexedDB 数据库常用数据存储类型
IndexedDB 支持多种数据存储类型,满足复杂数据结构的存储需求。它包括基本数据类型(如 Number、String、Boolean、Date)、对象(简单和嵌套对象)、数组、Blob(用于二进制数据如图像和视频)、ArrayBuffer 和 Typed Arrays(处理二进制数据)、结构化克隆(支持 Map 和 Set 等复杂对象),以及 JSON 数据。尽管不直接支持非序列化数据(如函数和 DOM 节点),但可以通过转换实现存储。开发者应根据具体需求选择合适的数据类型,以优化性能和使用体验。
1143 10
|
人工智能 关系型数据库 分布式数据库
DB+AI会擦出怎样的火花?一站式带你了解阿里云瑶池数据库经典的AI产品服务与实践!
从 DB+AI 精选解决方案、特惠权益等,一站式带你了解阿里云瑶池数据库经典的AI产品服务与实践。
|
存储 安全 算法
密钥密码学(一)(4)
密钥密码学(一)
924 2
|
机器学习/深度学习 人工智能 自然语言处理
利用深度学习提升语音识别准确率的技术探讨
传统的语音识别技术在面对复杂的语音场景时常常表现出准确率不高的问题。本文探讨了如何利用深度学习技术,特别是深度神经网络,来提升语音识别的精度。通过分析深度学习在语音处理中的应用以及优势,我们展示了如何结合最新的研究成果和算法来解决现有技术的局限性,进一步推动语音识别技术的发展。 【7月更文挑战第3天】
1143 0
|
机器学习/深度学习 运维 自然语言处理
一文读懂!异常检测全攻略!从统计方法到机器学习 ⛵
本文系统介绍了『单变量异常检测』和『多变量异常检测』识别技术,包括传统的统计方法(四分位距、标准差),以及前沿的机器学习模型(孤立森林、DBSCAN、LOF局部离群因子)。
2595 2
一文读懂!异常检测全攻略!从统计方法到机器学习 ⛵