k-Core算法是一种用来在图中找出符合指定核心度的紧密关联的子图结构,在k-Core的结果子图中,每个顶点至少具有k的度数,且所有顶点都至少与该子图中的 k 个其他节点相连。k-Core通常用来对一个图进行子图划分,通过去除不重要的顶点,将符合逾期的子图暴露出来进行进一步分析。k-Core由于其线性的时间复杂度和符合直观认识的可解释性,在风控金融,社交网络和生物学上都具有较多的应用场景。

算法原理

  k-Core算法是一种子图挖掘算法,用于寻找一个图中符合指定核心度的顶点的集合,即要求每个顶点至少与该子图中的其他k个顶点相关联。如图1所示,分别对应1-Core,2-Core和3-Core,任何一个图,在不包含孤立顶点的情况下,都是1-Core的。

  k-Core算法的过程也是非常简单的,一共分为两步,其实两步所做的内容是一样的,至于为什么要分两步执行同一个过程,可以自行思考一下。

Input:图G,核心度k
Step 1:将图G中度数小于k的顶点全部移除,得到子图G'。
Step 2:将图G'中度数小于k的顶点全部移除,得到新子图G''。该子图G''就是最终k-Core划分的结果子图。

  图2中我们给出了一个简单的3-Core子图划分的过程。

算法应用

  k-core算法通常用来找出一个图中符合指定k核心度的子图,该子图在图中承担着核心的地位,核心度越高,子图越小,该子图对应的核心度也越大。从某种意义上来说核心度划分的子图在原图中承担着比较重要的角色,如图的起源和演化趋势追溯,图中介识别等。具体的应用场景有很多,大家可以参考一篇论文:k-core: Theories and applications。

为什么黄色的点也是core1呢,明明连接了5个点,因为它只连接了一个蓝色的点。

作者:圈圈_Master
链接:https://www.jianshu.com/p/f495f8219b56
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

图算法之k-Core相关推荐

  1. python实现k core算法_Python core.take方法代码示例

    # 需要导入模块: from numpy import core [as 别名] # 或者: from numpy.core import take [as 别名] def test_equal_to ...

  2. python实现k core算法_python实现密度聚类(模板代码+sklearn代码)

    本人在此就不搬运书上关于密度聚类的理论知识了,仅仅实现密度聚类的模板代码和调用skelarn的密度聚类算法. 有人好奇,为什么有sklearn库了还要自己去实现呢?其实,库的代码是比自己写的高效且容易 ...

  3. python实现k core算法_python实现k-近邻算法

    参考:<机器学习实战>- Machine Learning in Action 一. 必备的包 实现此算法需要准备以下的包: • matplotlib,用于绘图 • numpy,数组处理库 ...

  4. 灭龙奥义•红莲爆炎刃

    稠密子图发现算法综述 1. 研究背景 2. 理论基础 2.1 图论基础知识 2.2 密度度量方式 2.2.1 相对密度和绝对密度 2.3 相似度度量 2.4 密集组件定义 2.5 稠密子图模型 2.5 ...

  5. 经典算法书籍推荐以及算法书排行【算法四库全书】

    经典算法书籍推荐以及算法书排行[算法四库全书] 作者:霞落满天   https://linuxstyle.blog.csdn.net/    https://blog.csdn.net/21aspne ...

  6. 这是我见过最卡通的 Python 算法了,通俗易懂

    普通程序员,不学算法,也可以成为大神吗? 对不起,这个,绝对不可以. 可是算法好难啊~~看两页书就想睡觉-- 所以就不学了吗?就一直当普通程序员吗? 如果有一本算法书,看着很轻松--又有代码示例--又 ...

  7. 图解Python算法

    普通程序员,不学算法,也可以成为大神吗? 对不起,这个,绝对不可以. 可是算法好难啊~~看两页书就想睡觉-- 所以就不学了吗?就一直当普通程序员吗? 如果有一本算法书,看着很轻松--又有代码示例--又 ...

  8. 最萌算法学习来啦,看不懂才怪!| 码书

    普通程序员,不学算法,也可以成为大神吗? 对不起,这个,绝对不可以. 可是算法好难啊~~看两页书就想睡觉-- 所以就不学了吗?就一直当普通程序员吗? 如果有一本算法书,看着很轻松--又有代码示例--又 ...

  9. python算法书pdf_Python算法很难吗?python神书《算法图解》PDF电子版分享给你!

    许多小伙伴后台私信柠檬说,python算法让自己很头疼,有没有可以让算法像小说一样有趣的书籍资料呢?看这里吧!柠檬为大家找到了这本<算法图解>的PDF电子版!让你在学习python的路上变 ...

  10. 这几本高分算法书助你稳步提升

    题图 | by pikisuperstar- www.freepik.com 西北望乡何处是,东南见月几回圆.又是一年中秋节,各位伙伴们是否都安好. 我猜肯定有人在家葛优躺,想好好休息一番:亦有人想趁 ...

最新文章

  1. 显示多文档标签_HTML常用基础标签,前端从入门到精通
  2. 第二阶段冲刺-个人总结09
  3. python中常见的几种错误
  4. c语言中buf内容怎么给指针,C语言 指针的使用
  5. java中break和return的区别_java 中return和break的区别
  6. highcharts.js两种数据绑定方式和异步加载数据的使用
  7. vacode允许c_使用VS code编译运行C,C++,Java程序
  8. form表单提交数据的同时上传文件代码示例
  9. vue中使用富文本编辑器wangEditor及踩坑
  10. matlab 图像的膨胀indilate和腐蚀imerode
  11. Linux Web基础
  12. 操作系统核心原理-4.线程原理(上):线程基础与线程同步
  13. MFC TeeChart 用法整理二
  14. 全源最短路 Johnson算法
  15. java -jar 命令隐藏黑窗口
  16. cdrx4自动排版步骤_如何在CorelDRAW软件排版CDR怎么快速排版技巧?
  17. html绑定drag事件,HTML-Drag事件(拖拽)
  18. 高性能计算服务器计算费价格,高性能计算云服务器价格表
  19. 如何使用百数低代码开发平台制作问卷调查表?
  20. 西藏:失落的旅游天堂?

热门文章

  1. python项目如何打包_python项目怎么打包运行?
  2. 2017计算机考研视频百度云盘,2017年考研数学视频资料
  3. vision里面pt与字号大小对应关系
  4. Go语言 for循环案例
  5. 用友nc系统服务器是云端吗,用友NC服务器硬件配置要求
  6. Amlogic Linux系列(三) 视频解码分析
  7. window重装系统
  8. 统信UOS家庭版使用体验
  9. 龙贝格算法(Matlab实现)
  10. Mac 安装 Java 反编译工具 JD-GUI