Skip to content

Latest commit

 

History

History
89 lines (66 loc) · 16.3 KB

README.md

File metadata and controls

89 lines (66 loc) · 16.3 KB

Курс «Анализ транскриптомных данных»

На этой странице будут находиться материалы для курса «Анализ транскриптомных данных», который читается в осеннем семестре 2022/2023 учебного года в Московском государственном университете на базе Факультета биоинженерии и биоинформатики. Курс разработан и читается при поддержке фонда «Интеллект».

Это версия курса, прочитанная в 2022 году. На данный момент она самая полная по глубине, однако часть материала впоследствие была пересмотрена. Вы можете обратить внимание на более «свежие» курсы, прочитанные той же командой:

Анализ NGS, блок Транскриптомика (ФКН и ФББ ВШЭ, 2023)

Анализ scRNA-Seq (БФ МГУ, 2023)

Анализ транскриптомных данных (ФББ МГУ, 2024)

Запись на курс

Курс завершён в конце 2022 года, однако у него есть живой Telegram-чат, вступить в который может каждый желающий.

Комментарий по запуску Jupyter-notebook в Google Colab

Если у вас не работает rpy2 при использовании Google Colab, то возможным решением проблемы будет установка более старой версии пакета при помощи команды !pip install rpy2==3.5.1.

Также если у вас возникают проблемы с загрузкой датасетов или библиотек при помощи gdown, то можно попробовать загрузить файл при помощи команды gdown "${ID}&confirm=t" — проблема, скорее всего, уйдёт.

Также в части семинаров не обновён Google Drive ID с библиотеками для R, корректный ID сейчас выглядит так: 1XAbJa_suP-WFTKK628oM9EWsV7k-6fI9.

