论文导读 | 图流的分割和摘要

前 言

本次论文导读介绍有关图流的分割和摘要问题的3篇文章。第1篇是partition的,第2篇是summarization的。

图片

首先介绍第一篇文章。

文章一:图分割在分布式系统中有广泛的应用

文章的问题定义是用划分边的方式来分割图。如图所示,把图(图流)中的边分割到p个集合中(p预先给定)。我们的目标是,在最小化顶点重复(最小化所有集合中顶点总数)的同时,最大化 load balance(最大化最小集合的边数)。

图片

以往的工作分为offline和stream两类,offline的工作不支持很大的、无法完整存入内存的图,stream的工作的效果不好。因此,本文希望能结合二者,对于很大的图,用 offline 算法来提高 stream 算法的分割质量。

具体来说,以往一个常用的stream算法是HDRF[2]。它用partition state 存储已经处理完的边的分割信息,用这个信息帮助后续的图流 分割。HDRF的冷启动是一个很大的问题,即在处理图流的开头时,还没有足够的边来给后续分割提供信息,因此开头一段的边分割几乎是随机做的。

本文提出的方法是,在图流的开头,把一批 edge 读入内存,运行 offline 分割算法来提高初始状态下partition state信息少的时候的准确性,而不是在读入第一条边的时候立刻决定怎么分割。

文章用了修改后的NE[1]算法作为offline算法。修改的主要内容是,在分割的同时,加上对partition state的设置,供后续图流分割使用。文中用到的partition state如图所示。

图片

因此,本文在初始阶段使用NE,在后续阶段使用HDRF,大大提升了分割效果,同时分割速度也很高。本文在以下4个真实世界数据集上进行了实验。

图片

文中比较了各种offline和stream方法的replication factor(RF)和load balance(LB)来衡量分割效果,公式如下图所示。

图片

实验结果如下,可以看到,在stream算法中,本文的分割效果很好。

图片

文章二:无损的图摘要

问题定义如下图所示,将一张图划分为多个超点,超点之间有连边代表两个超点间任意两点均连边。同时,还加上了edge correction 信息。还原原图时,在连上两个超点间任意两点的连边的基础上,进行edge correction,可以无损的得到原图。评价摘要质量的方式是希望压缩率尽可能高,也就是摘要图尽可能小。因为超点个数相对于边数目很小,可以忽略,因此我们的目标设置为最优化cost = |超点图的E|+|C+|+|C-|。

图片

这篇文章是第一篇增量无损图摘要算法。文章基于如下观察:如下图所示,固定 vertex (为了更好的区分原图顶点和超点,我们在文中用vertex表示原图顶点,super node表示超点)划分,最优的 super node 间连边是显然的, 因此算法针对 vertex 划分即可。

图片

维护vertex划分的方法是,每当新来一个增边或删边操作,我们都在 super node 之间移动 vertex,更改 vertex 划分。那么,余下的问题就变成了,移动哪些vertex,以及将其移动到哪个super node。本文使用采样方法来解决这两个问题。文章中展示了4个算法,来展示处理这两个问题需要考虑的因素。最后一个算法是文章提出的最终算法。

对于操作的边(u,v),u和v等价(本文针对无向图)。因此,下文只介绍 u 对应的部分。

第一个算法是greedy算法。它对两个问题是这么处理的:

1. 移动哪些 vertex:移动u。

2. 移动到哪个 super node:对每个 super node,计算把 u 移动到此 node 中之后的 cost,选最小 cost 的 node。

Greedy算法的问题是,每次只移动一个点,容易陷入局部最优。

第二个算法是MCMC算法。它对两个问题是这么处理的:

1. 移动哪些 vertex:移动u的所有邻居。

2. 移动到哪个 super node:对于每个u的邻居y,从所有 super node 中,按照预定义的随机分布,抽样一个super node。然后计算移动y后的 cost,根据移动、不移动两种情况的cost,得到“移动概率”。

MCMC算法的问题有两个。第一个问题是,邻居个数很多,这样做会带来高代价;第二个是,不容易遇到减小 cost 的好 super node 选择,移动概率往往很小。

总结前两个算法的问题,我们得到第三个算法Mosso-simple。它对两个问题是这么处理的:

1. 移动哪些 vertex:移动u的一部分邻居。具体方法如下图所示。

图片

以1/deg(w)概率采样的原因是,高度数vertex的:连接性质往往独特,一般会形成 singleton super node(一个super node中只有它一个vertex),移动它结果一般不好。

2. 移动到哪个 super node:以概率 e(预定义e)在 N(u) 所在的 super nodes 中 等概率随机选择一个 super node,以概率1-e成立一个 singleton super node。如果移动后cost减小,则移动;反之不移动。

这个算法依然存在问题:第一个问题是,算法依然需要遍历u的所有邻居。邻居很多,因此只是获取邻居这一步,已经是性能瓶颈了。第二个问题是,等概率随机选择super node的情形下,Cost 减小的情形依然少。

