est.SBA {graphon} | R Documentation |
Estimate graphons based on Stochastic Blockmodel approximation
Description
est.SBA
takes a 2-stage approach for estimating graphons
based on exchangeable random graph models. First, it finds a
Stochastic Blockmodel Approximation (SBA) of the graphon. Then,
it uses clustering information to estimate graphon using a consistent
histogram estimator.
Usage
est.SBA(A, delta = 0.5)
Arguments
A |
either
|
delta |
a precision parameter larger than 0. |
Value
a named list containing
- H
a
(K\times K)
matrix fo 3D histogram.- P
an
(n\times n)
corresponding probability matrix.- B
a length-
K
list where each element is a vector of nodes/indices for each cluster.
References
Airoldi EM, Costa TB, Chan SH (2013). “Stochastic blockmodel approximation of a graphon: Theory and consistent estimation.” In Burges CJC, Bottou L, Welling M, Ghahramani Z, Weinberger KQ (eds.), Advances in Neural Information Processing Systems 26, 692–700. Curran Associates, Inc.
Chan SH, Airoldi EM (2014). “A Consistent Histogram Estimator for Exchangeable Graph Models.” In Proceedings of the 31st International Conference on International Conference on Machine Learning - Volume 32, ICML'14, I-208–I-216.
See Also
Examples
## generate a graphon of type No.6 with 3 clusters
W = gmodel.preset(3,id=6)
## create a probability matrix for 100 nodes
graphW = gmodel.block(W,n=100)
P = graphW$P
## draw 17 observations from a given probability matrix
A = gmodel.P(P,rep=17)
## run SBA algorithm with different deltas (0.2,0.5,0.8)
res2 = est.SBA(A,delta=0.2)
res3 = est.SBA(A,delta=0.5)
res4 = est.SBA(A,delta=0.8)
## compare true probability matrix and estimated ones
opar = par(no.readonly=TRUE)
par(mfrow=c(2,2), pty="s")
image(P); title("original P")
image(res2$P); title("SBA with delta=0.2")
image(res3$P); title("SBA with delta=0.5")
image(res4$P); title("SBA with delta=0.8")
par(opar)