b1_initial: Main initialization functions

initialR Documentation

Main initialization functions

Description

Main initialization functions.

Usage

  initial.em.gbd(PARAM)

  initial.RndEM.gbd(PARAM)

Arguments

PARAM

a list of uninitialized parameters, as usual, the returned values of set.global(), to be initialized according to data (inside PARAM).

Details

initial.em.gbd() takes in a template of PARAM (uninitialized), and usually is available by calling set.global(), then return an initialized PARAM which is ready for EM runs.

Internally, there are six different initializations implemented for the function initial.em.gbd() including prob.extend, prob.simple, qnorm.extend, qnorm.simple, extend, and simple. These methods are mainly based on transformation of original space of data (p-values and voxel locations) into more linear space such that the Euclidean distance more makes sense (fairly) to classify data in groups.

initial.RndEM.gbd() implement RndEM initialization algorithm based on repeated calling initial.em.gbd().

Note that all configurations are included in PARAM set by set.global().

Value

These functions return an initialized PARAM for EM runs based on pre-stored configuration within the input uninitialized PARAM.

Author(s)

Wei-Chen Chen and Ranjan Maitra.

References

Chen, W.-C. and Maitra, R. (2021) “A Practical Model-based Segmentation Approach for Accurate Activation Detection in Single-Subject functional Magnetic Resonance Imaging Studies”, arXiv:2102.03639.

See Also

set.global(), fclust(), PARAM.

Examples

library(MixfMRI, quietly = TRUE)
library(EMCluster, quietly = TRUE)
# .FC.CT$algorithm <- "em"
# .FC.CT$model.X <- "V"
# .FC.CT$ignore.X <- TRUE
.FC.CT$check.X.unit <- FALSE

### Test toy1.
set.seed(1234)
X.gbd <- toy1$X.gbd
PV.gbd <- toy1$PV.gbd
PARAM <- set.global(X.gbd, PV.gbd, K = 2)
PARAM.new <- initial.em.gbd(PARAM)
PARAM.toy1 <- em.step.gbd(PARAM.new)
id.toy1 <- .MixfMRIEnv$CLASS.gbd
print(PARAM.toy1$ETA)
RRand(toy1$CLASS.gbd, id.toy1)


.rem <- function(){

  ### Test toy2.
  set.seed(1234)
  X.gbd <- toy2$X.gbd
  PV.gbd <- toy2$PV.gbd
  PARAM <- set.global(X.gbd, PV.gbd, K = 3)
  PARAM.new <- initial.em.gbd(PARAM)
  PARAM.toy2 <- em.step.gbd(PARAM.new)
  id.toy2 <- .MixfMRIEnv$CLASS.gbd
  print(PARAM.toy2$ETA)
  RRand(toy2$CLASS.gbd, id.toy2)

}


MixfMRI documentation built on Sept. 8, 2023, 5:06 p.m.