Block number limits in community detection with metadata
Hi, I am using the minimize_blockmodel_dl() function and the LayeredBlockState class to conduct community detection with metadata. I would like to know if it is possible to specify the block number limits separately for the user clusters and the metadata clusters (instead of the total block number limit) during the SBM inference? Since we want to have different granularity for user clusters and metadata clusters. (P.S. I tried using nested SBM and merging separately the user clusters and the metadata clusters. It worked to some extent, but it seems impossible to accurately control the final number of clusters, which we might need to.) Thanks! Yan -- Sent from: http://main-discussion-list-for-the-graph-tool-project.982480.n3.nabble.com/
Am 30.04.20 um 17:47 schrieb Yan Xia:
Hi,
I am using the minimize_blockmodel_dl() function and the LayeredBlockState class to conduct community detection with metadata. I would like to know if it is possible to specify the block number limits separately for the user clusters and the metadata clusters (instead of the total block number limit) during the SBM inference? Since we want to have different granularity for user clusters and metadata clusters.
(P.S. I tried using nested SBM and merging separately the user clusters and the metadata clusters. It worked to some extent, but it seems impossible to accurately control the final number of clusters, which we might need to.)
You can initialize the BlockState from a partition that contains the desired number of groups, and then call BlockState.multiflip_mcmc_sweep(d=0, psplit=0, pmerge=0) which will preserve the number of groups in both partitions. Best, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>
participants (2)
-
Tiago de Paula Peixoto -
Yan Xia