Нейросети, кажется, научились точно предсказывать структуры белков. Структурные биологи больше не нужны?
Алгоритм машинного обучения смог предсказать структуру белка по цепочке аминокислот с точностью, которая в некоторых случаях практически полностью совпала с экспериментальными данными. Один из основателей конкурса, в рамках которого соревновались алгоритмы, уже заявил о том, что после такого проблему определения структуры белков можно считать «в определенном смысле решенной». Откуда взялся такой оптимизм, и насколько он обоснован?
У белка четыре уровня организации. Первичная структура это, собственно, то, в какой последовательности в молекуле белка идут аминокислоты. Все остальные уровни — уже про форму, то есть организацию в пространстве: вторичная для фрагментов молекулы, третичная — всего белка, а четвертичная — межбелковых взаимодействий.
По форме белка можно определить его функцию. Взглянув на нее, можно сказать, какая у белка «профессия» — служит ли он переносчиком веществ, работает ферментом или это вообще катушка для намотки ДНК в ядре. По форме также видно и то, как он «впишется в коллектив», то есть с какими еще белками сможет хорошо работать. При этом даже минимальные изменения аминокислотной последовательности могут повлиять на форму белка и привести в итоге к тяжелым последствиям. Кроме того, есть отдельный класс прионных белков, которые и без мутаций могут складываться неправильно и перепрограммировать укладку других таких же белков, что приводит к смертельным нейродегенеративным болезням.
Неудивительно, что спрос на такое знание очень велик: не только для фундаментальной науки, но и прикладной — например, при разработке лекарств. У того же вируса SARS-CoV-2 есть несколько мишеней, заблокировав которые, можно, по идее, помешать ему размножаться. К таким, например, относится участок спайк-белка, в котором он разрезается протеазой — это действие необходимо для попадания вируса в клетку. Для поиска вещества, которое бы закрыло протеазе доступ к этому участку, нужно для начала выяснить, как именно протеаза взаимодействует с белком, а затем при помощи моделирования найти молекулы, которые бы подходили по форме к нужному участку спайк-белка. Точность предсказания тут напрямую зависит от того насколько хорошо мы знаем, как выглядит 3D-структура спайк белка.
«Напомню, что геном коронавируса был определен еще в январе, а лекарства прямого действия против него до сих пор нет — объясняет молекулярный биолог Константин Северинов из Университета Ратгерса и Института молекулярной генетики РАН. — Если бы у ученых был способ из первых принципов разрешать трехмерные структуры белков, то это не меньший шаг вперед для человечества, чем полет на Луну или что-то подобное. Дело в том, что белки, которые являются акторами биологических процессов в клетке — катализируют химические реакции, совершают химическую и механическую работу, передают сигналы, — они действуют именно за счет своих трехмерных структур. Эти структуры просто из знания генома мы получить не можем».
Быстрый, дешевый и точный способ получения таких структур сильно бы упростил жизнь молекулярным биологам и медикам. Но — несмотря на высокий спрос — такого метода пока нет. Все, что придумали до этого момента, либо очень сложно, либо не очень точно, а иногда и то, и другое.
Структуру белка можно узнать экспериментально — этим занимается рентгеноструктурная кристаллография. В этом случае нужно набрать достаточное количество белка, очистить и вырастить из него кристаллы. После кристаллы помещают под пучок рентгеновского излучения, который взаимодействует с кристаллом белка, как с дифракционной решеткой, и рассеивается определенным образом. Соединив воедино огромное число таких картин рассеяния, полученных с разных углов, можно получить очень точные данные о положении атомов в кристалле — а значит и в белке.
Рентгеноструктурная кристаллография уже больше 60 лет «золотой стандарт» в области — не только точный, но и очень затратный. На то, чтобы определить структуру одного белка или даже его части, могут уйти месяцы и даже многие годы работы на крайне дорогом оборудовании. Подбирать условия для того, чтобы белок правильно кристаллизовался, приходится каждый раз заново, и это не всегда удается. В Курчатовском институте белки даже отправляли кристаллизоваться на МКС, чтобы уберечь растущие кристаллы от помех. Описание структуры конкретного белка иногда вполне тянет на отдельную статью в топовом научном журнале.
«Это очень долгий путь, — говорит Северинов. — Сегодня у нас коронавирус, а завтра будет что-то еще. И для каждого нового объекта вам придется решать задачу de novo, с нуля. Кристаллография белка — это в значительной мере искусство, почти колдовство. Многие проекты по определению белковых структур занимали очень много времени. Понятно, что развитие компьютерных технологий помогло, но все равно — это долго. А структуру белков, которые отказывались кристаллизоваться, получить было вообще невозможно».
Бюджетная альтернатива сложной и дорогой лабораторной работе — моделирование. То, как именно свернется белок, определяется в целом последовательностью аминокислотных остатков в его молекуле. Узнать ее сейчас не составляет особого труда — она однозначно восстанавливается по последовательностям нуклеиновых кислот. Выяснить последовательность, благодаря резкому развитию методов секвенирования в последнее десятилетие, несложно и недорого. Но однозначного алгоритма перевода аминокислотной последовательности в 3D-структуру нет.
Первые попытки в этой области были предприняты в 70-е годы, когда Питер Чоу и Джеральд Фасман придумали алгоритм, предсказывающий вторичную структуру белка. Точность его была невелика, но он уже умел худо-бедно находить альфа-спирали, бета-листы и повороты. Но для того чтобы восстановить структуру белка полностью и правильно позиционировать спирали и листы друг относительно друга, метод не подходил.
Для этого необходимо учесть все взаимодействия между всеми аминокислотными остатками, а затем найти такую конфигурацию цепи, при которой энергия этих взаимодействий минимальна. Но из-за своей размерности задача не решается в лоб: в белке слишком много аминокислотных остатков (в среднем 300-600) и слишком много возможных положений аминокислот друг относительно друга, чтобы перебрать все варианты.
Чтобы обойти нехватку вычислительных ресурсов, был создан проект распределенных вычислений Rosetta@home, включиться в который может каждый желающий. Кроме того, из этого проекта выросла онлайн-головоломка FoldIt, в которой игроки сворачивают белки. Самые удачные структуры потом анализируются учеными — у игроков FoldIt даже есть в соавторстве с ними несколько статей.
Если упростить задачу и брать за основу для расчета упрощенную модель молекулы (где, например, учитываются не все, а только базовые атомы), то задача становится решаемой, но результат оказывается неточным. Вариантов укладки по-прежнему много, и шансов выбрать в качестве результата субоптимальный или совсем далекий от оригинала довольно много: близкие между собой структуры могут сильно отличаться по потенциальной энергии, и алгоритм может застрять в локальном минимуме.
Есть и дополнительные сложности, с которыми сталкиваются ученые. Так, например, мы слукавили, сказав, что форма белка зависит исключительно от аминокислотной последовательности. Белок может пользоваться услугами других белков «укладчиков», которые помогают ему свернуться правильно в структуру, до которой он бы не «дошел» самостоятельно. Помимо этого, на фолдинг белка влияют внешние условия, например, концентрации солей или температура.
Если у белка есть родственник, структура которого уже известна, то ее можно использовать вместо шаблона. В этом случае точность предсказания резко возрастает. Несмотря на дороговизну опытов, за много лет в основной базе данных, на которой обучаются все алгоритмы машинного обучения подобного рода, накопилось порядка 172 тысяч экспериментальных структур, и «допиливание» по шаблону становится все аккуратней. Но для новых белков без родственников в базе такой метод не применим.
Разработка новых методов для определения структуры белков и их независимая проверка — основные цели соревнований CASP, которые проводятся с 1994 года. Организаторы находят несколько десятков разных по уровню сложности белков, структура которых уже определена экспериментально, но еще не опубликована, выдают участникам первичную структуру (цепочку аминокислот) и просят «разгадать» уже третичную за определенный срок (как правило, несколько дней). Предсказания затем сравнивают с тем, что получилось у кристаллографов в лаборатории.
Структуры накладывают друг на друга и считают, насколько точно алгоритм предсказал положение остова белковой молекулы, а именно положения каждого Cα атома углерода. При этом положения аминокислотных радикалов не учитываются. За точность насчитываются баллы, на основании которых считают несколько метрик и в итоге определяют победителей.
В этом году в конкурсе участвовало больше ста команд. Независимо от способа подсчета баллов, с большим отрывом от остальных участников финишировал алгоритм AlphaFold2 на основе нейронных сетей — он набрал в два с половиной больше баллов, чем ближайший преследователь (244 против 92). Его создатели, компания DeepMind, уже не в первый раз оказываются в центре внимания: до этого они прославились созданием AlphaGo, которая обыграла лучших на планете игроков в го (об этом подробнее читайте в материале «Го: речь поражения»), и других систем на основе машинного обучения.
Предыдущие соревнования, CASP13, также выиграла разработка DeepMind, но с гораздо более скромным счетом. В конкурсе, помимо прочего, используется шкала абсолютной точности (GDT score), где 100 это абсолютное совпадение, а до 30 баллов, по словам самих организаторов, можно вообще «набрать случайно». Так вот, до позапрошлого года алгоритмы на конкурсе набирали максимум чуть больше сорока баллов. Но в позапрошлом году ситуация начала меняться, и победитель — предыдущая версия программы AlphaFold — набрала около 60 баллов, а в этом году медианный рейтинг AlphaFold2 оказался 92 балла, что, по словам одного из основателей CASP Джона Молта (John Moult), уже вполне сопоставимо с данными «мокрой» структурной биологии.
Аналогично изменился и другой показатель прогресса — способность хорошо предсказывать не только простенькие, но и сложные для разгадки большие белки с минимумом известных родственных 3D-структур. С каждым соревнованием сложность мишеней возрастает, но в этом году AlphaFold2 — за парой исключений — неплохо разгадала практически все предложенные организаторами белки: две трети моделей набрали больше 90 баллов.
Одна из структур, которые в качестве иллюстрации своих успехов показывали представители DeepMind на конференции — это белок, структуру которого определила группа ученых из Сколтеха, ИМГ, вместе с коллегами из США и Швеции. «Структура нашего белка очень сложная. Во-первых, сам белок очень длинный, в нем больше 2000 аминокислотных остатков. Во-вторых, менее 10 процентов его последовательности хоть как-то похожи на белки с известными структурами, все остальное было уникальное, — рассказывает Северинов, один из авторов статьи. — И вот эти граждане умудрились правильно предсказать практически всю структуру. Это было настолько поразительно, мы потратили много времени на то, чтобы сделать нашу работу, это стоило нам много сил, времени и денег. Но удивительным образом они смогли предсказать нашу структуру правильно, потратив на это минимум усилий. Было странное ощущение, что они все время стояли у нас за спинами и смотрели, что у нас делается в лаборатории».
В своем пресс-релизе DeepMind приводит абсолютные значения, говоря, что в среднем их модель ошибается в предсказании позиции каждого Cα атома на 1,6 ангстрема, что вполне сопоставимо с размерами самого атома. В некоторых случаях, по словам Молта, предсказания программы были настолько похожи на результаты кристаллографии, что было непонятно, чем вызвано это несоответствие — ошибками алгоритма или шумом в экспериментальных данных.
Удивительная точность метода и его применимость для разных по сложности структур были приняты экспертами и организаторами конкурса с энтузиазмом, а в блоге компании DeepMind AlphaFold2 уже вообще позиционируется, как решение базовой проблемы в биологии, которую не могли осилить в течение пятидесяти лет.
Кроме восторга, итоги соревнования вызвали массу вопросов и споров. Применима ли разработка на практике? Действительно ли проблема фолдинга белков решена (и что это вообще была за проблема)? Заменит ли AlphaFold2 экспериментальные методы и каких открытий ждать в ближайшее время? Как, в конце концов, получилось добиться такой точности?
К сожалению, детальный ответ на последний вопрос пока известен только команде DeepMind, — статья с описанием алгоритма AlphaFold2 пока не вышла.
Как и у многих других программ, участвовавших в CASP14, нейросеть AlphaFold2 обучена на базе данных PDB. В ней собрано порядка 170 тысяч структур, полученных экспериментальным путем.
На входе нейросеть получает не просто белковую последовательность с размеченными физико-химическими свойствами аминокислотных остатков, но и ее сравнение с первичными структурами родственных белков, полученное предварительно при помощи другого софта. Даже если для них нет третичных структур, это позволяет алгоритму вытянуть дополнительную информацию из последовательности. Например, если мы видим, что у других организмов есть парные замены в одних и тех же местах, то можно предположить, что они компенсируют друг друга, то есть эти аминокислоты находятся в пространстве рядом друг с другом и взаимодействуют. Стоит заметить, что этот подход применяется уже давно, — об одном из примеров его применения мы рассказывали еще в 2017 году. Но исследователи говорят что оптимизировали его, разрешив алгоритму брать во внимание не только пары аминокислот, но все выравнивание целиком.
На основании этих данных обученная нейросеть строит таблицу попарных расстояний между аминокислотными остатками. После ее «утряхивают» в оптимальную 3D-модель классическими (не нейросетевыми) методами. Попарные расстояния между аминокислотами — это не единственный способ представления 3D-структур, но, по-видимому, очень удачный. В качестве альтернативы ему можно использовать, например, просто карты контактов аминокислот или предсказывать углы между соседними атомами (подробнее про то зачем это делать можно прочитать в блоге Павла Яковлева, директора по ранней разработке и исследованиям BIOCAD). Первая версия AlphaFold использовала предсказание углов наряду с попарными расстояниями, но, судя по тому, что сейчас рассказывает DeepMind, в новой версии от этой идеи отказались.
На конференции CASP14 авторы работы рассказали, что существующие предсказатели чрезмерно любят локальные внутрибелковые взаимодействия и недостаточно учитывают глобальные структурные ограничения. И чтобы исправить это они разработали новую архитектуру, в основе которой лежат нейронные сети с механизмом внимания. Это очень широкая формулировка с разными вариантами реализации. Какой именно класс сетей был использован, — рекуррентные, сверточные или модные трансформеры вроде GPT-3 и BERT, пока держится в тайне.
Механизм внимания позволяет сконцентрироваться на части информации в зависимости от контекста — и это похоже на то, как поступаем мы сами. Представим, например, что нам нужно перевести фразу «The animal didn’t cross the street because it was too tired». Сначала мы можем переводить дословно: «животное не перешло улицу, потому что», но дальше нужно понять, к чему относится слово «it» — к «animal» или к «street». То есть мы направляем свое внимание на предыдущие существительные, чтобы понять, какое из них сейчас более релевантно. В данном случае понятно, что речь о животном — ему мы смело можем приписать усталость. Точно так же и в других задачах: разные части входных данных могут быть важны в разной степени для разных частей предсказания — и механизм внимания позволяет это формализовать, динамически присваивая разным частям этих данных разные веса.
Что из перечисленного позволило команде DeepMind настолько улучшить свои предыдущие результаты, непонятно. Возможно, сыграла свою роль оптимизация старых задумок, а возможно имплементация новых, вроде механизма внимания. Стоит помнить, что база для обучения за два года с прошлых соревнований тоже подросла, и теперь в ней примерно на 20 тысяч структур больше. Так что благодаря чему именно AlphaFold2 обошла своих конкурентов, мы сказать не можем.
По словам биоинформатика и специалиста по машинному обучению Григория Сапунова, CTO компании Intento и экс-руководителя разработки Яндекс.Новостей, результаты CASP14 «очень напоминают результаты соревнования Imagenet, когда туда в 2012 пришли нейросети и всех порвали. После этого вся область работы с изображениями изменилась навсегда». Тем не менее, по одним результатам соревнований нельзя делать вывод о том, что AlphaFold2 сможет в ближайшем будущем оставить молекулярных биологов и структурных биоинформатиков без работы, — многие задачи по-прежнему не решены. Так, например, для решения участникам предлагаются не целые белки, а их участки — домены. Это не сильно меняет задачу, но значительно ее упрощает.
Есть и еще другое упрощение: на CASP учитывается только точность предсказаний остова белковой молекулы, а положение радикалов никак не учитывается. На практике такая задача встречается крайне редко и взаиморасположения радикалов крайне важны.
Тем не менее, даже такие структуры могут быть хорошим подспорьем для биологов, которые годами мучаются с особо заковыристыми белками. Так, один из экспериментаторов, Хеннинг Тидоу (Henning Tidow) из Гамбургского университета прислал на конкурс свой объект исследования — мембранный белок FoxB, над структурой которого он бился уже два года: она была готова на 70 процентов, но собрать ее полностью не получалось из-за проблемы фазового перехода. И обойти ее, воспользовавшись шаблоном из родственного белка, ученый не смог — ни один из доступных вариантов не подошел. Использовав модель, предложенную AlphaFold2, ему наконец удалось получить готовую структуру.
Вторая возможная проблема, на которую указывают эксперты и которую еще предстоит решить, это усредненность предсказания. В базе PDB, на которой тренировалась нейросеть, для одного и того же белка может быть несколько порой сильно отличающихся структур-конформаций для разных состояний. Предполагается, что при таком обучении нейросеть будет пытаться угодить всем образцам и выдавать на выходе усредненную структуру, не подходящую ни одной из реальных ситуаций.
Для того, чтобы делать тот же подбор лекарств, такие структуры не подходят: лекарства подбираются для конкретных конформаций белка и даже отклонения в один ангстрем могут помешать. Опять же, точность AlphaFold2 посчитана только по остову белковой цепи и предсказанные расхождения между радикалами могут быть еще больше.
Строго говоря, AlphaFold2 не решает и проблемы фолдинга белков, над которой ученые бьются последние 50 лет. В строгом смысле она заключается в том, чтобы узнать не только конформацию белка, но и то, каким именно путем белок к ней приходит. Путей, по которым можно уложить белок, еще больше чем конечных 3D-структур — порядка 10300 для белка среднего размера, и для проверки их всех не хватит никаких компьютерных мощностей.
«Если бы белки решали эту задачу простым перебором доступных структур-сверток, — объясняет Северинов, — то при комнатной температуре и параметрах химических связей среднего размера белок не свернулся бы за все время существования Вселенной. Очевидно, что есть какой-то специальный, определенный путь сворачивания, который аминокислотные последовательности, закодированные генами, знают, а ученые нет».
Белок не проверяет все доступные ему варианты по очереди, а сворачивается постепенно так, чтобы потенциальная энергия получившейся структуры в целом падала и приходит в итоге к варианту, где она минимальна. Это условие снижает количество возможных вариантов, но не настолько, чтобы проверить их все. Сейчас ученые научились симулировать этот процесс для небольших участков белка, но даже для них расчет может занимать несколько дней на распределенных GPU-кластерах. Для решения таких задач в 2000 году был создан Folding@Home: второй в мире по мощности (после bitcoin) проект распределенных вычислений, в котором может поучаствовать каждый.
Таким образом, появление AlphaFold2 не решает всех проблем структурной биологии, но может послужить отличной отправной точкой для новых исследований. Исходный код первой версии AlphaFold разработчики выложили в открытый доступ — на его базе уже есть несколько любительских версий программы, а многие участники CASP14 за два года «подтянули» точность своих предсказаний до нее. Детали и исходный код AlphaFold2 могут помочь не только «мокрым» биологам решить проблемы с экспериментальными структурами, но и спровоцировать вал новых работ, основанных на этой технике.
Вера Мухина при участии Зои Червонцевой
Как сделать интернет дружелюбным для людей с особенностями восприятия
Опубликовать фотографию из путешествия, прослушать голосовое сообщение или прочитать материал в любимом издании — все это легко сделать, если под рукой есть смартфон и доступ к интернету. Однако не все люди одинаково хорошо слышат, видят, а некоторые живут с другими особенностями здоровья. Вместе с командой VK, где сотрудники с инвалидностью тестируют и создают новые сервисы, рассказываем, как сделать интернет доступным для всех без исключения.