对network-x图进行贪婪聚集聚类

AgglomCluster的Python项目详细描述


[![构建状态](https://travis-ci.org/mseal/agglom_cluster.svg?branch=master)](https://travis ci.org/mseal/aggreom廑cluster)


2004
http://arxiv.org/pdf/cond-mat/0309508v1.pdf
该算法有效地对大量节点进行聚类,是可用的最佳缩放聚类算法之一。它依赖于从networkx图的基础上建立和切片潜在集群的树状图。对每一个可能的元素配对进行评估,并按质量(见论文参考)递增顺序进行聚类。这种方法的贪婪之处在于避免回溯。登革热图上的每一次通过都假设先前的通过是总体质量的全局最小值。考虑到适当的边缘关联,这是一个相对安全的假设,可以大大提高算法的速度。

请参阅有关贪婪纽曼的缩放和精度问题的论文。


此实现使用堆来选择每次迭代时要群集的最佳对考虑图中的所有"n"边(o(n))
-堆大大减少了此搜索(o(log(n))


来自hac import greedyglusterer
clusterer=greedyglusterer()
[设置(范围(34))]


>空手道手手手手手道树状图。簇群(2)集([0,1,2,3,3,4,5,6,7,9,10,11,12,13,16,17,19,21]),
>集集([32,33,33,8,8,14,15,18,20,22,23,24,25,26,27,28,29,30,30,31])]


>空手道手手道树状图。簇群群(3)
;=>;[设置([32,33、8、14、15、18、20、22、23、24、25、26、27、28、29、30、31),
集合([1、2、3、7、9、12、13、17、21]),
集合([0、4、5、6、10、11、16、19])

[32、33、33、8、14、15、18、20、22、23、24、25、26、27、28、28、29、30、30、31],
集合([1、2、3、7、9、12、13、17、21]),
>集合([0、4、5、6、10、11、16、19])]



>空手手道树丛。labelellabels()
>>
>karatate/>{0:2,1:1,2:1,2:1,3:1,3:1,3:1,4:1,4:2,5:2,5:2,6:2,6:2,6:2,6:2,2,2 7:1,8:0,9:1,10:2,11:2,
12:1,13:1,14:0,15:0,16:2,17:1,18:0,19:2,20:0,21:1,22:0,
23:0,24:0,25:0,26:0,27:0,28:0,29:0,30:0,31:0,32:0,33:0}

#=>;[集合([0,33,9,11,12,14,15,17,18,19,21,26,29]),
集合([32,1,2,3,7,8,13,20,22,30]),
集合([23,24,25,27,28,31]),
集合([16,10,4,5,6])]维基百科页面上示例的得分(大量使用和调查表明,它不会影响结果的质量,只是很难匹配引用论文的精确结果)
-http://en.wikipedia.org/wiki/modularity(networks)
*不处理断开连接的组件(除非它们是大小为1的组件)
*节点重新标记很混乱(添加了散列节点依赖项)
*树状图爬行用于两个不清楚的单独目的ly-defined/called

问题和自述文件外
*请考虑使用scikit稀疏矩阵生成Dengrogram作为优化
*将群集进程转换为支持多线程/进程的版本
*考虑与scikit聚合群集的接口/能力对等
*添加评估函数除最初定义的质量之外的聚类选项
*一些方法可以使用文档

使用`.cluster()`处理图形。

使用`.clusters()`和`.labels()`获得所需的群集结果。另外,这个类还有一些内置的绘图方法`.plot()`和`.plot_quality_history()`.


|1.5 S 28 MB
10000 80000 350 S 2.5 GB
更多尺寸

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用JNA创建同一库的多个实例?   java在将Graphql查询作为JSON字符串传递时收到意外的令牌错误   OAuth2 oltu的java问题   java桌面应用程序使用的好的嵌入式数据库是什么?   java Firebase数据库高级查询选项   java正在使磁盘上的EhCache元素过期   java 安卓还原处于backstack中的片段的实例状态   XMemcached中的java异步集   java TimescaleDB是否使用与Postgresql完全相同的JDBC驱动程序?   java从网站c读取信息#   检查java Android中的字符串是否只包含数字和空格   c#如何向web服务发送特殊字符?   grails无法调用需要java的方法。lang.类参数?   java我在组合框中调用的方法不会运行所有代码,它只运行部分代码   java发送带有标头的HTTP GET请求