1 декабря на ФКН ВШЭ будет доклад Евгения Бурнаева (Сколтех) на тему "Нейротехнологии и машинное обучение: от нейрохирургии и неврологии до киберспорта". Вот ссылка, для участия нужно зарегистрироваться.
cs.hse.ru
Коллоквиум ФКН "Нейротехнологии и машинное обучение: от нейрохирургии и неврологии до киберспорта"
Уже только ленивый не написал о новости: сетка AlphaFold выиграла с огромным отрывом соревнование CASP по предсказанию структур белков. Деталей пока известно очень мало, статьи еще нет, а первый доклад по этой работе будет рассказан завтра на закрытой конференции CASP. Точно можно сказать пока только одно: они выиграли соревнование. Насколько же эта сетка, как пишут, “решила проблему фолдинга белка”, — пока, наверно, судить преждевременно.
Дело в том, что есть несколько принципиально разных задач. Можно, например, предсказывать структуру белка, зная структуры его гомологов. Можно не знать структуры гомологов, но по последовательностям из разных организмов знать, какие участки в гомологах этого белка эволюционируют согласованно — и это может значить, что они контактируют в структуре. Любую такую информацию можно использовать для улучшения предсказания, и по результатам в других областях мы видим, что сетки умеют хорошо это делать — обучаться по аналогии. Но есть и другая задача, гораздо более сложная: предсказать структуру для последовательности, похожих на которую мы никогда не видели. Модель, которая сможет такое сделать, обязана будет выучить биофизику белка и закономерности его сворачивания, — и это то, что ученым интереснее всего! И насколько новая сетка умеет решать последнюю задачу, пока совершенно не очевидно.
Поэтому давайте подождем немного и обсудим, когда станет известно больше деталей. Мы заслали агента на конференцию и раскинули щупальца в поисках структурщиков, которые нам все объяснят. Запасайтесь попкорном.
Дело в том, что есть несколько принципиально разных задач. Можно, например, предсказывать структуру белка, зная структуры его гомологов. Можно не знать структуры гомологов, но по последовательностям из разных организмов знать, какие участки в гомологах этого белка эволюционируют согласованно — и это может значить, что они контактируют в структуре. Любую такую информацию можно использовать для улучшения предсказания, и по результатам в других областях мы видим, что сетки умеют хорошо это делать — обучаться по аналогии. Но есть и другая задача, гораздо более сложная: предсказать структуру для последовательности, похожих на которую мы никогда не видели. Модель, которая сможет такое сделать, обязана будет выучить биофизику белка и закономерности его сворачивания, — и это то, что ученым интереснее всего! И насколько новая сетка умеет решать последнюю задачу, пока совершенно не очевидно.
Поэтому давайте подождем немного и обсудим, когда станет известно больше деталей. Мы заслали агента на конференцию и раскинули щупальца в поисках структурщиков, которые нам все объяснят. Запасайтесь попкорном.
Nature
‘It will change everything’: DeepMind’s AI makes gigantic leap in solving protein structures
Nature - Google’s deep-learning program for determining the 3D shapes of proteins stands to transform biology, say scientists.
И все же, сложно не вспомнить на злобу дня историю про теорему четырех красок. Это была первая крупная математическая теорема, которую доказали компьютерным перебором — после ста лет неудачных попыток справиться классическими методами. Ну то есть как доказали...
В 1976 году Кеннет Аппель и Вольфганг Хакен объявили, что они это сделали, и поднялась большая шумиха. Математическое сообщество было настроено очень скептически, и в начале 1980-х в алгоритме нашли ошибку, а потом еще несколько. Но уже в 1989 Аппель и Хакен издали в виде книжки с 400-страничным приложением новое исправленное доказательство, и на этот раз оно уже было корректно. На основе их работ впоследствии было создано несколько более простых доказательств.
Мораль, видимо, в том, что прогресс не остановим. Но и ошибки сами себя не найдут :)
В 1976 году Кеннет Аппель и Вольфганг Хакен объявили, что они это сделали, и поднялась большая шумиха. Математическое сообщество было настроено очень скептически, и в начале 1980-х в алгоритме нашли ошибку, а потом еще несколько. Но уже в 1989 Аппель и Хакен издали в виде книжки с 400-страничным приложением новое исправленное доказательство, и на этот раз оно уже было корректно. На основе их работ впоследствии было создано несколько более простых доказательств.
Мораль, видимо, в том, что прогресс не остановим. Но и ошибки сами себя не найдут :)
В эту пятницу, 11 декабря в 18:00 будет семинар про CASP. Игорь Дианкин расскажет о том, как устроено само соревнование, и какие идеи помогали выигрывать его раньше. Как устроена rosetta, и что представлял из себя AlfaFold первой версии на прошлогоднем соревновании. А Леня Урошлев кратко резюмирует, что ему удалось узнать про новый AlfaFold2 на недавней закрытой конференции по результатам CASP. Ссылка для подключения.
Дисклеймер: про новую архитектуру пока все еще известно очень мало. Авторы отказываются раскрывать детали до выхода статьи.
Дисклеймер: про новую архитектуру пока все еще известно очень мало. Авторы отказываются раскрывать детали до выхода статьи.
Напоминаем, что сегодня в шесть по Москве будет семинар про CASP.
Коллеги, простите, ссылка на семинар запустится через пару минут
Large-scale clinical interpretation of genetic variants using evolutionary data and deep learning
Текст: https://www.biorxiv.org/content/10.1101/2020.12.21.423785v1
Код: модификация предыдущей работы авторов https://github.com/debbiemarkslab/DeepSequence
Модель: байесовский вариационный автоэнкодер
Что предсказывали
В конечном счете -- патогенность миссенс-мутаций в геноме человека. Но делали это очень красивым непрямым способом.
Предобучение
Сначала для каждого белок-кодирующего гена брали выравнивание гомологов из всех возможных геномов (> 139 тыс. организмов). Вариационный автоэнкодер обучали сжимать такие выравнивания. В процессе этого автоэнкодер выучивал распределения, по которым для каждой возможной мутации в каждой позиции можно было оценить, насколько она вероятна. Выражением этой вероятности считался некоторый “эволюционный индекс”.
Классификация
Эволюционные индексы всех возможных мутаций (каждого белка по отдельности?) собрали в одно распределение. Оно оказалось двугорбым, и его разделили на две гауссианы, условно соответствующие патогенным и не патогенным мутациям. Исходя из этих двух гауссиан, каждой отдельной мутации присвоили метку -- вероятность этой мутации оказаться или не оказаться патогенной.
Что получилось
Полученные скоры хорошо предсказывают метки из базы ClinVar (AUC 0.90) и дают уверенные предсказания для многих мутаций, эффект которых не известен.
Авторы особо подчеркивают, что их модель не видит меток при обучении, и это лишает ее возможности переобучиться. Что же касается возможности неявно переобучиться на конкретные группы организмов, которых просто больше секвенировано, -- то и эту проблему авторы успешно обходят. Они взвешивают последовательности в выравнивании пропорционально их уникальности.
Текст: https://www.biorxiv.org/content/10.1101/2020.12.21.423785v1
Код: модификация предыдущей работы авторов https://github.com/debbiemarkslab/DeepSequence
Модель: байесовский вариационный автоэнкодер
Что предсказывали
В конечном счете -- патогенность миссенс-мутаций в геноме человека. Но делали это очень красивым непрямым способом.
Предобучение
Сначала для каждого белок-кодирующего гена брали выравнивание гомологов из всех возможных геномов (> 139 тыс. организмов). Вариационный автоэнкодер обучали сжимать такие выравнивания. В процессе этого автоэнкодер выучивал распределения, по которым для каждой возможной мутации в каждой позиции можно было оценить, насколько она вероятна. Выражением этой вероятности считался некоторый “эволюционный индекс”.
Классификация
Эволюционные индексы всех возможных мутаций (каждого белка по отдельности?) собрали в одно распределение. Оно оказалось двугорбым, и его разделили на две гауссианы, условно соответствующие патогенным и не патогенным мутациям. Исходя из этих двух гауссиан, каждой отдельной мутации присвоили метку -- вероятность этой мутации оказаться или не оказаться патогенной.
Что получилось
Полученные скоры хорошо предсказывают метки из базы ClinVar (AUC 0.90) и дают уверенные предсказания для многих мутаций, эффект которых не известен.
Авторы особо подчеркивают, что их модель не видит меток при обучении, и это лишает ее возможности переобучиться. Что же касается возможности неявно переобучиться на конкретные группы организмов, которых просто больше секвенировано, -- то и эту проблему авторы успешно обходят. Они взвешивают последовательности в выравнивании пропорционально их уникальности.
Evolution Is All You Need: Phylogenetic Augmentation for Contrastive Learning
Текст: https://arxiv.org/abs/2012.13475
Код: нет, но есть формулы
Статья-видение. Авторы предлагают новую разновидность contrastive learning для обучения именно биологических моделей.
Contrastive learning -- одна из популярных концепций самообучения (self-supervised learning). Самообучение часто бывает полезно, когда данных много, а меток для них мало. Можно предобучиться на неразмеченных данных и что-то понять про их структуру -- а потом уже приступать к классификации. Для стадии предобучения данные часто размножают (аугментируют), и в этой работе авторы заметили, что биологические данные и так уже аугментированы эволюцией, причем очень подходящим для contrastive learning образом.
Собственно идея контрастирования заключается в следующем. Представим, что у нас есть картинки, и для каждой картинки определены два разных аугментирующих преобразования -- например, поворот на 90 градусов и размытие. Цель -- научиться понимать, какие картинки являются вариантами друг друга. Для этого нужно найти такую функцию (энкодер), которая отобразит два варианта одной исходной картинки в максимально близкие точки, а варианты разных картинок -- в далёкие. Будем требовать, чтобы это выполнялось для всех картинок, а степень близости итоговых точек определим через взаимную информацию их распределений. Если хорошо подобрать преобразования, такой энкодер научится отделять важное от неважного.
На практике вместо взаимной информации считают более простую функцию, являющуюся её нижней оценкой. Оптимизируется функция для N пар производных картинок, из которых одна пара “правильная” -- соответствует двум разным преобразованиям одной исходной картинки, а остальные пары “неправильные” -- соответствуют разным картинкам. Преобразования при этом не фиксируют, а сэмплируют каждый раз из некоторого заранее заданного распределения.
Так вот, биология. Авторы предлагают перейти к работе с последовательностями и рассматривать их в контексте ортологических рядов. Исходная “картинка” каждого ряда -- это его предковая последовательность, а все современные последовательности -- преобразования исходной картинки. Теперь можно применить всю ту же процедуру обучения энкодера. Хорошими парами будут считаться пары ортологов, а плохими -- пары из разных семейств. Из некоторого математически мотивированного принципа следует, что хорошие пары лучше составлять из максимально далеких друг от друга последовательностей.
Обученный таким образом энкодер выучит признаки, которые эволюция сохраняет во всех своих “преобразованиях” -- а значит, эти признаки являются биологически важными.
Текст: https://arxiv.org/abs/2012.13475
Код: нет, но есть формулы
Статья-видение. Авторы предлагают новую разновидность contrastive learning для обучения именно биологических моделей.
Contrastive learning -- одна из популярных концепций самообучения (self-supervised learning). Самообучение часто бывает полезно, когда данных много, а меток для них мало. Можно предобучиться на неразмеченных данных и что-то понять про их структуру -- а потом уже приступать к классификации. Для стадии предобучения данные часто размножают (аугментируют), и в этой работе авторы заметили, что биологические данные и так уже аугментированы эволюцией, причем очень подходящим для contrastive learning образом.
Собственно идея контрастирования заключается в следующем. Представим, что у нас есть картинки, и для каждой картинки определены два разных аугментирующих преобразования -- например, поворот на 90 градусов и размытие. Цель -- научиться понимать, какие картинки являются вариантами друг друга. Для этого нужно найти такую функцию (энкодер), которая отобразит два варианта одной исходной картинки в максимально близкие точки, а варианты разных картинок -- в далёкие. Будем требовать, чтобы это выполнялось для всех картинок, а степень близости итоговых точек определим через взаимную информацию их распределений. Если хорошо подобрать преобразования, такой энкодер научится отделять важное от неважного.
На практике вместо взаимной информации считают более простую функцию, являющуюся её нижней оценкой. Оптимизируется функция для N пар производных картинок, из которых одна пара “правильная” -- соответствует двум разным преобразованиям одной исходной картинки, а остальные пары “неправильные” -- соответствуют разным картинкам. Преобразования при этом не фиксируют, а сэмплируют каждый раз из некоторого заранее заданного распределения.
Так вот, биология. Авторы предлагают перейти к работе с последовательностями и рассматривать их в контексте ортологических рядов. Исходная “картинка” каждого ряда -- это его предковая последовательность, а все современные последовательности -- преобразования исходной картинки. Теперь можно применить всю ту же процедуру обучения энкодера. Хорошими парами будут считаться пары ортологов, а плохими -- пары из разных семейств. Из некоторого математически мотивированного принципа следует, что хорошие пары лучше составлять из максимально далеких друг от друга последовательностей.
Обученный таким образом энкодер выучит признаки, которые эволюция сохраняет во всех своих “преобразованиях” -- а значит, эти признаки являются биологически важными.
На одном из прошлогодних семинаров мы с коллегами из Сберлоги обсуждали соревнование kaggle “OpenVaccine: COVID-19 mRNA Vaccine Degradation Prediction”, и кто-то в нем даже участвовал. Цель соревнования была предсказать стабильность разных частей РНК в разных условиях. Если научиться это лучше предсказывать, можно будет сделать следующую РНК-вакцину более стабильной, и она уже не будет требовать хранения при -70 градусах.
Теперь Nvidia опубликовала рассказ своих грандмастеров об их решениях. Эти решения заняли 2, 17 и 20 места в итоговом рейтинге. Использовали, в основном, RNN. Из фишек -- аугментация с помощью arnie, батч-дропаут и немного графовых сетей.
Спасибо Артему Артемову за наводку.
https://youtu.be/sp3kZwKKYfw
Теперь Nvidia опубликовала рассказ своих грандмастеров об их решениях. Эти решения заняли 2, 17 и 20 места в итоговом рейтинге. Использовали, в основном, RNN. Из фишек -- аугментация с помощью arnie, батч-дропаут и немного графовых сетей.
Спасибо Артему Артемову за наводку.
https://youtu.be/sp3kZwKKYfw
В эту пятницу 22 января в 19:00 будет насыщенный семинар. Сначала мы кратко разберем препринт "Large-scale clinical interpretation of genetic variants using evolutionary data and deep learning". А потом под присмотром товарищей математиков будем пытаться понять, как работает contrastive learning, — и как его можно применить в биологии.
Примерный план: полчаса на первую тему, час на вторую. Запись будет, ссылка появится здесь за час до семинара.
Примерный план: полчаса на первую тему, час на вторую. Запись будет, ссылка появится здесь за час до семинара.
Извините, коллеги, мы переносим сегодняшний семинар из-за болезни основного докладчика. На когда, пока не решили, напишем позже.
И все-таки мы разберем препринт про вариационный автоэнкодер для предсказания эффекта мутаций. А потом все-таки поговорим про contrastive learning с математиками. В эту пятницу, 29 января, в 19:00. Ссылка будет здесь за час до семинара.
Can a fruit fly learn word embeddings?
Текст: https://arxiv.org/pdf/2101.06887.pdf
Код: не выложен
В мозгу дрозофил есть структура под названием “грибовидное тело”, основу которого составляют особые нейроны — клетки Кеньона. Эта структура отвечает за восприятие запахов, температуры, влажности и визуальных сигналов. Обработка таких разных сигналов происходит эффективно благодаря тому, что клетки Кеньона связаны друг с другом через специальный “фильтрующий” нейрон, который блокирует все слабые сигналы.
Авторы статьи задались вопросом: а сможет ли сетка, построенная по принципу грибовидного тела, решать задачи, связанные с текстом? Сможет ли она извлекать из текста корреляции между словами и их контекстом? Подумали и сделали рекуррентную сетку, в которой есть слои, соответствующие клеткам Кеньона и ингибирующему нейрону.
Обучение
Обучали без учителя на OpenWebText Corpus. На вход сетке подавалась пара “слово-контекст” вместе с вектором вероятности встретить слово в корпусе. На выходе сетку просили распределить пары “слово-контекст” по их похожести друг на друга на k групп, соответствующих k нейронам из слоя Кеньона. Обученные таким образом нейроны Кеньона можно использовать для генерации эмбеддингов, которые, как оказалось, отражают семантические свойства слов и их контекст.
Результаты
Авторы протестировали полученные эмбеддинги на 4 задачах.
- сравнили семантическое сходства их эмбеддингов с размеченными человеком
- сравнили кластеризации своих эмбеддингов с эмбеддингами, полученными Word2Vec и GloVe)
- просили нейронную сеть различать значения одного и того же слова в разном контексте, например, bank account и river bank, или Apple iPhone и apple pie
- просили сеть распределить новостные статьи по 35 категориям
Сетка справилась с этими задачами не хуже (но и не сильно лучше) других методов, однако она гораздо быстрее учится: всего несколько часов против суток для GloVe и BERT.
Текст: https://arxiv.org/pdf/2101.06887.pdf
Код: не выложен
В мозгу дрозофил есть структура под названием “грибовидное тело”, основу которого составляют особые нейроны — клетки Кеньона. Эта структура отвечает за восприятие запахов, температуры, влажности и визуальных сигналов. Обработка таких разных сигналов происходит эффективно благодаря тому, что клетки Кеньона связаны друг с другом через специальный “фильтрующий” нейрон, который блокирует все слабые сигналы.
Авторы статьи задались вопросом: а сможет ли сетка, построенная по принципу грибовидного тела, решать задачи, связанные с текстом? Сможет ли она извлекать из текста корреляции между словами и их контекстом? Подумали и сделали рекуррентную сетку, в которой есть слои, соответствующие клеткам Кеньона и ингибирующему нейрону.
Обучение
Обучали без учителя на OpenWebText Corpus. На вход сетке подавалась пара “слово-контекст” вместе с вектором вероятности встретить слово в корпусе. На выходе сетку просили распределить пары “слово-контекст” по их похожести друг на друга на k групп, соответствующих k нейронам из слоя Кеньона. Обученные таким образом нейроны Кеньона можно использовать для генерации эмбеддингов, которые, как оказалось, отражают семантические свойства слов и их контекст.
Результаты
Авторы протестировали полученные эмбеддинги на 4 задачах.
- сравнили семантическое сходства их эмбеддингов с размеченными человеком
- сравнили кластеризации своих эмбеддингов с эмбеддингами, полученными Word2Vec и GloVe)
- просили нейронную сеть различать значения одного и того же слова в разном контексте, например, bank account и river bank, или Apple iPhone и apple pie
- просили сеть распределить новостные статьи по 35 категориям
Сетка справилась с этими задачами не хуже (но и не сильно лучше) других методов, однако она гораздо быстрее учится: всего несколько часов против суток для GloVe и BERT.
Ссылка на сегодняшний семинар про использование эволюционной информации в DL. В программе Байесовский вариационный автоэнкодер для предсказания эффекта мутаций и contrastive learning на белках в реализации SimCLR. Начало в 19:00.