Программа курса

  1. Лекция: Технологии секвенирования следующего поколения (NGS). Экспериментальные подходы к секвенированию РНК тканей (bulk RNA-Seq). Сходства и различия с микрочиповыми технологиями. Основные базы данных (SRA, GEO). Презентация
    Семинар: Базовая работа с прочтениями. SRA-Toolkit, SRA-Explorer, FastQC, MultiQC. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=KxkTMlaPp9s

  2. Лекция: Выравнивания (STAR, HISAT2) и псевдовыравнивания (kallisto, Salmon). EM-алгоритм для оценки представленности транскриптов (RSEM). Презентация
    Семинар: «препарирование» EM-алгоритма и его реализация на Python. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=LKukq5G8w-M

  3. Лекция: Основные распределения, встречающиеся в омиксных данных. Методы нормализации в bulk RNA-Seq: от RPKM и TPM до RLE и TMM. Контроль за дисперсией в данных. Презентация
    Семинар: Статистические подходы к определению максимально правдоподобных распределений данных. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=6-Ul5Ir-FW4

  4. Лекция: Дифференциальная экспрессия, параметрические и непараметрические тесты. Линейные модели и обобщённые линейные модели (GLM). Работа с экспрессиями на уровне транскриптов. tximport и Sleuth. Презентация
    Семинар: Написание собственного алгоритма определения дифференциально экспрессированных генов. Работа с пакетами DESeq2 и edgeR. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=okVJqArrw4Y

  5. Лекция: Системный анализ bulk RNA-Seq: анализ обогащённости (GO Enrichment Analysis), Gene Set Enrichment Analysis (GSEA и ssGSEA). Работа с экспрессионными данными на уровне генных сигнатур. Понятие деконволюции bulk RNA-Seq. Презентация
    Семинар: Практическая работа с экспрессионными данными на уровне генных сигнатур. Сравнение различных подходов к определению клеточного состава bulk RNA-Seq (signature-based vs. deconvolution). Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=OcxfIKVu0-s

  6. Лекция: Понятие и необходимость scRNA-Seq. Методы подготовки библиотек scRNA-Seq. Сравнение различных подходов для подготовок библиотек для scRNA-Seq. Batch effect в данных scRNA-Seq. Презентация
    Семинар: Работа с базами данных scRNA-Seq. Дискуссия на тему правильного выбора стратегии подготовки библиотек. Основы работы с библиотеками scanpy и Seurat. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=GliXLQkatzs

  7. Лекция: Выравнивания и псевдовыравнивания в scRNA-Seq. Контроль качества клеток в scRNA-Seq. Определение и устранение пустых клеток и дублетов. Презентация
    Семинар: Собственная реализация алгоритма поиска пустых капель. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=u8AnZrgF9xY

  8. Лекция: Процессинг данных scRNA-Seq: сходства и различия с bulk RNA-Seq. SCTransform, LogNorm, pagoda2 и прочие способы контроля за дисперсией данных. Презентация
    Семинар: Сравнительный разбор подходов к контролю за дисперсией в данных. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=_kkFKvipMP0

  9. Лекция: Проклятие размерности. Feature selection при помощи регуляризаций. Методы feature selection, принятые в scRNA-Seq: выделение высоко-вариабельных генов и подходы к этому выделению. Методы снижения размерности: PCA, t-SNE, UMAP, ForceAtlas2. Графовое представление данных. Презентация
    Семинар: Работа с различными методами снижения размерности в scanpy. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=E2BxSYmGGNI

  10. Лекция: Подходы к устранению батч-эффекта в scRNA-Seq: Harmony, bbkNN, Scanorama, MNN, conos. Анализ методом канонических корреляций (CCA). Презентация
    Семинар: Сравнение подходов для устранения батч-эффектов в данных scRNA-Seq. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=Ng05Vt5V23g

  11. Лекция: Использование вариационных аутоэнкодеров для процессинга scRNA-Seq. scVI-tools. Презентация
    Семинар: Препарирование scVI, написание собственного вариационного аутоэнкодера на PyTorch и Pyro. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=rseFOnEG1nM

  12. Лекция: Подходы к кластеризации данных. Иерархическая кластеризация, K-Means, графовые алгоритмы кластеризации (Louvain, Leiden, SNN). Понятие стабильности кластера, бутстрэп. Презентация
    Семинар: Реализация алгоритма оценки стабильности кластеров. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=97TgrEl1YV8

  13. Лекция: Определение траекторий дифференцировки клеток в scRNA-Seq: Monocle2, Monocle3, иные подходы. Обобщённые аддитивные модели (GAM) и их использование для определения генов, которые меняют свою экспрессию по ходу дифференцировки клеток. RNA velocity. Презентация
    Семинар: Написание собственного алгоритма определения генов, которые меняют свою экспрессию по ходу псевдо-времени. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=0XbXUaQ0QzE

  14. Лекция: Определение типов клеток в scRNA-Seq: автоматическое и мануальное. Поиск взаимодействий между различными типами клеток, CellPhoneDB. Презентация
    Семинар: Написание алгоритма автоматического определения типов клеток. Сравнение существующих алгоритмов. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=Xo7iyrmbN5c

  15. Лекция: Мультимодальные омики одиночных клеток. Подходы для анализа мультимодальных омик одиночных клеток: MOFA, WNN, totalVI, multiVI. CLR-transformation в омиксных данных. Работа с омиксными данными как с композиционными данными. Презентация
    Семинар: Воркшоп по анализу мультимодальных омиксных данных. Jupyter-notebook
    Запись: https://www.youtube.com/watch?v=45cWECpM6x0

Условия зачёта

Критерием успешного освоения курса (зачёт для студентов МГУ или сертификат для свободных слушателей) является выполнение одного из двух условий:

  1. выполнение двенадцати и более домашних заданий как минимум на «удовлетворительно»,
  2. выполнение двух проектных заданий, которые даются в середине и конце курса.

Формат отчёта по курсу — ссылка на GitHub-репозиторий с выполненными заданиями (форма для обратной связи будет выложена позднее). Проверяться будут только те работы, которые хотя бы формально могут претендовать на зачёт (т.е. репозитории с 11 и менее домашними заданиями или всего одним проектом проверяться не будут в принципе).