Code Monkey home page Code Monkey logo

pnet_prostate_paper's Introduction

Contributors Forks Stargazers Issues GPL-2.0 License LinkedIn


Logo

P-NET

P-NET, Biologically informed deep neural network for prostate cancer classification and discovery


view interactive network architecture · ·

Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. References
  5. License
  6. Contact
  7. Acknowledgements

About The Project

Logo

Biologically informed deep neural network for prostate cancer classification and discovery

Getting Started

To get a local copy up and running, follow these simple steps

Prerequisites

  • python 2.7, check environments.yml for list of needed packages

Installation

  1. Clone the repo

    git clone https://github.com/marakeby/pnet_prostate_paper.git
  2. Create conda environment

    conda env create --name pnet_env --file=environment.yml
  3. Based on your use, you may need to download one or more of the following

    a. Data files (needed to retrain models and generate figures). Extract the files under _database directory. If you like to store it somewhere else, you may need to set the DATA_PATH variable in config_path.py accordingly.

    b. Log files (needed to regenerate paper figures). Extract the files under _logs directory. If you like to store it somewhere else, you may need to set the LOG_PATH variable in config_path.py accordingly.

    c. Plots files (a copy of the paper images). Extract the files under _plots directory. If you like to store it somewhere else, you may need to set the PLOTS_PATH variable in config_path.py accordingly.

Usage

  1. Activate the created conda environment

    source activate pnet_env
  2. Add the current diretory to PYTHONPATH, e.g.

    export PYTHONPATH=~/pnet_prostate_paper:$PYTHONPATH
  3. To generate all paper figures, run

    cd ./analysis
    python run_it_all.py
  4. To generate individual paper figure run the different files under the 'analysis' directory, e.g.

    cd ./analysis
    python figure_1_d_auc_prc.py

    For Figure3 , make sure you run prepare_data.py before running other files

  5. To re-train a model from scratch run

    cd ./train
    python run_me.py

    This will run an experiment 'pnet/onsplit_average_reg_10_tanh_large_testing' which trains a P-NET model on a training-testing data split of Armenia et al data set and compare it to a simple logistic regression model. The results of the experiment will be stored under _logsin a directory with the same name as the experiment.
    To run another experiment, you may uncomment one of the lines in the run_me.py to run the corresponding experiment. Note that some models especially cross validation experiments may be time consuming.

License

Distributed under the GPL-2.0 License License. See LICENSE for more information.

Contact

Haitham - @HMarakeby

Project Link: https://github.com/marakeby/pnet_prostate_paper

References

  • Elmarakeby H, et al. "Biologically informed deep neural network for prostate cancer classification and discovery." Nature. Online September 22, 2021. DOI: 10.1038/s41586-021-03922-4
  • Armenia, Joshua, et al. "The long tail of oncogenic drivers in prostate cancer." Nature genetics 50.5 (2018): 645-651.
  • Robinson, Dan R., et al. "Integrative clinical genomics of metastatic cancer." Nature 548.7667 (2017): 297-303.
  • Fraser, Michael, et al. "Genomic hallmarks of localized, non-indolent prostate cancer." Nature 541.7637 (2017): 359-364.

Acknowledgements

This work was supported in part by the Fund for Innovation in Cancer Informatics, Mark Foundation, Prostate Cancer Foundation, Movember, and the National Cancer Institute at the National Institutes of Health.

pnet_prostate_paper's People

Contributors

marakeby avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

pnet_prostate_paper's Issues

A request to latest code.

I found that your code has been updated recently. python2 and python3 versions, tensorflow1.x and tensorflow2.x are both used in your code.I cannot run your code. Can you give me the latest code that can be run directly? Thank you very much for your kind consideration.

Error: No packages found in current win-32 channels matching: imageio

I am trying on windows conda env create --name pnet_env --file=environment.yml and getting this error

Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ....
Error: No packages found in current win-32 channels matching: imageio

when I am using same versions as mentioned in yml file, it is giving error of package version not found error.
conda env create --name pnet_env --file=environment.yml
Using Anaconda Cloud api site https://api.anaconda.org
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ..........
Error: No packages found in current win-32 channels matching: pip 18.1*

No such file or directory pathways_short_names.xlsx'

I tried to regenerate figure3 in the paper,but there is no 'pathways_short_names.xlsx' file under '~/_database/pathways' directory.
Could you please supply this file?
I am looking forward to your reply!!!
Thank you for your time.

environment problem

Problem 1, the lifelines in environment.yml need to install the dependency package Bottleneck, pip will install Bottleneck1.3.4 by default, but there are problems causing Bottleneck1.3.4 will always fail to install, so need to install Bottleneck1.3.2 in advance.

Problem 2, h5py in environment.yml did not find version 2.9.01.c, so install 2.9.0

Does PNET support training with multiple classes?

Dear @marakeby,

Thanks for developing and releasing PNET. I am trying to do exploratory analyses in some multimodal data using this framework. Labels are more than two, so I wonder whether a multiclass flag is already available by default in one of the reported architectures tested in the paper. I think small changes in the nn.py and/or model_params_ dictionary could allow this, yet I have been testing without much success (e.g. 'prediction_outputto None, and a alternativeloss` key).

Do you think there are already defaults for trying this? Thanks for any comments on this.

"ResolvePackageNotFound: - h5py=2.9.0l.c" Error

Hi,
I tried to create a p-net environment with "conda env create --name pnet_env --file=environment.yml", but failed. The messages are:

Collecting package metadata (repodata.json): done
Solving environment: failed

ResolvePackageNotFound: 
  - h5py=2.9.0l.c

So, how to solve this problem? Thanks.

No such file : pathways_short_names.xlsx

I tried to regenerate figure3 in the paper,but there is no 'pathways_short_names.xlsx' file under '~/_database/pathways' directory.
Could you please supply this file?
I am looking forward to your reply!!!
Thank you for your time.

environment.yml ERROR

File configuration error
"""
dependencies:
...
h5py=2.9.0l.c
...
"""
should be modify.
I try to change it:
"""
dependencies:
...
h5py
...
"""
the code is working.
However, I am not sure whether it will affect the subsequent analysis.
We look forward to your reply or solution !!

Thank you for your time

Environment fails at installing decorator: not compatible with Python 2.7

During installation I found a conflict with the decorator package version that is installed. Namely, the default version conda installs gets into conflict because it gets in conflict with python 2.7 , a default requirement.

I think this could be solved by downgrading decorator to a 2.6+ compatible version, I found that decorator 4.3.2 is valid based on the current decorator release list.

pip install decorator==4.3.2

Could you update this dependency into the environment.yml file? It could probably ease the installation process.

Thanks for dev and sharing of this repository.

Environment Error

Hi, Can someone please tell me how to rectify the environment error. I am encountering this error for a few days now and the code does not run. My base python version in 3.9. I am also attaching screenshots for the same. Any leads/help would be appreciated.

Thanks
Error 1
Error 2
Error 3

Prerequisites must be py2.7?

My conda base is python=3.9.
I create env in this base.
However, I am not sure whether it will affect the subsequent analysis.
We look forward to your reply !!
Thank you for your time

data

Dear @marakeby,

How do you get the data(P1000_final_analysis_set_cross_important_only.csv) ?And how to do data preprocessing?
Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.