This repo is the official implementation for "Enemble of Single-Effect Neural Network" (ESNN) framework. It contains example code for running ESNN on continuous and binary classification data.
Python >= 3.7.4, tensorflow >= 2.1.0, tensorflow-probability >= 0.9.0, keras >= 2.3.1, matplotlib >= 3.1.2, numpy >= 1.17.2, Pillow >= 7.1.0, scikit-learn >= 0.21.3, scipy >= 1.4.1
- Regression example:
ESNN_regression.py
- Classification example:
ESNN_binary.py
- Example code to generate simulated data and to also run the "Sum of Single-Effects" regression model (SuSiE) (Wang et al. 2020):
simu_example.R
To run on your own data, one can simply change the file path in the code. The simulation file contains examples of how to generate case-control data in a genome-wide association (GWA) study under the liability threshold model and a toy regression example.
W. Cheng, S. Ramachandran, and L. Crawford. Uncertainty Quantification in Variable Selection for Genetic Fine-Mapping using Bayesian Neural Networks. iScience. 25(7): 104553.
For questions or concerns with the ESNN software, please contact Wei Cheng or Lorin Crawford.
We welcome and appreciate any feedback you may have with our software and/or instructions.