因此,提出第四个算法Mosso来解决上面两个问题。首先,mosso使用如下图的算法来在不遍历u的所有邻居的前提下等概率采样u的邻居。

图片

然后,引入粗聚类,来在super node的选取中进一步利用结构信息。如下图所示。粗聚类算法已经有很多文章研究了。本文实验中选用了min hashing算法。

图片

本文在以下数据集上进行了实验。

图片

实验结果如下。可以看到,mosso比静态图上的算法快的多,同时也有不错的压缩率。

图片

图片

文章三:有损的图流摘要

针对的是图流大小不断增长的情景。以往工作中,GSS[3]利用一个固定大小的矩阵来存储图流摘要。对于图流大小不断增长的情景,naïve方法是将GSS连接成链,但这样会带来O(|E|)的时间复杂度。本文用树结构来组织GSS,在确保log级别的时间复杂度同时,节省空间。

本文的树结构如下图所示,是前缀树的结构,用指纹(每条边(s,d)都有对应的(footprint(s),footprint(d)),指纹是GSS中用于增加图摘要准确度的重要结构)的前缀来决定边应该存储在哪个子树中。当上层矩阵满了时,拓展下层矩阵。

图片

与此同时,因为子矩阵中所有边的指纹前缀都相同,因此不需要存储指纹前缀。因此,第i层的矩阵中,每条边可以节省i bit的指纹。这个优化带来的空间节省如下图所示。

图片

这个结构能够很好的节省空间和时间,但还有空间利用率波动的问题。如下图所示,每次新扩展一层,都会让空间利用率骤降。

图片

因此,文章提出了进一步的优化来缓解这一点。首先,把4叉树改成2叉树,来让最坏情况下的空间利用率维持在1/2.第二个优化是,提出deputy tree的结构,如图所示。

实验结果如下图所示。可以看到,Auxo的时间和空间效率都不错,同时准确性也较高。准确率用ARE表示,定义也在下方图中。

图片

图片

图片

参考文献

[1] C. Zhang, F. Wei, Q. Liu, Z. G. Tang, and Z. Li, “Graph edge partitioning via neighborhood heuristic,” in Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 2017, pp. 605–614.

[2] F. Petroni, L. Querzoni, K. Daudjee, S. Kamali, and G. Iacoboni, “Hdrf: Stream-based partitioning for power-law graphs,” in Proceedings of the 24th ACM International on Conference on Information and Knowledge Management. ACM, 2015, pp. 243–252.

[3] Xiangyang Gou, Lei Zou, Chenxingyu Zhao, and Tong Yang. 2019. Fast and Accurate Graph Stream Summarization. In Proceedings of the 35th IEEE International Conference on Data Engineering (ICDE ’19). IEEE, Macao, China, April 8-11, 2019, 1118–1129. https://doi.org/10.1109/ICDE.2019.00103

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/139555.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

群晖Docker(Container Manager)中安装Home Assistant Container

群晖Docker(Container Manager)中安装Home Assistant Container 不要使用 套件里面的 Home Assistant,不利于后期拓展 方式一: docker run -d --name"home-assistant-1" -v /volume1/docker/homeassistant/config:/c…

互联网医院牌照|互联网医院牌照办理小知识

随着互联网技术的快速发展,互联网医院牌照已经成为医疗行业的一个重要资质,我们致力于为您提供最优质的服务,帮助您的公司或产品顺利获得此牌照。 一、产品特性描述 1、专业性:我们的团队由经验丰富的顾问组成,对互联…

Apipost IDEA插件如何使用

Apipost-Helper是由Apipost推出的IDEA插件,写完接口可以进行快速调试,且支持搜索接口、根据method跳转接口,还支持生成标准的API文档,注意:这些操作都可以在代码编辑器内独立完成,非常好用!这里…

leetcode每日一题复盘(11.13~11.19)

leetcode 435 无重叠区间 本题和射气球最小箭数大同小异,但是这一题没做出来,难就难在题目如何理解:移除区间最小数量,使剩下的区间不重叠 那么本质上就是求最少有多少个重叠区间,把重叠区间去掉剩下的区间即不重叠 这里有两种做…

完全免费!超好用的IDEA插件推荐:Apipost-Helper

Idea 是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序,Idea 还具有许多插件和扩展,可以根据开发人员的需要进行定制和扩展,从而提高开发效率,今天我们就来介绍一款国产的…

学用 DevChat 的 VSCode 插件,体验AI智能编程工具 (一)

简单说DevChat是一个辅助编程的智能工具,它可以通过自然语言对话的方式与开发者进行交流,帮助开发者更高效地完成编程任务。 有了人工智能工具,编程进入一个新天地。 闻名已久,不若体验一下。 一.准备工作 1.运行环境. A. p…

在Gradio实现两个下拉框进行联动案例解读:change/click/input实践(三)

