ICMg.combined.sampler {ICMg} | R Documentation |
ICMg.combined.sampler computes samples from the posterior of the assignments of datapoints (interactions and expression profiles) to latent components. From these we can then obtain component membership distributions and clusterings for genes.
ICMg.combined.sampler(L, X, C, alpha=10, beta=0.01, pm0=0, V0=1, V=0.1, B.num=8, B.size=100, S.num=20, S.size=10, C.boost=1)
L |
N x 2 matrix of link endpoints (N = number of links). |
X |
M x D matrix of gene expression profiles (M = number of nodes, D = number of observations). |
C |
Number of components. |
alpha |
Hyperparameter describing the global distribution over components, larger alpha gives a more uniform distribution. |
beta |
Hyperparameter describing the component-wise distributions over nodes, larger beta gives a more uniform distribution. |
pm0 |
Hyperparameter describing the prior mean of the expression profiles, should be zero. |
V0 |
Hyperparameter describing the variation of the component-wise expression profiles means around pm0. |
V |
Hyperparameter describing the variation of gene-specific expression profiles around the component-wise means. |
B.num |
Number of burnin rounds.* |
B.size |
Size of one burnin round.* |
S.num |
Number of sample rounds.* |
S.size |
Size of one sample round.* |
C.boost |
Set to 1 to use faster iteration with C, set to 0 to use slower R functions. |
* One run consists of two parts, during burnin the sampler is expected to mix, after which the samples are taken. Information about convergence (convN and convL are estimates of convergence for link and node sampling, respectively) and component sizes are printed after each burnin/sample round. For example: B.num=8, B.size=100, S.num=20, S.size=10, runs 800 burnin iterations in 8 rounds and then takes 20 samples with an interval of 10 iterations.
Returns samples as a list:
z |
S.num x N matrix of samples of component assignments for links. |
w |
S.num x M matrix of samples of component assignments for gene expression profiles. |
convl |
Vector of length (B.num + S.num) with convergence estimator values for link sampling. |
convn |
Vector of length (B.num + S.num) with convergence estimator values for node sampling. |
countsl |
(B.num + S.num) x C matrix of link component sizes. |
countsn |
(B.num + S.num) x C matrix of node component sizes. |
additionally all parameters of the run are included in the list.
Juuso Parkkinen
## Load data and set parameters data(osmo) C.boost = 1 ## Use faster C funtions alpha = 10 beta = 0.01 B.num = 10 B.size = 10 S.num = 10 S.size = 10 C = 24 pm0 = 0 V0 = 1 V = 0.1 ## Run sampling res = ICMg.combined.sampler(osmo$ppi, osmo$exp, C, alpha, beta, pm0, V0, V, B.num, B.size, S.num, S.size, C.boost) ## Compute component membership probabilities for nodes res$comp.memb <- ICMg.get.comp.memberships(osmo$ppi, res) ## Compute (hard) clustering for nodes res$clustering <- apply(res$comp.memb, 2, which.max)