Disseny
Introducció
Section titled “Introducció”Durant les primeres etapes del descobriment de fàrmacs, el cribratge virtual basat en intel·ligència artificial/aprenentatge automàtic/aprenentatge profund s’ha convertit en una eina essencial.
En aquesta eina, s’utilitza un model entrenat per examinar (provar)
- un catàleg de molècules petites per identificar potencials candidats a fàrmacs contra una proteïna objectiu (per al descobriment de fàrmacs) o proteïnes d’un organisme contra un fàrmac (per a la reutilització de fàrmacs).
L’objectiu és o bé predir
-
si la molècula petita interactua amb la proteïna o no (anomenada predicció d’interacció fàrmac-diana que requereix un model classificador amb una sortida binària) o
-
un valor d’afinitat entre la molècula petita i la proteïna (anomenada predicció d’afinitat fàrmac-diana que requereix un model de regressió amb una sortida de valor continu).
Els mètodes de cribratge virtual basats en aprenentatge automàtic es poden categoritzar en dos tipus segons l’entrada:
- basat en lligand (només el compost/lligand es dona com a entrada) i
- entrada per parelles (tant el compost/lligand com la proteïna es presenten com a entrada).
DepChem
Section titled “DepChem”https://www.openchemistry.org/gsoc/
uv install deepchem
Instal·la UV:
curl -LsSf https://astral.sh/uv/install.sh | shsource $HOME/.local/bin/env
We are going to use a model based on tensorflow, because of that we’ve added [tensorflow] to the uv add
command to ensure the necessary dependencies are also installed
uv init chemcd chemuv add deepchem tensorflow[and-cuda]
Instal.la PyCharm
tar xzf pycharm-*.tar.gz -Ccd pycharm-*/binsh pycharm.sh
import deepchem as dc
tasks, datasets, transformers = dc.molnet.load_delaney(featurizer='GraphConv')train_dataset, valid_dataset, test_dataset = datasets
model = dc.models.GraphConvModel(n_tasks=1, mode='regression', dropout=0.2,batch_normalize=False)model.fit(train_dataset, nb_epoch=100)
metric = dc.metrics.Metric(dc.metrics.pearson_r2_score)print("Training set score:", model.evaluate(train_dataset, [metric], transformers))print("Test set score:", model.evaluate(test_dataset, [metric], transformers))
solubilities = model.predict_on_batch(test_dataset.X[:10])for molecule, solubility, test_solubility in zip(test_dataset.ids, solubilities, test_dataset.y): print(solubility, test_solubility, molecule)
El contingut d'aquest lloc web té llicència CC BY-NC-ND 4.0.
©2022-2025 xtec.dev