Пример использования трехмерного QSAR анализа для предсказания активности низкомолекулярных соединений в отношении данного белка.
-
Для проведения 3DQSAR анализа мы будем использовать программы Open3DQSAR и Open3DALIGN (open3dqsar.sourceforge.net). Чтобы использовать их на kodomo:
export PATH=$PATH:/home/preps/grishin/open3dtools/bin
-
Дан набор из 88 веществ - ингибиторов тромбина ( compounds.sdf .). Для 85 из них активность известна, для трех - нам предстоит предсказать.
Для начала необходимо построить пространственное выравнивание активных конформаций исследуемых веществ.
Будем считать активной конформацией (то есть конформацией, в которой вещество-ингибитор взаимодействует с белком-мишенью) наиболее энергетически выгодную конформацию.
Сгенерированные ( obconformer 100 100 compounds.sdf > compounds_best_conformer.sdf ) наиболее энергетически выгодные конформации исследуемых веществ -
compounds_best_conformer.sdf .
Выравнивание полученных конформеров:
open3dalign.sh        Документация - http://open3dalign.sourceforge.net/. Все дальнейшие команды вводятся в командной строке open3dalign.
import type=SDF file=compounds_best_conformer.sdf        Загрузить SDF файл со структурами веществ.
align object_list=1        Выполнить выравнивание; использовать в качестве темплэйта, к которому выравниваются все вещества, первое вещество в списке.
save file=aligned.sdf        Записать выравнивание в файл - aligned.sdf
stop
Перекодировать файл из юникода в ascii: iconv -c -f utf-8 -t ascii aligned.sdf > aligned_ascii.sdf
Удалить ненужную информацию из заголовков и добавить $$$$ в конец каждой записи:
sed -e 's/.*HEADER.*\([0-9][0-9]\).*/\1/' -e 's/\(.*M END.*\)/\1\n$$$$/' aligned_ascii.sdf > temp
sed -n '/^[0-9a-zA-Z \$\.-]*$/ p' temp > aligned_ok.sdf
rm temp
Выравнивание в PyMOL (все вещества отображены одновременно):
-
3DQSAR анализ на основе выравнивания активных конформаций исследуемых веществ:
open3dqsar.sh        Запустить программу. Все дальнейшие команды вводятся в командной строке open3dqsar.
import type=sdf file=aligned_ok.sdf        Загрузить файл со структурами.
import type=dependent file=activity.txt        Загрузить файл с данными об активности исследуемых соединений - activity.txt.
Активности трех последних соединений нам предстоит предсказать, поэтому для них пока что указана нулевая активность.
box        Задайть решетку вокруг исследуемых соединений.
set object_list=60-85 attribute=TEST        Оставить часть наших соединений в качестве тестового набора.
set object_list=86-88 attribute=EXCLUDED        Исключить (пока что) соединения с неизвестной активностью.
calc_field type=VDW force_field=MMFF94 probe_type=CR        Рассчитать значения энергии ван-дер-Ваальсовых взаимодействий в узлах решетки.
cutoff type=max level=5.0 field_list=1        Установить ограничения на значения энергии.
cutoff type=min level=-5.0 field_list=1        Установить ограничения на значения энергии.
zero type=all level=0.05        Слишком маленькие значения энергии приравнять к 0.
sdcut level=0.1
nlevel
remove_x_vars type=nlevel        Исключить из анализа ячейки, в которых вариабельность в энергии взаимодействия с зондом для разных соединений мала.
pls        Построить регрессионную модель.
Коэффициенты корреляции для разного количества компонент, выделенных PLS:
0 ≤ r2 ≤ 0.9529
cv type=loo runs=20        Выполнить кросс-валидацию.
Коэффициенты корреляции полученные при кросс-валидации:
-0.0829 ≤ q2 ≤ 0.0683
predict        Предсказать активность для тестовой выборки.
Коэффициенты корреляции полученные при анализе тестовой выборки:
0.8821 ≤ r2 ≤ 1.0362
stop
-
3DQSAR анализ на основе выравнивания конформаций исследуемых веществ, полученных с учетом структуры активного центра белка-мишени:
Выравнивание - в файле compounds.sdf .
Выравнивание в PyMOL (все вещества отображены одновременно):
open3dqsar.sh
import type=sdf file=compounds.sdf
import type=dependent file=activity.txt
box
set object_list=60-85 attribute=TEST
set object_list=86-88 attribute=EXCLUDED
calc_field type=VDW force_field=MMFF94 probe_type=CR
cutoff type=max level=5.0 field_list=1
cutoff type=min level=-5.0 field_list=1
zero type=all level=0.05
sdcut level=0.1
nlevel
remove_x_vars type=nlevel
pls
Коэффициенты корреляции для разного количества компонент, выделенных PLS:
0 ≤ r2 ≤ 0.8450
cv type=loo runs=20
Коэффициенты корреляции полученные при кросс-валидации:
-0.0348 ≤ q2 ≤ 0.5454
predict
Коэффициенты корреляции полученные при анализе тестовой выборки:
0.8385 ≤ r2 ≤ 1.0362
-
Используем получившуюся модель для предсказания активности:
set object_list=60-85 attribute=TRAINING        Переделываем модель с использованием всех имеющихся данных.
set object_list=86-88 attribute=TEST        Вещества с неизвестной активностью обозначаем как тестовую выборку.
pls        Cтроим модель.
predict        Предсказываем активность трех веществ.
Предсказанные активности:
главная страница
©Настя Гуляева, 2012