Beta-parameter value during equilibration

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Beta-parameter value during equilibration

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?

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))

Thanks for your attention.
Leonardo


_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
Reply | Threaded
Open this post in threaded view
|

Re: Beta-parameter value during equilibration

Tiago Peixoto
Administrator
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 <[hidden email]>


_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool

signature.asc (849 bytes) Download Attachment
--
Tiago de Paula Peixoto <tiago@skewed.de>