FactorNet
FactorNet copied to clipboard
pybedtools error
executing the testcases results in the following error:
Traceback (most recent call last):
File "train.py", line 301, in
Even after updating pybedtools or changing of the genome the error still occurs.
Update: I managed to work around this error by removing all non regular chrs from the blacklist.bed.gz.
Further trying to execute the example train.py led me to other errors in the model building step though:
33885000 training samples
27862 validation samples
Building model
Traceback (most recent call last):
File "train.py", line 301, in
These are my current versions:
Keras 1.1.1 Keras-Applications 1.0.7 Keras-Preprocessing 1.0.9 tensorflow 1.5.1 tensorflow-estimator 1.14.0 tensorflow-tensorboard 1.5.1 torch 1.1.0
What are the recommended versions of keras, tensorflow, etc.? Currently I am using keras=1.1.1 (as I greped the version out of https://github.com/uci-cbcl/FactorNet/blob/bef6f6b38e81d362162a106dc8a726ecae910138/models/E2F1/onePeak_Unique35_DGF/model.json) but could not figure out which tensorflow version suits accordingly https://pypi.org/project/tensorflow/#history
Not sure this is an issue with FactorNet, I feel like it is just really picky when it comes to the versions of the underlying software. I managed to create a conda environment with specific library versions which seems to do the trick for me (initially having similar errors as @TripelB , also filtered non standard chromosomes from the blacklist files).
Below is the conda env I used to get FactorNet to run:
name: factornet
channels:
- conda-forge
- bioconda
- defaults
- pytorch
- anaconda
dependencies:
- python =2.7.15
- mkl
- mkl-service
- theano =0.9.0
- pyfasta
- pybigwig =0.2.8
- pybedtools
- parmap
- keras =1.2.2
- cuda80
- cudnn
- numpy =1.10.4
- scipy =0.17.0
- matplotlib
Maybe this helps someone else, too.
EDIT: I updated the yaml to be more specific for pyBigWig (which failed on another system where a different version was obtained via conda) and added matplotlib in order to be able to run the
predict.py