Skip to content

aschein/prgds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

prgds

Poisson-randomized gamma dynamical systems

Installing

An Anaconda environment is included at environment.yml. Run the following command in the home directory to create an Anaconda environment with all necessary packages and configurations:

conda env create -f environment.yml

This will create an environment called pgds. To acivate it, type:

conda activate prgds

Then you should be able to compile the code by changing directory to the src/ folder and typing

cd src/
make

What's included in src:

  • apf.pyx: Allocation-based Poisson factorization (APF). This is the base class for Poisson tensor decomposition models with non-negative priors.
  • bessel.pyx: Sampling algorithms for the Bessel distribution.
  • sbch.pyx: Sampling algorithms for the size-biased confluent hypergeometric (SCH) distribution.
  • pgds.pyx: Tensor generalization of Poisson--gamma dynamical systems (PGDS) of Schein et al. (2016).
  • prgds.pyx: Poisson-randomized gamma dynamical systems (PRGDS).
  • bpmf.pyx: Bayesian Poisson matrix factorization (BPMF).
  • bpmf_example.ipynb: Example using BPMF for count or matrix factorization.

Dependencies:

OSX users will have to install a version of the GNU Compiler Collection (GCC). If using Anaconda,

conda install -c conda-forge gcc

and then change the relevant line in setup.py. OSX users may run into issues compiling on MacOS 10.14 or greater which can be fixed by following the solutions in this thread.

OSX users will also have to install the GNU Scientific library (GSL). If using Anaconda,

conda install -c conda-forge gsl

OSX users with problems compiling may find answers to this question useful.

About

Poisson-Randomized Gamma Dynamical Systems

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •