Машинное обучение для предсказания активности регуляторных районов генов
Пензар Дмитрий Дмитриевич
Преподаватель ФББ МГУ, мнс ИОГЕН
Зачем?
2
Схема в идеальном мире
3
Геном человека
Сильный искуственный интеллект
Прогноз на все случаи жизни
Схема в идеальном мире
4
Геном человека
Сильный искуственный интеллект
Прогноз на все случаи жизни
Схема в идеальном мире
5
Геном человека
модель1
модель
2
модель
N
…
Аггрегация
предсказаний
Специалист
Мутации
6
Кодирующие мутации
Регуляторные мутации
…
…
Текущие проблемы
7
Регуляторные мутации. Сплайсинг
8
Model(ATGCACCACACAC) - Model(ATGCACGACACAC)
=
Эффект мутации
10.1016/j.cell.2018.12.015
Регуляторные мутации. �Связывание транскрипционного фактора
9
Многие важные регуляторные мутации расположены в сайтах связывания транскрипционных факторов
Можно решать вместе с более общей проблемой, можно решать напрямую
Модели для предсказания эффекта регуляторной мутации
10
Предсказываем некое прокси – влияние на открытость хроматина, данные ChiP-Seq, …
Предсказываем эффект на экспрессию напрямую
Учимся на прямых данных об эффекте мутации или получаем предсказание косвенно
Учимся на данных одного эксперимента, или на нескольких одновременно
11
Самый частый эффект мутации в регуляторных регионах – изменения открытости хроматина. Из-за изменения связывания конкретно ТФ или нет – не всегда важно
12
Многие важные регуляторные мутации расположены в сайтах связывания транскрипционных факторов
Можно решать вместе с более общей проблемой, можно решать напрямую
Модели для предсказания эффекта регуляторной мутации
13
Предсказываем некое прокси – влияние на открытость хроматина, данные ChiP-Seq, …
Предсказываем эффект на экспрессию напрямую
Учимся на прямых данных об эффекте мутации или получаем предсказание косвенно
Учимся на данных одного эксперимента, или на нескольких одновременно
Прямых данных о влиянии мутаций на доступность хроматина мало и они «прямые» (даже если грести все данные)
14
10.1038/s41467-021-23007-0
Модели для предсказания эффекта регуляторной мутации
15
Предсказываем некое прокси – влияние на открытость хроматина, данные ChiP-Seq, …
Предсказываем эффект на экспрессию напрямую
Учимся на прямых данных об эффекте мутации или получаем предсказание косвенно
Учимся на данных одного эксперимента, или на нескольких одновременно
Как мы предсказывали эффект, зная доступность?
16
A/T
AGTACGACGCACG
AGTACGTCGCACG
Доступность хроматина 1
Доступность хроматина 2
Влияние замены = Доступность хроматина 2 - Доступность хроматина 1
Общая схема косвенного* предсказания
17
A/T
AGTACGACGCACG
AGTACGTCGCACG
(Предсказанная) Доступность хроматина 1
(Предсказанная)Доступность хроматина 2
Влияние замены = Доступность хроматина 2 - Доступность хроматина 1
* Для увеличения импакта статьи пишем “zero-shot learning”, т.к мы учимся на одних данных, и предсказываем другие, не обучаясь на них специально
Gkm/deltaSVM
18
doi.org/10.1038/ng.3331
Модели для предсказания эффекта регуляторной мутации
19
Предсказываем некое прокси – влияние на открытость хроматина, данные ChiP-Seq, …
Предсказываем эффект на экспрессию напрямую
Учимся на прямых данных об эффекте мутации или получаем предсказание косвенно
Учимся на данных одного эксперимента, или на нескольких одновременно
Косвенные данные
20
https://gtrd.biouml.org/
�
Multi-target learning
1. Каждому объекту соответствует большое число разных значений, которые мы хотим предсказывать.
2. При этом эти значения связаны, например растворимость и токсичность.
3. Данные об одном значении косвенно говорят нам информацию о других (и помогают отсеять шум)
4. Потому обучаясь предсказывать сразу все значения, мы можем достигнуть более высокого качества
21
X
…
https://www.youtube.com/playlist?list=PLoROMvodv4rNjRoawgt72BBNwL2V7doGI
Multi-target learning. Доступность хроматина
1) методы оценки доступности хроматина дают коррелированные значения
2) есть похожие клеточные линии, есть константно открытые/закрытые участки
3. Данные об одном значении косвенно говорят нам информацию о других
4. Потому, обучаясь предсказывать сразу все значения, мы можем достигнуть более высокого качества
22
seq
…
Как перейти от предсказаниядля большого числе экспериментов к одному числу, оцениваниющими эффект мутации?
Как перейти от предсказаниядля большого числе экспериментов к одному числу, оцениваниющими эффект мутации? Вариант 1
1) Учим на этих еще одну модель, используя прямые данные
2) Теряем zero-shot☹
…
…
Модель
второго
уровня (linreg, xgboost)
score
Как перейти от предсказаниядля большого числе экспериментов к одному числу, оцениваниющими эффект мутации?
Как перейти от предсказаниядля большого числе экспериментов к одному числу, оцениваниющими эффект мутации?
Похоже на агреггацию, но более умные слова:
Используем предсказанные значения как описание последовательностей и считаем между ними расстояние
DeepSEA
27
10.1038/nmeth.3547
Beluga (DeepSEA-2019)��
28
10.1038/s41588-018-0160-6
Sei (DeepSEA-2022)��
29
10.1038/s41588-022-01102-2
Классификация vs регрессия
30
Можем трактовать задачу как классификацию – есть открытые участки хроматина, есть закрытые. Учимся отличать.
Необходимо выбрать правила, по которым считаем участок открытым
Можем трактовать задачу как регрессию. Это более естественно и позволяет нам давать сети данные настолько сырыми, насколько возможно, что по примерам из других доменов - лучше
10.1038/s42256-022-00570-9
Классификация vs регрессия
31
Можем конвертировать предсказания классификационных моделей в аналог предсказания регрессионных, и наоборот. Сравнивая, получаем, что регрессионные модели всегда лучше. Лучше использовать данные, наиболее близкие к исходным
Basenji2
32
10.1371/journal.pcbi.1008050
Enformer
33
10.1038/s41592-021-01252-x
Задача решена?
34
Нюансы
35
Нюансы 2 (данные человеческих промоторов)
36
Enformer
Simple CNN
10.1101/2023.03.05.531189
Модели для предсказания эффекта регуляторной мутации
37
Предсказываем некое прокси – влияние на открытость хроматина, данные ChiP-Seq, …
Предсказываем эффект на экспрессию напрямую
Учимся на прямых данных об эффекте мутации или получаем предсказание косвенно
Учимся на данных одного эксперимента, или на нескольких одновременно
Прямых данных мало и они «прямые»
38
10.1002/humu.23797
Прямых данных мало и они «прямые»
39
10.1038/s41586-021-03211-0
Можно получать при помощи SELEX (SNP-SELEX)
Данные грязные и малочисленные
Модели для предсказания эффекта регуляторной мутации
40
Предсказываем некое прокси – влияние на открытость хроматина, данные ChiP-Seq, …
Предсказываем эффект на экспрессию напрямую
Учимся на прямых данных об эффекте мутации или получаем предсказание косвенно
Учимся на данных одного эксперимента, или на нескольких одновременно
Massively parallel reporter essays (дрожжи)
41
10.1038/s41587-019-0315-8
DREAM2022 LegNet
42
На этих данных даже устраиваются конкурсы побеждает наша нейросеть ☺
10.1093/bioinformatics/btad457
Massively parallel reporter assays (человек)
43
doi.org/10.1101/2023.03.05.531189
TL;DR 1й части
44
*При этом область не так загажена занята
Особенности реализации
45
Как работать с нуклеотидной последовательностью?
46
Либо трактовать как текст
Либо трактовать как 1D-изображение
Идейно должно работать примерно так*
47
*По факту – сильно не всегда, это даже не первое, а нулевое приближение того, что происходит в модели
10.1038/s41576-019-0122-6
Откуда брать идеи для архитектуры?
48
Откуда брать идеи для архитектуры?
49
На что стоит обратить внимание?
50
… training methods and scaling strategies can have even larger impacts [than architectural changes]
Revisiting ResNets … (arxiv.org/abs/2103.07579)
�
Любая информация - важна
51
Receptive field
52
Receptive field != размер входной последовательности
53
Взаимодействия потенциально видим только на таком расстояние – receptive field
A
B
C
D
Взаимодействия факторов C и D с фактором A мы не увидим
Аугментация – что и зачем?
54
Аугментация – reverse-complement
55
Аугментация – shifts
56
2. Если предсказываем что-то в геноме – можно немного двигать окошко вокруг предсказываемой позиции. Насколько можно двигать и в любую ли сторону – зависит от задачи
Аугментация – общий совет
57
Если вы знаете, что какое-то изменение в входном объекте не меняет суть задачи – можно попробовать добавлять такое изменение в качестве аугментации
Заимствовать аугментации напрямую из изображений – плохая идея. Многое не работает (mixup и прочее).
Test-time аугментация
Во время предсказания часто можно сделать много немного измененных версий нашего объекта и усреднить предсказание для них всех
58
Оценка значимости при помощи test-time аугментации
А еще из такого набора предсказаний можно оценить дисперсию предсказаний модели и отбирать только значимые предсказания*
59
*иногда может выйти чушь
Как разбить данные
60
Как разбить данные. Случайные последовательности
Сложностей (почти) нет, в принципе, можно разбить случайным образом
Можно разбить на осмысленные группы, например, все последовательности, померянные с хорошей достоверностью, послать в валидацию
61
GC-состав
Участки открытого хроматина/сайты связывания транскрипционных факторов смещены по gc-составу
Потому качество классификации модели, что учится их отличать по gc-составу будет отлично от 0.5
Можно с этим бороться (грубый способ – biasaway), можно просто бейзлайн выбрать с учетом этого.
62
Геномные данные. Плохой вариант
63
Разбить геном на случайные куски – часть идет в обучение, часть идет в тестирование
Геномные данные. Плохой вариант
64
10.1371/journal.pcbi.1006625
Геномные данные. Плохое разбиение
65
10.3389/fgene.2019.01078
Можно заменить последовательности абсолютно другими, наложить сигнал с первых и все равно получить хорошее качество
Геномные данные. Плохое разбиение
66
Разбить геном на случайные куски – часть идет в обучение, часть идет в тестирование
Почти любой геномный сигнал вдоль последовательности непрерывен – близкие участки хорошо говорят друг о друге – модель просто выучивает позиции в геноме.
Геномные данные. Правильные разбиения
67
Часть хромосом – в обучение
Часть хромосом – в тест
Часть плечей хромосом – в обучение
Часть плечей хромосом – в тест
Позволяет модели смотреть особенности хромосом
TL;DR 2й части
68
Подробнее про проблему разбиения биологических данных для машинного обучения
Моя лекция на эту тему: https://www.youtube.com/watch?v=AAgZoO6ApIY
Материалы
https://colab.research.google.com/drive/1HtIKAGdjOKKx1yZTyG4MTvBjD5LreCGJ
69
Unsupervised/Self-supervised
Подходы, основанные на unsupervised/self-supervised обучении хорошо помогают в случае белков (AlphaFold2 использует self-supervised часть в том числе)
Хочется использовать это и для геномных последовательностей. Насколько это работает – вопрос, который осветят в среду
Следущие слайды для кеков.
70
DNABERT
71
Авторы заявляют, что у них предобучение работает лучше, чем обычное обучение.
Предобученные модели и модели с случайной инициализацией весов обучали одинаково.
Что происходит на графике?
DNABERT
72
Трансформеры, особенно сравнительно старые, склонны взрываться и выдавать после этого какое-то константное значение. Модели со случайной инициализацией (кроме 3-init) просто взрываются. В случае 3-init с большой вероятностью померла только часть весов
doi.org/10.1093/bioinformatics/btab083
DNABERT: мораль
73
ВСЕГДА, когда вам пытаются продать модель, которая училась в несколько этапов, проверяйте, что те модели, с которыми она сравнивалась, учились в максимально похожих с ней
Вероятно кек из той же области (а может крутая тема)
74
doi.org/10.1186/s13059-023-02941-w