phd_ru: (Default)
[personal profile] phd_ru
Продолжаю. Поставил юноша GATK (Genome Analysis Toolkit) и даже сумел его запустить.

А ещё в дистрибутиве GATK (в целом написанного на Джаве) лежат дистрибутивы TensorFlow и Keras. Молекула ДНК — это 3 миллиарда нуклеотидных пар. Целиком её никто не секвенирует — нет настолько быстрых приборов. Секвенируют небольшими сегментами, миллиона по 3. Но даже получив табличку на 3 миллиона пар, никто в ней глазками отклонения не углядит. Тут-то и пригождаются Методы Анализа Больших Данных.

Беда в том, что в дистрибутиве GATK дистрибутивы TensorFlow и Keras а) старых версий, и б) несовместимых между собой. Юноша лезет в Интернет, находит нужные слова и пишет pip install --upgrade tensorflow keras. И получает самые свежие версии… опять несовместимые между собой. Последний Keras всё ещё не работает с TensorFlow 2.0. Юноша опять пишет pip install -U tensorflow==1.15 и, наконец, получает работающий пайплайн.

Молекула ДНК расплетается на 2 полуспирали, нарезается на сегменты, сегменты секвенируются и последовательности нуклеотидов пишутся в файлы — каждая полуспираль в свой. Потом эти файлы склеиваются; поскольку полуспирали на секвенировании могут не полностью совпадать, то склеить 2 файла полуспиралей в один файл с двумя колонками не вполне тривиально — в каждой колонке нужно смотреть, какие нуклеотиды стоят в начале/конце цепочки, и если в другом файле их не хватает, забивать часть колонки нулями. Для этого, конечно, есть свои программы.

Потом полученный гигантский двухколоночный файл обрабатывается на предмет поиска отклонений. Поскольку сын работает в хирургической клинике, то первое, что ищется — маркеры болезней, влияющих на свёртываемость крови. В дистрибутиве GATK есть натренированная модель, ну и в каждой лаборатории её дотренировывают или перетренировывают заново на собственных чистых данных.

Для того, чтобы этот пайплайн мне объяснить, сын прочитал мне лекцию часа на полтора. Во время которой я убедился, что он уже хорошо разбирается в теме. Я восхищён!

Upd. Вспомнил из лекции: все 3 миллиарда и не нужны. За 4 с половиной миллиарда лет эволюции накопилось много мусора. Поэтому одна из задач секвенирования — нарезать молекулу ДНК на интересные сегменты, содержащие работающие (кодирующие) последовательности.

X-Post: https://phd.livejournal.com/313481.html

January 2026

S M T W T F S
     123
45678910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 8th, 2026 12:42 am
Powered by Dreamwidth Studios