Am 13.03.20 um 15:40 schrieb Leonardo Morelli:
Hi! I'm a beginner in this field, so I do apologize if my vocabulary isn't precise enough. Basically, I'm trying to use graph-tool library in order to perform the unsupervised clustering step of biological samples (10³-10⁴ _nodes _networks).
The following Is my current workflow: 1) state=minimize_nested_blockmodel_dl(g) 2) state.mcmc_sweep(niter=10,000) 3) mcmc__equilibrate(_state_)_
Question 1) Since I'm performing the equilibration with mcmc_equilibrate; is the mcmc_sweep step necessary in my workflow? Or I can just skip it?
No, it is not.
Question 2) This question concerns β parameter. I'm wondering if performing 2 rounds of equilibration sequentially, changing the value of β, does make any sense. In other words: 1) state=minimize_nested_blockmodel_dl(g) 2) mcmc_equilibrate(state, mcmc_args=dict(niter=10, β=1)) 3)mcmc_equilibrate(state, mcmc_args=dict(niter=10, β=1,000,000))
This is a kind of abrupt simulated anealing, and it can improve the minimization in some cases. However, I would recommend using the function mcmc_anneal() which achieves the same but slowly, which should behave better. Best, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>