[VLDB 2022]Butterfly Counting on Uncertain Bipartite Graphs
总结
非确定二部图上的蝴蝶结构统计,精确算法。在普通的蝴蝶结构统计上,增加了边权重,使得传统算法失效,再在这基础上定义新的统计并优化老方法。
动机
Butterfly的数量直接展示了二部图的密度,是个很重要的属性。相比于certain bipartite graph, uncertain bipartite graph 的边上多了权重,用来表示联系的概率。这种图会比一般的图更有表现能力,但现在少有这种图上的butterfly counting算法。
Butterfly counting使用案例
- Host-Parasite Network: 这种网络用来寻找寄生虫寄生于哪些宿主身上。此时二部图上的权重用来表示被感染的机率。通过butterfly counting可以对潜在的感染率和传播造成的影响进行评估。
- 推荐系统。此时二部图上的权重用来表示用户对某商品的喜好程度/购买可能。通过butterfly counting可以对不同推荐系统得到的推荐结果进行对比,越稠密的越好。
问题定义
和一般的butterfly counting不同,这里因为引入了uncertain属性,所以需要对概率设定一个阈值。
比如:
这张图里,阈值为0.6。而蝴蝶结构B(A,B,C,D)B(A, B, C, D)B(A,B,C,D)的权重是1×1×0.9×0.8=0.721 \times 1 \times 0.9 \times 0.8 = 0.721×1×0.9×0.8=0.72是满足的,但B(C,D,G,H)B(C, D, G, H)B(C,D,G,H)则是1×1×0.4×0.5=0.21 \times 1 \times 0.4 \times 0.5 = 0.21×1×0.4×0.5=0.2则是不满足的。用下面的定义来表示就是Pr(Bt)≥1Pr(B_t) \geq 1Pr(Bt)≥1。
计算剩下的可以得到,这张图的count是0.2。
顺便提一句,下面还有个wedge ∠(u,v,w),Pr(∠t)≥t∈[0,1]\angle(u,v,w), Pr(\angle_t)\geq t \in [0,1]∠(u,v,w),Pr(∠t)≥t∈[0,1]。同样的,满足条件的才会被视作图中的wedge。
很明显,已有的工作没法在这定义上实现counting。
其中 Pr(eu,v)∈(0,1]Pr(e_{u,v}) \in (0,1]Pr(eu,v)∈(0,1]
对于每个G的每套权重边(子图),都有一个possible worldWi=(V,EWi)W_i=(V, E_{W_i})Wi=(V,EWi)。以下式子本质就是出现这个概率世界的概率:
Pr(Wi)=∏e∈EWiPr(e)⋅∏e∈E\EWi(1−Pr(e))Pr(W_i)=\prod_{e \in E_{W_i}} Pr(e) \cdot \prod_{e \in E\backslash E_{W_i}}(1-Pr(e))Pr(Wi)=∏e∈EWiPr(e)⋅∏e∈E\EWi(1−Pr(e))
也就是说,当出现了某个具体的概率世界时,其实就是概率的不确定边转变为了实际发生的确定边。
对于每个G,都会有2∣E∣2^{|E|}2∣E∣个概率世界。看来是全包和一个都没有都算在内的。W={W1,…W2∣E∣}\mathbb{W}=\{W_1, \dots W_{2^{|E|}}\}W={W1,…W2∣E∣}。
EEE条边可以有2∣E∣2^{|E|}2∣E∣种子集的证明,可以认为每条边有在和不在两种情况,自然就是边数个2相乘。
Naive算法
首先有个顶点优先级定义:
if((deg(u) > deg(v)) or (deg(u) == deg(v) and id(u) > id(v))):p(u) > p(v)
利用优先级可以避免一个点被计算多次。
- 提取出一个概率世界
- 找出u为起点,优先级都低于u的u邻居v,以及wedge邻居w,把中间节点v存入H(w)
- 对于至少有2个v的w,判断这个蝴蝶符不符合要求,符合数量+1。
从度小的子图开始往上地毯式搜索。
提升算法
l中存了所有边从小到大的权重,然后对所有边做遍历
两边权重乘积小于t的肯定就出局了,顺便可以确定当前边需要配合的另一条边的最小权重,再去找有没有符合的,没有就直接跳过这条边,有就计数。
最终算法
概率低于t的点肯定不是,可以直接去掉,后面的基本和UBFC保持一致,不过存的是wedge,之后可以直接用wedge去统计数量。
[VLDB 2022]Butterfly Counting on Uncertain Bipartite Graphs相关推荐
- VLDB 2022最佳研究论文:克服通信挑战,新框架SANCUS实现GNN高效训练
来源:机器之心 本文约4500字,建议阅读9分钟 本文解读了论文"面向大规模图神经网络的陈旧性感知通信回避的去中心化全图训练框架". 本文解读了香港科技大学陈雷教授团队.北京邮电大 ...
- 分享|破世界纪录的OceanBase,如今入选了国际顶会VLDB 2022
*本文转载自微信公众号"机器之心(ID:almosthuman2014),原文<破世界纪录的国产数据库OceanBase,如今入选了国际顶会VLDB 2022>" 近年 ...
- Hybrid Blockchain Database Systems: Design and Performance(VLDB‘2022)
目录 Abstract 2 background and related work 2.1 混合区块链数据库系统 2.2 账本数据库Ledger DB 2.3 总结 四.Performence ana ...
- CVPR 2022 论文列表(持续更新)
本文包括论文链接及代码 关注公众号:AI基地,及时获取最新资讯,学习资料 GitHub链接:GitHub - gbstack/cvpr-2022-papers: CVPR 2022 papers wi ...
- CVPR 2022 论文列表
CVPR2022 Papers (Papers/Codes/Demos) https://github.com/gbstack/cvpr-2022-papers 分类目录: 1. 检测 2. 分割(S ...
- 2022最新!基于深度transformer的时间序列异常检测模型
点击上方"python与机器智能",选择"星标"公众号 重磅干货,第一时间送达 论文:TranAD: Deep Transformer Networks for ...
- 7.07亿TPC-C背后的技术突破,OceanBase研究成果入选VLDB
近日,国际顶级数据库学术会议 VLDB 2022 在澳大利亚悉尼开幕.OceanBase 研究成果论文"OceanBase: A 707 Million tpmC Distributed R ...
- Flink OLAP 助力 ByteHTAP 亮相数据库顶会 VLDB
复杂查询 QPS 破百,字节跳动 Flink OLAP 助力 ByteHTAP 亮相数据库顶会 VLDB. 2022 年 9 月 5 日至 9 月 9 日,VLDB 2022 在澳大利亚悉尼举行.字节 ...
- VLDB‘22 HiEngine极致RTO论文解读
摘要:<Index Checkpoints for Instant Recovery in In-Memory Database Systems>是由华为云数据库创新Lab一作发表在数据库 ...
最新文章
- 跟大家聊聊我们为什么要学习源码?学习源码对我们有用吗?(源码感悟)
- 提取某一个镇的行政边界_接口测试:A04_HttpRunner通用_02_提取数据_02_regex方式
- C和指针之字符串总结
- 点击链接如何直接跳转到相对应的聊天窗口
- android 获取cpu型号_当贝投影带你认识投影仪CPU芯片有哪些?网友:真详细
- 穹顶之下 众信金融邀您共植树助环保
- Ubuntu上面安装Mongo
- linux计划任务 没30s_一分钟学会电脑Linux系统和Windows另类的关机方法,6到飞起来...
- android开源播放器代码,github上十二款最著名的Android播放器开源项目
- Fehelper 下载、安装与使用
- 2022.08 VMware官网下载安装+配置Linux虚拟机,最新最全
- Opencv颜色空间最全
- 计算机游戏cpu,玩游戏选什么CPU 10款2017适合玩游戏的处理器推荐 (全文)
- 半年销售100万辆 关注比亚迪后300万时代
- 在 Excel 2007中手动为坐标图添加坐标轴标题
- 设计一个基于用户的API限流策略 Rate Limit
- 机械转行前端,半年零基础自学的心路历程
- MYSQL5.7下载安装详细教程
- 顶级投资机构ARK将区块链列为颠覆式创新技术
- scala spark dataframe添加序号(id)列