Awesome
DPmixGGM
This folder contains source codes for the "GPU-powered Stochastic Shotgun Search for Dirichlet proces mixtures of Gaussian Graphical Models" by Chiranjit Mukherjee and Abel Rodriguez. Implementation and testing are done using CUDA SDK 4.0 on a platform of compute capability 1.3. When compiling on a different platform please set "ROOTDIR" and "CUFILES_sm_**" compatiable with the installed CUDA SDK version and compute capability of the platform.
The "DPmixGGM_SSS_main.cu" file contains tuning parameters for the algorithm, as elaborated below:
- Run the SSS or the MCMC by enabling either of the macros SSS and MCMC while disabling the other.
- Run GPU/CPU versions of the SSS by enabling / disabling the macro CUDA.
- Specify maximum number of mixture components that the model should accommodate (for pre-allocation of memory).
- Set SSS runtime parameters C, D, R, S, M, g, h, f, t.
- Set SSS number of chain parameters. User needs to provide at least one initial point.
- Set MCMC runtime parameters.
- Set hyperparameters of for the prior on (mu, K | G) with N0, DELTA0.
Complie source codes using the "make" command and run with "release/DPmixGGM_SSS.exe f9_n150_p50 3" command. Here 3 refers to maximum number of GPUs to engage for SSS when CUDA is enabled.
The program expects an input-data file (e.g. f9_n150_p50) in the DATA/ folder and at least one initialization point (e.g. f9_n150_p50_init1). The input-data file should specify n and p in the first row and then provide n rows of length p. The initial point data-file should specify n, p and L of the initial model configuration in the first row and xi-indices of the initial point in the second row. Subsequent L rows specify G_l (l=1:L).
A list of highest-score models is stored in folder RES/.