Разработчики из Mail.Ru Group, Insilico Medicine и МФТИ впервые применили нейронную сеть в создании новых лекарственных препаратов. Использование технологий генеративных нейронных состязательных сетей, обученных «придумывать» молекулярные структуры, может существенно сократить время и стоимость поиска веществ, обладающих потенциально лечебными свойствами. Исследователи предполагают, что эти технологии можно применить для срздания новых препаратов в самых разных областях от онкологии до сердечно-сосудистых заболеваний.
На данный момент в базе неорганических молекул порядка 72 млн веществ, и только доля процента из них используется в лекарственных препаратах. Например, фармакологи продолжают исследовать аспирин, который применяется уже много лет, что-то добавляют к молекуле, чтобы снизить побочные эффекты или повысить эффективность, но это все то же вещество. Как выбрать из 72 млн принципиально новую молекулу, обладающую лечебными свойствами? Эту задачу и решали исследователи с помощью нейронной сети.
За основу была взята архитектура состязательных автокодировщиков, являющаяся расширением генеративных состязательных сетей. Для обучения использовались молекулы с известными лечебными свойствами и эффективной концентрацией. Информацию о такой молекуле подавали на вход сети. Сеть настраивали так, чтобы на выходе получить точно такие же данные. Она была составлена из трех структурных элементов — кодировщика, декодера и дискриминатора, — каждый из которых выполнял свою роль, «сотрудничая» с двумя другими. Кодировщик совместно с декодером обучался сжимать и затем восстанавливать информацию об исходной молекуле, а дискриминатор помогал сделать сжатое представление более подходящим для последующего восстановления. После того как сеть обучалась на множестве известных молекул, кодировщик вместе с дискриминатором «выключались», и сеть, используя декодер, генерировала описание молекул уже сама.
Все молекулы имеют представление в виде смайлзов — буквенных аннотаций химического вещества, которые позволяют восстановить его структуру. Стандартная запись не подходит для обработки сетью, но и смайлз не очень подходит — он имеет произвольную длину от одной буквы до 200. В то время как для обучения нейронной сети требуется одинаковая длина описания (вектора). Решает эту задачу так называемый фингерпринт, который содержит всю информацию о молекуле. Исследователи конвертировали смайлзы в фингерпринты и на них уже обучали сеть.
На вход нейронной сети подавались «отпечатки» известных лекарственных молекул. Сеть должна была распределить веса параметров внутренних нейронов так, чтобы при заданном входе получился заданный же выход. Эта операция повторялась много раз. Затем разработчики убрали первые слои, и сеть генерировала фингерпринты при обратном прогоне уже сама. Ученые построили «отпечатки» для всех 72 млн молекул и далее сравнивали сгенерированные сетью фингерпринты с базой. Отобранные молекулы должны потенциально обладать заданными свойствами.
Для проверки сети использовали патентную базу противораковых лекарств. Сначала обучали сеть на части лекарственных форм и проверяли на второй части. Задача была предсказать такие известные формы, которых не было в обучающей выборке. Из предсказанных веществ на 69 уже есть патенты.