OLAK:An Efficient Algorithm to Prevent Unraveling in Social Networks论文笔记

锚定k核算法优化
本文提出了一种基于洋葱层结构的锚定k核算法(OLAK),解决了大规模图上的锚定k核问题。该算法通过减少候选锚点数量、高效追随者查找和早期终止策略,显著提高了计算效率。实验在多个现实数据集上验证了算法的有效性和高效性。

摘要
作者在文中主要研究了k-core问题。给定一个图G,一个整数k和一个预算(budget)b,作者的目标是识别G中的b个顶点,这样就可以确定,诱导子图J,除了b个顶点外,至少有k个邻边。这个问题是由Bhawalkar和Kleinberg等人在社交网络用户参与的背景下提出的,在社交网络中,如果用户参与的好友少于k,那么他/她可能会离开某个社区。这个问题被证明是NP困难的,不可近似。提出了一种有界树宽图的多项式时间算法。然而,这种假设通常不适用于现实生活中的图形,而且它们的技术不能扩展到处理一般图形。
基于此,我们提出了一种有效的算法,即基于洋葱层的锚定k核算法(OLAK),用于求解大规模图上的锚定k核问题。为了方便计算锚定k核,我们设计了一个洋葱层结构,它是由一个简单的洋葱削皮算法生成的,对图中的一小组顶点。结果表明,最佳锚点的计算可以简单地在洋葱层的顶点上进行,大大减少了搜索空间。
基于这种洋葱结构,作者为了计算更加快,对于有效的候选集、early termination以及修剪做了进一步研究。实验中在10个和现实相关的数据及上做了宽泛综合的实验,表明了作者所提出算法的有效性和高效性。

实验:
①文章主要和什么方法进行对比。为了比较算法的有效性,文章和5种算法进行比较,他们分别是Rand,Rand1,Rand2,Degree和Exact。
②实验数据集。实验中使用了生活中常见的十种数据集。
Yelp:
DBLP:
Others:

第一部分 介绍
第二部分 前言

2.1 问题定义
第三部分 我们的方法(OUR APPROACH)
3.1 动机(Motivation)
3.2 Reducing # Candidate Anchors
3.3 Efficently Finding Followers
3.3.1 The Onion Layer Structure
3.3.2 Onion Layer based Follower Computation
3.4 The OLAK Algorithm
3.4.2 Upper Bound based Pruning
3.4.3 Combining the Elements
3.5 The setting for Different Vertex Costs
第四部分 实验评估
4.1 实验环境设置
算法介绍、数据集准备、参数设置
4.2 有效性
4.2.1 贪心算法的有效性
4.2.2 案例研究
4.3 效率
4.3.1 Evaluation of Individual Techniques
4.3.2 Performance Evaluation
第五部分 相关工作
第六部分 总结
k-core问题是由Dediman在参考文献【23】中提到的图方面的重要问题。它应用在了社会蔓延、事件监测、网络分析、网络可视化、网络拓扑、密集子图问题、影响研究、图聚类、图的模型有效性、软件系统的结构分析和蛋白质功能预测方面。前人对其进行了广泛的研究,如B.Z.提出了一种限行时间内内存内的算法去计算图内的k-core;W.C.提出了I/O高效算法去计算K-core但是却不能满足一台机器的内存(耗内存)。因此作者的目的是提出一种算法去解决k-core内存计算问题,提出了一种内存解决方案,具体方法是可以通过将候选锚的核心数设为无穷大并插入其边缘来实现。(实验中的baseline2提到)。
社会网中的engagement dynamic得到了广泛的研究,在这个研究领域中,防止network unraveling的解决方法由Bhawalkar 和 Kleinberg 等人提出来,他们把这个问题看成是anchored k-core 问题。这是由于k-core的degeneration(退化)性质可以去量化实际社会网络中的engagement dynamics。unraveling process(土崩瓦解的过程)停止当remaining engaged individuals对应于社会网络中的k-core。可是,the anchored k-core 问题已经被证明为平面图上的NP-hard问题。在参考文献【7】中,提出了一个解决k-core的算法,但是它在实际社会网中不可用。本文时第一个提出解决the anchored k-core问题的、且在大型网络中可以用的实际可操作的算法。
第七部分 致谢
第八部分 参考文献
文中提到较为频繁的参考文献:
[7] K. Bhawalkar, J. Kleinberg, K. Lewi, T. Roughgarden, and A. Sharma. Preventing unraveling in social networks: the
anchored k-core problem. SIAM Journal on Discrete Mathematics, 29(3):1452–1475, 2015.

文章总结:

  1. K-core算法于1983年提出,具体的含义是什么?
  2. 本文是否和其他的方法进行了对比?其中K-core算法是基于“多项式宽束度”提出的算法,是一种用于数据挖掘灵越的聚类算法,不是作者的原创方法。本文的主要思路是在自己提出的问题上一步一步的优化而展开的。所以没有具体的对比方法。
  3. 作者Xuanmin Lin 是数据库领域的以为牛人,他从事了多年的数据库研究领域的工作,可以查看的主页了解下他发的文章。
**项目名称:** 基于Vue.js与Spring Cloud架构的博客系统设计与开发——微服务分布式应用实践 **项目概述:** 本项目为计算机科学与技术专业本科毕业设计成果,旨在设计并实现一个采用前后端分离架构的现代化博客平台。系统前端基于Vue.js框架构建,提供响应式用户界面;后端采用Spring Cloud微服务架构,通过服务拆分、注册发现、配置中心及关路由等技术,构建高可用、易扩展的分布式应用体系。项目重点探讨微服务模式下的系统设计、服务治理、数据一致性及部署运维等关键问题,体现了分布式系统在Web应用中的实践价值。 **技术架构:** 1. **前端技术栈:** Vue.js 2.x、Vue Router、Vuex、Element UI、Axios 2. **后端技术栈:** Spring Boot 2.x、Spring Cloud (Eureka/Nacos、Feign/OpenFeign、Ribbon、Hystrix、Zuul/Gateway、Config) 3. **数据存储:** MySQL 8.0(主数据存储)、Redis(缓存与会话管理) 4. **服务通信:** RESTful API、消息队列(可选RabbitMQ/Kafka) 5. **部署与运维:** Docker容器化、Jenkins持续集成、Nginx负载均衡 **核心功能模块:** - 用户管理:注册登录、权限控制、个人中心 - 文章管理:富文本编辑、分类标签、发布审核、评论互动 - 内容展示:首页推荐、分类检索、全文搜索、热门排行 - 系统管理:后台仪表盘、用户与内容监控、日志审计 - 微服务治理:服务健康检测、动态配置更新、熔断降级策略 **设计特点:** 1. **架构解耦:** 前后端完全分离,通过API关统一接入,支持独立开发与部署。 2. **服务拆分:** 按业务域划分为用户服务、文章服务、评论服务、文件服务等独立微服务。 3. **高可用设计:** 采用服务注册发现机制,配合负载均衡与熔断器,提升系统容错能力。 4. **可扩展性:** 模块化设计支持横向扩展,配置中心实现运行时动态调整。 **项目成果:** 完成了一个具备完整博客功能、具备微服务典型特征的分布式系统原型,通过容器化部署验证了多服务协同运行的可行性,为云原生应用开发提供了实践参考。 资源来源于络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值