Giter Club home page Giter Club logo

molgan's People

Contributors

agitter avatar naveenarun avatar nicola-decao avatar pykao 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

molgan's Issues

This seems to be a bug.

output = activation(output) if activation is not None else activation

If activation is None, it seems to return output rather than activation. This problem is also in line 24 of the same file. please check.

Thank you

How can I check the generated results?

Hello. I am a Japanese student.
Sorry if there is an inappropriate expression.

I have 2 questions.

  • How can I output the generated results?
  • What is different from paper experiments?

Thank you

Inquiry about 'la'

Hello. I am a student at Korea university.

I try to implement MolGAN with Pytorch. Your implementation is very helpful. Thank you.
In the meantime, I have a question. I referenced the article and the previous Graph Net, but I still do not know what 'la' is.
'la' plays an important role in the model, what is 'la'?

Answers I'll wait. Thank you.

Question about the bond type setting

Thanks for your great work.

While I have a question about the bond type set, in your paper you say the bond_type Y is set to 4 (single, double, triple, and no bond).

However, the default result of function

def generate(self, filename, add_h=False, filters=lambda x: True, size=None, validation=0.1, test=0.1):

may contain 5 bond types (and also aromatic bonds)

I wonder if there is any method to abandon the aromatic type or am I just missing something?

Bigger molecules

Hello!

Thank you for the implementation of MolGAN

How should I update your code to use with bigger molecules (~20-30 heavy atoms)?

It seems, that only passing another dataset (with bigger molecules) after 100 epochs model generated very bad SMILES like these:

*.*.*.*.*CC.C.C.C.C.C.C.C.C.C.C.C.CC.CCN.CCNC.O.O.O
*.*.*.*.*.*.*.*.*C(*)C.C.C.C.C.C.C.CC.CCN.CCO.CO.N.N
*.*.*.*.*.*.*.*.*.*=C(C)CC.C.C.C.C.C.C.CC.CCC.CCCCO
*.*.*.*.*.*C.*C*.C.C.C.C.C.C.C.C=C.CC.CC(C)F.CNC.N.O
*.*.*.*.*.*.*.*.*.*C.*CC.C.C.C.C.C.C.C.C.CCNCO.CN.O
*.*.*.*.*.*.*.*.*.*OCC.C.C.C.CCC.CCCC.CSC.N.N.O.O
*.*.*.*.*.*.*.*.*.*.*.*.*CCOC(C)C*.*CN=*.C.C.C.CC.O
*.*.*.*.*.*.*CC.C.C.C.C.C.C.C.C.C.C.C=CC.CC.CC(C)S.N.N
*.*.*.*.*.*.*.*.*C.*C.C.C.C.C.C.C*CC.CC.CC.COO.N.O
*.*.*.*.*.*.*.*C(*)(*)O.*CC(C)CC.C.C.C.CCC.CCCN.N.O
*.*.*.*.*.*.*.*.*.*.*.*.*CN.*O.C.C.C.C.CCC.CCCC.O.S
*.*.*.*.*.*.*.*.*.*C.*C.*CSCC(C)C(CC)C(C)*C(C)C.C.C
*.*.*.*.*.*.*CC(C)CCC.*N.C.C.C.C.C.C.C.CN.CO.F.O.O.O
*.*.*.*.*.*.*.*.*C.*C.*C.*C(C)C.C.C.C.C.C.C.CC.CCN.O
*.*.*.*.*.*.*CC.*NC.C.C.C.C.C.C.C.C.C.CC.N.N.NCC(O)O
*.*C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.CC.CNCO.N.N*C(=O)O.O
*.*.*.*.*.**.*C.*CC=[SH]*.C.C.C.C.C.C.C.CC.CC.CCC.N.O
*.*.*.*.*.*.*.*C(C)(F)CC(C)CC.C.C.C.C.C.CC.CCC.N.N.N.O

data problem

I meet errors when I convert the data format using sparse_molecular_dataset.py, like this:

[02:21:06] Explicit valence for atom # 1 C, 5, is greater than permitted
[02:21:06] ERROR: Could not sanitize molecule ending on line 9097
[02:21:06] ERROR: Explicit valence for atom # 1 C, 5, is greater than permitted
[02:21:06] Explicit valence for atom # 1 C, 5, is greater than permitted
[02:21:06] ERROR: Could not sanitize molecule ending on line 35785
[02:21:06] ERROR: Explicit valence for atom # 1 C, 5, is greater than permitted
[02:21:06] Explicit valence for atom # 4 C, 5, is greater than permitted
[02:21:06] ERROR: Could not sanitize molecule ending on line 62866
[02:21:06] ERROR: Explicit valence for atom # 4 C, 5, is greater than permitted
[02:21:06] Explicit valence for atom # 2 C, 5, is greater than permitted
[02:21:06] ERROR: Could not sanitize molecule ending on line 66832

and finally, the error message is

Traceback (most recent call last):
  File "sparse_molecular_dataset.py", line 326, in <module>
    data.generate('data/gdb9.sdf', filters=lambda x: x.GetNumAtoms() <= 9)
  File "sparse_molecular_dataset.py", line 53, in generate
    self._generate_AX()
  File "sparse_molecular_dataset.py", line 127, in _generate_AX
    pr = ProgressBar(60, len(self.data))
  File "/home/zeyuwen/workspace/anaconda3/envs/tf/lib/python3.6/site-packages/progress_bar.py", line 113, in __init__
    self.title = title + ": "
TypeError: unsupported operand type(s) for +: 'int' and 'str'

Can you give me some advice?

ValueError: The passed save_path is not a valid checkpoint: //model.ckpt

Hi!
I have an error as below when I run exmaple.py.

'QED score': 0.5195647414042559,
'SA score': 0.7086636282519222,
'diversity score': 0.6641403755404658,
'drugcandidate score': 0.5692159133414297,
'la': 1.0,
'logP score': 0.3386603861602298,
'loss D': -66.3097,
'loss G': 32.144226,
'loss RL': -0.40582168,
'loss V': 0.2708291,
'novel score': 100.0,
'unique score': 0.5204460966542751,
'valid score': 80.69999814033508}
Traceback (most recent call last):
File "example.py", line 214, in
_test_update=_test_update)
File "/Users/owner/MolGAN/utils/trainer.py", line 170, in train
_test_step(self.model, self.optimizer, batch_dim, eval_batch, start_time, _test_update)
File "/Users/owner/MolGAN/utils/trainer.py", line 103, in _test_step
self.load(directory)
File "/Users/owner/MolGAN/utils/trainer.py", line 39, in load
saver.restore(self.session, '{}/{}.ckpt'.format(directory, 'model'))
File "/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/saver.py", line 1538, in restore
+ compat.as_text(save_path))
ValueError: The passed save_path is not a valid checkpoint: //model.ckpt

Please let me know how to start example.py more details.

Which part of the code addresses Table 3 of the paper?

Hello,

It is nice to see the codes for the very interesting paper. I was wondering which part of the code I should use to try to reproduce results from Table 3 (Comparison with different algorithms on QM9).

Thanks in advance.

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.