V AC: V ertex-Centric Attributed Community Search

目录结构

 

VAC-PowerPonit

现有的问题
  • 属性限定查询难以估计:对于用户来说,为查询属性指定适当的条件不是一件容易的事情(难以人为规定),如果属性条件设置太苛刻(太多限制),则很可能返回一个空社区;如果属性条件设置太少,则很可能返回的社区过大,失去作用

  • 难以适应多类型属性:现有的产品只能够处理单一的属性,无法处理多类型的属性

提出新的问题 VAC问题:

旨在找到最大的联通子图,该联通子图满足下列几个条件

  • 包含查询节点集合

  • 满足结构紧密度(文章采用k-truss描述)、

  • 满足上述两个条件 具有最小的attribute score

  • 不存在满足上述三个条件更大的子图

结构紧密度
  • 采用k-truss来描述,其中k-truss的每一条边被k-2个三角形包围

属性紧密度

所以这个属性得分的设计还是不够灵活,不适合实际的场景

  • 对于地理(数字描述)属性

    • 可以采用欧式距离来计算score

    • 对于u v两个节点,假设两者都只具有空间属性(数字),利用欧式距离计算u v两个节点之间的Ascore(这里需要默认排序u v两个节点之间的属性)

  • 对于文本属性

    • 利用Jaccard距离去计算两者之间的得分

  • 假设u v两个节点既具有文本属性,又具有数字属性,权重分配来计算

  • 子图的 Attribute Score 任意两点Attribute Score的最大值(最差作为来剪枝条件)

该论文的成就
  • 提出新的模型VAC,证明了该问题是NP-Hard的

  • 两个Exact算法,第一个算法DFS-based算法(深度优先算法)

  • 启发式算法来提升性能,例如利用k-truss的属性来剪枝,利用最小得分的下限来尽早终止搜索(两个常用的方法,同样k-core也具有相同的剪枝特性)

  • approximate algorithm,迭代贪婪删除具有最大属性分数的顶点查询集

  • 在真实网络进行大量实验来证明算法的性能

Exact Algorithms
整体框架
  • 计算maximal k-truss(根据k-truss的所有k-truss都在最大k-truss里面)

  • 在maximal k-truss的基础上(而不是全图的基础上)计算所有包含查询点的k-truss,作为候选集合

  • 计算所有候选k-truss的attribute score,最小的attribute score的子图作为返回子图

DFS-based VAC Algorithm
  • Add Branch pruned

    • Ascore(v+M)>Ascore(H*) 意味着当前的得分已经比H *大,无论之后是左枝add还是右枝delete,这个得分永远存在,只会变大而不会变小,所以不可能成为最优结果

    • Ascore(v+M)=Ascore(H*) and |C+M|<|VH *| 如果当前得分和暂优结果相同,并且未来假设最大子图大小小于VH *那么就可以进行剪枝,因为哪怕保持这个得分,最后大小也不可能大于当前子图的得分

    • Ascore(v+M)=Ascore(H) 相当于未来最好的结果也是和H相同

  • Delete Branch pruned

  • Vertex Selection Order

BFS-based VAC Algorithm
  • 该算法的思路很普遍,就是不断打破最高得分的组合,拆分最高得分的点对,从而不断降低attribute score的大小

  • Lemma 1:对于不断拆分的k-truss,如果Hi是Hj的子集,那么可以安全删除Hj,简而言之,Hi可以由Hj继续拆分得到

2-Approximation Algorithm
  • 该算法利用近似的思想简化了问题(实际处理可以采用这样简单的思路,快速出成果)

  • 和查询点之间的Ascore作为Ascore

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Joker.lkl

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值