本文的代码来自ChuanhuChatGPT,通过拆解写得比较好的gradio项目,可以更快理解gradio的一些使用。 ChuanhuChatGPT整体页面效果是比较合理的: 1 下拉框联动效果的解读 本篇是将一个其中【对话】中的【Prompt加载】小模块抽取出来并稍稍修改…

TCP/IP卷一详解第二章Internet地址结构概要

在这一章中介绍了Internet中使用的网络层地址(也就是IP地址),还有如何为Internet中的设备分配地址,以及各种类型的地址等等…… 一、IP地址的表示 为大家所常见的有IPV4地址和IPV6地址,但在IPV4地址中,通…

JOSEF约瑟 电压继电器 DY-32/60C 板前接线 可订做导轨安装

DY-32/60C,DY-34/60C电磁式过电压继电器,用于继电保护线路中,作为过电压保护或低电压闭锁的动作元件。 系列型号 DY-32电压继电器; DY-36电压继电器; DY-33电压继电器; DY-37电压继电器; DY-34…

轻盈创新,气膜体育馆

气膜体育馆采用高强度、高柔性的薄膜材料为主要构建元素。其制作过程包括将膜材的外沿固定在地面基础或屋顶结构周边,并搭配智能化的机电设备,通过吹气实现室内空间的密闭。利用密闭空间内的气压支撑原理,当室内气压大于外部气压时&#xff0…

Minecraft开服教程:使用MCSM面板一键搭建我的世界服务器并实现远程联机

文章目录 前言1.Mcsmanager安装2.创建Minecraft服务器3.本地测试联机4. 内网穿透4.1 安装cpolar内网穿透4.2 创建隧道映射内网端口 5.远程联机测试6. 配置固定远程联机端口地址6.1 保留一个固定TCP地址6.2 配置固定TCP地址 7. 使用固定公网地址远程联机 前言 MCSManager是一个…

期中成绩这样发

数字化时代,成绩查询系统已经成为学校里不可或缺的一部分。老师们需要一种方便、快捷、准确的方式来发布和查询成绩,而学生们则需要一种安全、可靠的方式来获取自己的成绩。那么,如何实现这一目标呢?我来给大家介绍几种简单实用的…

vue2【计算属性】

目录 1:计算属性的作用 2:代码示例 3:特点 4:好处 1:计算属性的作用 计算属性指的是通过将属性经过运算,最终得到一个属性值,这个属性值可以在method节点下和模板结构中被使用。 2&#x…

Jenkins 搭建

GitLab GitLab安装 https://gitlab.cn/install/?versionce CentOS 下安装 1. 安装和配置必须的依赖项 在 CentOS 7上,下面的命令也会在系统防火墙中打开 HTTP、HTTPS 和 SSH 访问。这是一个可选步骤,如果您打算仅从本地网络访问极狐GitLab&#xf…

Containerd接入Harbor仓库

在使用容器时,避免不了会使用到私有仓库,一般都是采用 harbor 作为私有仓库,docker 对接 harbor 仓库非常简单,哪 containerd 如何对接 harbor 呢? 在内网使用 harbor 根据个人习惯,一般都是非 http 并且是…

华东“启明”青少年音乐艺术实践中心揭幕暨中国“启明”巴洛克合奏团首演音乐会

2023年11月11日,华东“启明”青少年音乐艺术实践中心在上海揭幕,中国“启明”巴洛克合奏团开启了首场音乐会。 华东“启明”青少年音乐艺术实践中心由中共宁波市江北区委宣传部与上音管风琴艺术中心联合指导,宁波音乐港、宁波市江北区洛奇音乐…

未来之选:为什么向量数据库是您的数据管理利器

文章目录 前言什么是向量数据库?向量数据库的机制向量数据库的优点‍查询向量数据库 什么是向量Embedding?Amazon OpenSearch Service总结 前言 向量数据库擅长处理复杂的高维数据,正在彻底改变商业世界的数据检索和分析。它们执行相似性搜索…

ECharts:显示暂无数据

ECharts 是一个使用 JavaScript 实现的开源可视化库,涵盖各行业图表,满足各种需求,实现各种炫酷的统计图表效果。 如上图所示,有数据的时候固然好看,但是当它没有数据的时候,就是光秃秃的一片,所…

【SpringBoot3+Vue3】一【基础篇】

目录 一、Spring Boot概述 1、Spring Boot 特性 1.1 起步依赖 1.2 自动配置 1.3 其他特性 1.3.1 内嵌的Tomcat、Jetty (无需部署WAR文件) 1.3.2 外部化配置 1.3.3 不需要XML配置(properties/yml) 二、Spring Boot入门 1、一个入门程序需求 2、步骤 2.1 创建Maven工…

朋友圈折叠·怎么办?

1.定时发圈 编辑好内容选定不同时间自动发送,防止太集中发好几条或者忘记发圈。在右侧选择要发圈的号和自定义时间。 2.自动跟圈 系统折叠朋友圈很大一部分原因就是检测到这段话是复制粘贴的文字。 设置跟圈后,可以让您系统上的微信,自动转…