Coder Social home page Coder Social logo

hips / neural-fingerprint Goto Github PK

View Code? Open in Web Editor NEW
492.0 492.0 159.0 51.21 MB

Convolutional nets which can take molecular graphs of arbitrary size as input.

License: MIT License

Python 19.24% TeX 67.61% Shell 0.09% PostScript 9.22% HTML 3.84%

neural-fingerprint's People

Contributors

dougalm avatar duvenaud avatar nanxstats avatar rpadams avatar sdvillal 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  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

neural-fingerprint's Issues

Malari Dataset

Hi, I am wondering that malaria dataset is from real experiments or calculation?

Syntax Errors, util.py not found, cannot import name 'logsumexp' from 'autograd.scipy.misc'

As title says, I've encountered a whole handful of issues attempting to use this software.

After building, I had to manually place packages and libs in my miniconda3 folder. Maybe I could've specified some parameters to install it correctly? Not sure. Here are the real problems:

Attempting to import neuralfingerprint from any IDE or location within terminal outside of neuralfingerprint folder results in: 'util.py' not found. Not a problem right? Just append the path of that folder to my sys.path....

Once fixing the util.py problem, I receive many syntax errors regarding print statements.
E.G.:
print "Total number of weights in the network:", num_weights
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Total number of weights in the network:", num_weights)?

Once fixing those manually, I get the next problem!

File "/mnt/c/Users/came/Documents/neural-fingerprint-master/neural-fingerprint-master/neuralfingerprint/build_convnet.py", line 2, in
from autograd.scipy.misc import logsumexp
ImportError: cannot import name 'logsumexp' from 'autograd.scipy.misc' (/home/azn/miniconda3/lib/python3.9/site-packages/autograd/scipy/misc.py)

I'm no longer interested in putting out fires so I figured I'd post here despite the forum being inactive for the last four years, fingers crossed y'all are still paying attention to this page!

Please let me know if there are any fixes for these issues or if y'all know what's going on here.

I believe it could just be a mismatch between Python3 and Python2, I'm not very thrilled about having to swap python3 to python2 for this so I figured it would be good to ask first.

Many thanks!

Some details about Hyperparameter Optimization?

I am so interested in your method that I had to ask another following issue:

Hyperparameter Optimization
"To optimize hyperparameters, we used random search. The hyperparameters
of all methods were optimized using 50 trials for each cross-validation fold. The
following hyperparameters were optimized: log learning rate, log of the initial weight scale, the log
L2 penalty, fingerprint length, fingerprint depth (up to 6), and the size of the hidden layer in the
fully-connected network. Additionally, the size of the hidden feature vector in the convolutional
neural fingerprint networks was optimized."

Could you give me some suggestions about Hyperparameter Optimization?
Or any empirical range about these parameters?

Best regards,
YJ

Strange predictions

Hello. I'm trying neuralfingerprint, and have faced strange behaviour:
When i apply the model to csv file, which contains only smiles:
CCC
FFF
i get the result:
CCC,-3.4293943508031028
FCF,-2.6789522776231816

but when i put only CCC, i get another result.
CCC,-3.0120117325667533

If there are same molecules in input file, it gives same results for them, like:
CCC,-3.0120117325667533
CCC,-3.0120117325667533

The predictions are reproductable (dont change after another run), but the exact values depends on the contents of test csv file. I use your example.

smiles = read_smiles(task_params['experiment_data_file'])
result = predict_func(smiles)

I'm wondering if it is a bug or a feature.

experiment scripts import error

Hello,
I was trying to launch script launch_experiments.py in directory experiment_scripts and got error:
Traceback (most recent call last):
File "launch_experiments.py", line 11, in
from nfpexperiment import util
ImportError: No module named nfpexperiment

It seesm that there is not module nfpexperiment. Could you please provide this module?
Thanks in advance.

Binary Cross Entropy instead of MSE

Hi,

maybe a quite simple question but in your Regression example you pass the

'nll_func': <function neuralfingerprint.util.rmse as the nll_func via build_conv_deep_net to the build_standard_net function. However, I am not sure how the utils.rmse relates to the mean_squared_error function that is being used in the build_standard_net.

My goal is to adapt the example code so that I can do a binary classification.
I tried to replace the default loss from build_standard_net with the binary_cross_entropy. But I think I am missing something because the results do not make sense:

Fingerprint BitVector to Int array

Currently in the file rdkit_utils.py a BitVector is obtained using RDKit, then transformed to a BitString, and then iteratively converted to a np array

AllChem.GetMorganFingerprintAsBitVect(
        m, fp_radius, nBits=fp_length)).ToBitString()

np.array([list(s) for s in A], dtype=int)

Can be written as
DataStructs.ConvertToNumpyArray(AllChem.GetMorganFingerprintAsBitVect(m, fp_radius, Bits=fp_length), np.zeros((1,)))

as seen in
http://www.rdkit.org/Python_Docs/rdkit.DataStructs.cDataStructs-module.html#ConvertToNumpyArray

Utils not found

After the neuralfingerprint install (pip install -e /my_dir/, I'm trying to run the examples (regression.py), but I get a 'utils' not found error...
Can you please help, thanks!

Some bugs about mol_graph.py

Hello,

I have met a bug about


mol_graph.py", line 79, in graph_from_smiles
raise ValueError("Could not parse SMILES string:", smiles)
ValueError: ('Could not parse SMILES string:', 'CCCCCCCCCCCCN(C)CC(=O)O')"


As described above, the "[N]" in the smiles couldn't be parsed. I wonder if this question is mainly due to the limitation of rdkit package.
Or would you have any better solutions about this bug?

Best regards,
YJ

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.