هذا المستودع هو التنفيذ الرسمي لـ Drughive ، وهو جهاز تلقائي متغير هرمي عميق تم تطويره لتصميم الأدوية القائم على الهيكل. ورقة jcim.


تم اختبار الرمز في البيئة التالية:
| برمجة | إصدار |
|---|---|
| بيثون | 3.9.16 |
| كودا | 11.6 |
| OpenBabel | 3.1.1 |
| Pytorch | 1.12.1 |
| بايتورش البرق | 2.0.0 |
| rdkit | 2021.09.5 |
تثبيت التبعيات باستخدام المتطلبات المدرجة في requirements.txt :
conda create -n drughive -c conda-forge -c pytorch -c nvidia -c rdkit --file requirements.txtgit clone https://github.com/jssweller/DrugHIVEيمكن تنزيل الأوزان النموذجية التي تم تدريبها من Zenodo:
wget -P model_checkpoints/ https://zenodo.org/records/12668687/files/drughive_model_ch9.ckpt لعينة من Drughive ، قم أولاً بضبط المعلمات في ملف تكوين مثال generate.yml . ثم ، قم بتشغيل الأمر التالي:
python generate_molecules.py config/generate.yml لعينة من السابق ، قم بتعيين zbetas: 1. في ملف التكوين.
لعينة من الخلفي ، قم بتعيين zbetas: 0. في ملف التكوين.
لأخذ عينات بين السابق والخلفي ، اضبط قيم zbetas بين 0. و 1. .
لإنشاء جزيئات مع تعديل البنية التحتية ، قم أولاً بتعديل المعلمات في ملف تكوين مثال generate_spatial.yml . ثم ، قم بتشغيل الأمر التالي:
python generate_molecules.py config/generate_spatial.ymlقبل تشغيل عملية التحسين ، يجب تثبيت أداة الإرساء Quickvina 2:
qvina2.1 في DrugHIVE/ أو في دليل مدرج في متغير PATH الخاص بك (على سبيل المثال ، /usr/bin/ ) لتحسين الجزيئات مع drughive ، قم أولاً بضبط المعلمات في ملف تكوين مثال generate_optimize.yml . ثم ، قم بتشغيل الأمر التالي:
python generate_optimize.py config/generate_optimize.ymlقم بتنزيل واستخراج مجموعة البيانات المكررة PDBBIND من http://www.pdbbind.org.cn/
قم بتنزيل جزيئات الزنك من https://zinc20.docking.org/ في تنسيق SDF أو Mol2. ضعها في دليل واحد.
لمعالجة مجموعة بيانات PDBBIND ، قم بتشغيل:
python process_pdbbind_data.py < path/to/PDBbind/directory >لمعالجة مجموعة بيانات الزنك ، قم بتشغيل:
python process_zinc_data.py < path/to/ZINC/directory > -o data/zinc_data/zinc_data.h5 -ext < file_extension > هنا ، يمكن أن يكون <file_extension> أحد sdf أو mol2 .
أولاً ، اضبط معلمات التدريب في ملف تكوين config/train.yml مثال. تأكد من تعيين data_path_pdb و data_path_zinc على مواقع مجموعات البيانات الخاصة بك. ثم ، قم بتشغيل الأمر التالي:
python train.py config/train.yml