On 26.04.2018 12:52, Zahra Sheikhbahaee wrote: > Hi there, > > I am trying to include the edge weights by taking to account an edge > covariate matrix for the nested block model inference. Well, Each time I run > the code on my data set I get slightly different results both in terms of > number of blocks and the nodes in each block.
This is because the inference is made using MCMC, which is a stochastic algorithm. You have to run it multiple times, and select the result with largest posterior probability (if you only want a point estimate). > This is my code: > state = minimize_nested_blockmodel_dl(g, > state_args=dict(recs=[g.edge_properties["weight"]], > rec_types=["discrete-geometric"])) > state.draw(edge_color=prop_to_size(g.edge_properties["weight"], power=1, > log=True), > ecmap=(matplotlib.cm.gist_heat, .6), > eorder=g.edge_properties["weight"], > edge_pen_width=prop_to_size(g.edge_properties["weight"], 1, 4, > power=1, log=True), > edge_gradient=[], > vertex_text=g.vertex_properties["attribute"], > vertex_text_position="centered", > vertex_text_rotation=g.vertex_properties['text_rotation'], > vertex_font_size=10, > vertex_font_family='mono', > vertex_anchor=0, > output_size=[1024*2,1024*2], > output="DiscreteGeometric_%s.pdf"%(eventName)) Although it not important for the questions you have raised, it is not very useful to post incomplete code. Normally, for troubleshooting purposes, it is necessary for you to provide a _minimal_ and _self-contained_ program that anyone could execute and verify the problem you are reporting. > I appreciate if you explain what your approach would be and how I can run > graph-tool using the covariance matrix of edges in order to get > statistically reliable results? This is covered in detail in the HOWTO: https://graph-tool.skewed.de/static/doc/demos/inference/inference.html and also in many papers, e.g. https://arxiv.org/abs/1705.10225 https://arxiv.org/abs/1708.01432 However, I'm note sure what you mean by "covariance matrix of edges". The approach in question deals with graphs with edge covariates (a.k.a. weights). A covariance matrix usually refers to something else. > Is there also any way to get the full posterior of each node belonging to > each block? This is also explained in detail in the HOWTO: https://graph-tool.skewed.de/static/doc/demos/inference/inference.html#sampling-from-the-posterior-distribution Best, Tiago -- Tiago de Paula Peixoto <ti...@skewed.de> _______________________________________________ graph-tool mailing list graph-tool@skewed.de https://lists.skewed.de/mailman/listinfo/graph-tool