Специалистам, решающим биологические задачи с применением биоинформатических методов, необходимо владеть разнообразными инструментами, позволяющими корректно обрабатывать биологические данные разного типа, происхождения и структуры. Как правило, единственного и однозначного решения конкретной задачи не существует, а используемые программы, сервисы и базы данных постоянно обновляются, появляются новые, а какие-то устаревают. В связи с этим биоинформатикам необходимо проявлять гибкость в построении протокола исследования, постоянно развивать навыки программирования и держать планку владения профессиональным инструментарием на высоком уровне.
Представленный курс нацелен на то, чтобы дать студентам общее представление о существующих задачах в биоинформатике, подходах к решению некоторых из них, а также развить навык поиска и выбора необходимой информации и актуальных инструментов для решения тех или иных задач на конкретных примерах, не становясь при этом заложниками стереотипных рассуждений.
Корректная первичная обработка входного материала все больше приобретает рутинный характер, однако именно этот шаг напрямую влияет на полученный результат. Одним из трендов современной биоинформатики является упор на воспроизводимость и единообразность обработки данных. Основным способом следования таким тенденциям считается создание программных сценариев, которые могут быть реализованы на различных языках программирования. Абсолютно необходимым навыком любого биоинформатика является умение работать в командной строке и создавать такие программные сценарии.
В первом блоке курса «Биоинформатика и компьютерные технологии» мы со студентами кратко познакомимся с операционной системой Linux, командной строкой и интерпретатором командной строки bash. Многие типы биологических данных могут быть сохранены в текстовых файлах. С помощью минимального знания возможностей bash можно довольно быстро обработать эти файлы. В рамках курса мы изучим работу со строками, познакомимся с регулярными выражениями, научимся реализовывать шаги обработки файлов в виде конвейера, а также разберем потоки, что позволит не только сохранять результаты обработки, но и контролировать возможные ошибки. Особое внимание будет уделено созданию и запуску программных сценариев.
Для хранения биологических данных разработано большое количество специфических форматов файлов. Специалисту по биоинформатике необходимо хорошо разбираться в структуре таких файлов для возможности корректного и оптимального выстраивания стратегии исследования. Коллекция форматов файлов, хранящих результаты секвенирования нуклеиновых кислот, отличается, возможно, наибольшим разнообразием. В курсе предусмотрены занятия, где будут кратко освещены этапы развития технологий секвенирования, на примерах рассмотрены основные типы файлов, возможные задачи и подходы к их решению, а также закреплены навыки, полученные в предыдущем блоке.
На сегодняшний день накоплено огромное количество разнообразных биологических данных, а для их хранения и проведения определенных типов анализа созданы базы данных и веб-сервисы. Основная часть курса посвящена обзору и работе с наиболее востребованными, развивающимися и доступными биоинформатическими ресурсами, представленными в Интернет. В первую очередь мы изучим существующие геномные браузеры, а также разберем возможности баз данных NCBI, включая получение нуклеотидных и аминокислотных последовательностей. Весь курс в целом сосредоточен на анализе последовательностей макромолекул. Одной из наиболее распространенных задач является поиск гомологичных последовательностей. Для решения этой задачи чаще всего используется семейство программ BLAST. На занятия мы разберем типы BLAST и спектр задач, которые можно решить с его помощью, поговорим об особенностях локального и глобального выравниваний, изучим карты локального сходства. Знакомство с открытой базой Uniprot позволит студентам получить представление о работе с белковыми последовательностями. Обзор банков данных, содержащих информацию о метаболических путях, различных типах взаимодействий и функциональных аннотаций, локализации белковых молекул (GO, KEGG, Reactome, STRING и др.), поможет ответить на целый спектр вопросов, касающихся данных белковой природы.
Для понимания механизмов, происходящих в клетке, важно изучать взаимодействия макромолекул, например, находить сайты связывания транскрипционных факторов с ДНК или другие функциональные области. Обычно такие локусы представляют собой до какой-то степени вариативную последовательность, которую можно, тем не менее, охарактеризовать специфическим профилем. Несколько занятий буду посвящены поиску мотивов и построению профилей. В конце курса будут рассмотрены подходы, позволяющие устанавливать родственные связи между организмами, имея в своем распоряжении набор гомологичных последовательностей макромолекул. Мы изучим основы молекулярно-филогенетического анализа, ознакомимся с подходами к построению филогенетических деревьев и их интерпретации.
Несмотря на то, что курс ориентирован на развитие навыков использования профильных программ, утилит и сервисов, немаловажный акцент будет сделан на обсуждении биологической природы исследуемых данных. Понимание специфики входной информации с точки зрения биологии, позволяет учитывать артефакты, оценивать качество материала, отличать ошибку от значимых результатов, а также понимать недостатки и ограничения, как входных данных, так и утилит для их анализа. Все это в целом позволит студентам шире взглянуть на задачи анализа биологических данных, ставить перед собой адекватные вопросы и выстраивать наиболее корректные пути анализа с применением актуальных инструментов.
Компетенции, полученные при изучении курса «Биоинформатика и компьютерные технологии», будут необходимы в курсах «Введение и программирование на Python», «Введение в алгоритмы и устройство компьютера», «Введение в NGS», «Язык R для анализа и визуализации данных».
Преподаватели
- Анастасия Жарикова