MolecularAI / aizynthfinder

A tool for retrosynthetic planning
https://molecularai.github.io/aizynthfinder/
MIT License
588 stars 134 forks source link

Are there any detailed instructions to get those trained policy network from scratch? #27

Closed queliyong closed 3 years ago

queliyong commented 3 years ago

Hi,I wanna train policy network by myself using your data named 'dummy_raw_template_library', but when I tried to use 'preprocess_expansion' command, just three npz files were produced, and raised some error messages 'raise MoleculeException(f"Unable to sanitize molecule ({self.smiles})") aizynthfinder.chem.MoleculeException: Unable to sanitize molecule (c1ccccc1(C)(C))'. Do u have any ideas? Thank u very much.

SGenheden commented 3 years ago

Hello.

Thank for your feedback.

I would be the first to admit that the information how to train your own policy network is a little bit thin. There is the documentation here: https://molecularai.github.io/aizynthfinder/training.html . Which I am sure you have already checked.

The 'dummy_raw_template_library' file was created for unit test purposes and does not really work for creating an expansion network. I could not reproduce your exception, and if I used the following config.yml file I could run the preprocess_expansion script myself

output_path: "."
file_prefix: "dummy"
split_size:
        training: 0.6
        testing: 0.2
        validation: 0.2

If you run into the sanitation problems with your own set of templates, you always add the following option to your config file.

remove_unsanitizable_products: False

Hope this help.

And please feel welcome to suggest something concreate that we can implement and that would improve the ease of creating your own expansion policy.