https://github.com/bayer-group/xbcf
Predicting BCF values with explanations
https://github.com/bayer-group/xbcf
bayer-not-classified bayer-reg-none bcf beat-not-applicable chemoinformatics deep-learning explainability machine-learning
Last synced: 4 months ago
JSON representation
Predicting BCF values with explanations
- Host: GitHub
- URL: https://github.com/bayer-group/xbcf
- Owner: Bayer-Group
- License: bsd-3-clause
- Created: 2022-10-24T14:51:56.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-02-13T08:41:36.000Z (almost 3 years ago)
- Last Synced: 2025-03-26T08:11:53.651Z (11 months ago)
- Topics: bayer-not-classified, bayer-reg-none, bcf, beat-not-applicable, chemoinformatics, deep-learning, explainability, machine-learning
- Language: Python
- Homepage:
- Size: 1.69 MB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Citation: CITATION.cff
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# xBCF - Predicting bioconcentration factor with explainable deep learning
Open source project for predicting logBCF with explanations on SMILES level.
Find more detailed descriptions of the methodology in our research article: https://doi.org/10.1016/j.ailsci.2022.100047
## SMILES preprocessing
Make sure your input SMILES strings fulfill the CDDD requirements, i.e. mono-constituent organic molecules, desalted, and neutralized.
## Dependency on CDDD
The models in the project are built upon CDDD embeddings which depends on TF 1.X. The latest Python version supported TF1.X is 3.7. We have adjust all code dependencies to Python 3.7 to better fit different deployment platforms. Therefore, we suggest the following ways to install the CDDD package.
### Option I - customized way of using the official CDDD repo
1. Place the CDDD source code under `./src`
2. Place the CDDD model directory under `./models`
### Option II - an unofficial package
In this sister [repo](https://github.com/Bayer-Group/xsmiles-use-cases), an unofficial `.whl` file was packed with the CDDD source code and the default CDDD model.
Please refer to the repo for installation. And use this installation method at your own risk.
The script `src/attributor.py` works with both ways of setting up CDDD, make sure you modify `src/xbcf.py` accordingly.
For any questions, feel free to open issues.
## Model availability
Our MTL model as reported in our paper cannot be published due to the inclusion of internal secret data in the training set.
Nevertheless, an SVR model with good performance is published in the repo. And a linear regression model is also available as a simple baseline.
## Usage
The code has been tested with Python 3.7
Core dependencies:
- Tensorflow 1.13.0
```bash
python3.7 -m venv bcf_env
source ./bcf_env/bin/activate
pip install -r requirements.txt
python test.py
```
If everything goes well, the last step should print the attribution and predictions for two SMILES.
## Please cite
`Zhao, L., Floriane, M., Heberle, H., & Schmidt, S. (2022). Modeling bioconcentration factors in fish with explainable deep learning. Artificial Intelligence in the Life Sciences, 2, 100047. https://doi.org/10.1016/j.ailsci.2022.100047`
```bibtex
@article{Zhao_Modeling_bioconcentration_factors_2022,
author = {Zhao, Linlin and Floriane, Montanari and Heberle, Henry and Schmidt, Sebastian},
doi = {10.1016/j.ailsci.2022.100047},
journal = {Artificial Intelligence in the Life Sciences},
month = {December},
pages = {100047},
title = {{Modeling bioconcentration factors in fish with explainable deep learning}},
volume = {2},
year = {2022}
}
```