ТЕОРИЯ ГЕНОМНОЙ СБОРКИ. ГРАФЫ. ИСТОЧНИКИ АРТЕФАКТОВ ПРИ СБОРКЕ Касьянов Артем 01.10.2014 Что такое геном? • Полный набор ДНК, содержащийся в организме: – Хромосомы – Органеллы(митохондрии, хлоропласты и т.д.) – Плазмиды – ДНК-вирусы – Бактериофаги • Без потери общности можно представить в виде набора строк из четырехбуквенного алфавита(A,G,C,T). 2 Размеры геномов • Вирусы, плазмиды – От 1 т.п.н. до 100 т.п.н. …HIV 9181 п.н. • Бактерии, археи – От 1 м.п.н. до 10 м.п.н. …E.coli 4.6 м.п.н. • Простейшие эукариоты – От 10 м.п.н. до 100 м.п.н. …Malaria 23 м.п.н. • Животные, растения – От 100 м.п.н. до 150 млрд.п.н. …Human 3.2 млрд. п.н. 3 WGS секвенирование Несколько копий ДНК молекул Фрагменты длиной 200 200,000 п.н. Не остается информации из какой части генома взят тот или иной фрагмент 4 WGS секвенирование: фрагменты Секвенатор считывает по 100-1000 п.н. с конца/концов фрагмента. Размеры фрагментов известны с точностью ± 10-20%. CAAGCTGAT... Неизвестная последовательность…GTTTGGAAC Пары чтений 5 Геномные чтения • Короткие поддпоследовательности генома – Неизвестно из какого места генома они получены. – Неизвестно с какой нити они взяты • Перекрываются друг с другом • Содержат ошибки 6 Сборка генома [http://cseweb.ucsd.edu/~ppevzner/B4B/excerpts/Compeau-Pevzner.pdf] 7 Что такое граф • Граф G — это упорядоченная пара G := (V, E), где V — это непустое множество вершин или узлов, а E — множество пар (в случае неориентированного графа — неупорядоченных) вершин, называемых рёбрами. • Путем в графе называют конечную последовательность вершин, в которой каждая вершина (кроме последней) соединена со следующей в последовательности вершиной ребром. [http://ru.wikipedia.org/wiki/Граф_(математика)] 8 Алгоритмы сборки • OLC(overlap-layout-consensus) алгоритмы • Алгоритмы, основанные на de Bruijn графах • «Жадные» алгоритмы 9 OLC алгоритмы 1)Вычисление перекрытий 2) Построение графа перекрытий и нахождение гамильтонового пути 3)Вычисление множественного выравнивания 4)Построение консенсус последовательности 10 Гамильтонов путь Гамильтонов путь — путь, содержащий каждую вершину графа ровно один раз. Нахождение такого пути NPполная задача Уильям Гамильтон, 1856 11 OLC алгоритмы • • • Staden, R. A new computer method for the storage and manipulation of DNA gel reading data(1982) Nucleic Acids Research 10, 4731-4751. – Построен на основе жадного подхода – Предложен термин контиг 1984 – SEQAID – Peltola, H., Söderlund, H., and Ukkonen, E. 1984. SEQAID: A DNA sequence assembly program based on a mathematical model. Nucleic Acids Res. 12, 307-321. – Первый OLC сборщик 1992 – CAP – Huang, X. 1992. A contig assembly program based on sensitive detection of fragment overlaps. Genomics 14, 18-25. 13 OLC алгоритмы Название Технологии Авторы Presented Edena Illumina D. Hernandez et al. 2008 Celera WGA Assembler / CABOG Sanger, 454, Illumina Myers, G. et al.; Miller G. et al. 2004 MIRA Sanger, 454, Illumina, SOLiD, IonTor, PacBio Chevreux, B 1998 PCAP Sanger, 454 Huang et al. 2003 14 De Bruijn граф AGCTATCGTGACG AGCTAT GCTATC AGCTATC ATCGTG AGCTATC AGCTAT GCTATCG TCGTGA ATCGTGA CTATCG TATCGT CTATCGT CGTGAC TCGTGAC GCTATCG GCTATC TATCGTG GTGACG CGTGACG CTATCG CTATCGT TATCGT TATCGTG CGTGACG GTGACG TCGTGAC CGTGAC TCGTGA ATCGTGA ATCGTG 15 De Bruijn граф AGCTATC GCTATCG CTATCGT TATCGTG ATCGTGA TCGTGAC CGTGACG AGCTATCGTGACG 16 Эйлеров путь Эйлеров путь в графе — это путь, проходящий по всем рёбрам графа и притом только по одному разу. Каждая вершина этого графа имеет чётную степень, поэтому этот граф — эйлеров. Обход рёбер в алфавитном порядке даёт эйлеров цикл. Граф Кёнигсбергских мостов. 17 De Bruijn граф TGTACTATGTCCTA TGT GTA TAC ACT CTA TAT ATG TGT GTC TCC CCT CTA TGTA GTAC TACT ACTA CTAT TATG ATGT TGTC GTCC TCCT CCTA GTA GTAC TAC TACT ACT TGT CTA GTC ATG GTCC TCC TATG TCCT CCT TAT 18 De Bruijn граф TGTA GTAC TACT ACTA CTAT TATG ATGT TGTC GTCC TCCT CCTA TGTACTATGTCCTA TGTC GTCC TCCT CCTA CTAT TATG ATGT TGTA GTAC TACT ACTA TGTCCTATGTACTA 19 De Bruijn graph algorithms 1) Построение хэша и deBruijn граф 2) Упрощение линейных участков 3) Удаление «пузырей» и «хвостиков» [Daniel R. Zerbino and Ewan Birney, Velvet: Algorithms for de novo short read assembly using de Bruijn graphs. Genome Res. May 2008; 18(5): 821–829. ] 20 De Bruijn graph Klow Kmid Khigh 21 De Bruijn граф 1)Сильная зависимость от выбора параметра k. Не существует формальной методики позволяющей выбрать этот параметр оптимальным образом. 2)Сильная зависимость от наличия ошибок в чтениях. 22 Алгоритмы, основанные на De Bruijn графах Наименование Технологии Авторы Разработан ABySS Illumina, SOLiD Simpson, J. et al. 2008 CLC Genomics Workbench Sanger, 454, Illumina, SOLiD CLC bio 2008 Pevzner, P. et al 2001 Chaisson, MJ. et al. 2008 Euler Euler-sr Sanger, 454 454, Illumina IDBA (Iterative Illumina,454,Solex Yu Peng, Henry C. M. 2010 De Bruijn graph a Leung, Siu-Ming Yiu, Francis short read Y. L. Chin Assembler) Velvet Sanger, 454, Illumina, SOLiD Zerbino, D. et al 2007 SPAdes Illumina, Ion Torrent, PacBio Bankevich, A et al. 2012 23 String graph 24 Алгоритмы, основанные на String graph методологии Наименование Технологии Авторы Разработан SGA Illumina, Ion Torrent Simpson, J. et al. 2011 Newbler Sanger, 454, Illumina, Ion Torrent 454/Roche 2009 25 Более реалистичный пример графа [http://bioinformatics.org.au/ws13/wp-content/uploads/ws13/sites/3/ FullPresentations/Torsten-Seemann_2013-Winter-School-presentation.pdf] 26 Что усложняет графы • Ошибки в чтениях – Приводят к появлению в графе ошибочных ребер и вершин. • Диплоидные и полиплоидные организмы – Приводит к появлению дополнительных путей в графе • Повторы 27 Что такое повтор? • Участок ДНК, который встречается более одного раза в геномной последовательности. • Наиболее частые – Транспозоны – Сателлитные повторы – Дуплицированные гены(паралоги) 28 Как повторы влияют на сборку Повторяющиеся элементы сливаются в один контиг. [http://bioinformatics.org.au/ws13/wp-content/uploads/ws13/sites/3/ FullPresentations/Torsten-Seemann_2013-Winter-School-presentation.pdf] 29 Как повторы влияют на сборку Слияние тандемных повторов Исключение участка между повторами Перестановка [http://bioinformatics.org.au/ws13/wp-content/uploads/ws13/sites/3/ FullPresentations/Torsten-Seemann_2013-Winter-School-presentation.pdf] 30 OLC vs DBG • DBG – Очень чувствителен к повторам и ошибкам в чтениях – Одна ошибка в чтении создает k ошибочных узлов – Ключевой параметр: размер k. • OLC – Менее чувствительны к повторам и ошибкам в чтениях – Построение графа требует больше вычислительных ресурсов – Плохо масштабируется при увеличении числа чтений – Ключевой параметр: minOverlapLen, %. 31 Скаффолдинг 32 Скаффолдинг • Парные чтения – известно расстояние между парными чтениями – неизвестна последовательность между парными чтениями • Большинство пар чтений будет в одном контиге – если длина большинства контигов больше длины чтений • Часть парных чтений будет в разных контигах – эти контиги возможно связаны 33 От контигов к скаффолдам Парные чтения Контиги Скаффолд Гэпы Гэпы [http://bioinformatics.org.au/ws13/wp-content/uploads/ws13/sites/3/ FullPresentations/Torsten-Seemann_2013-Winter-School-presentation.pdf] 34 Параметры набора данных • Длина рида • Покрытие • Качество • Тип библиотеки: SE,PE,MP. 35 Технологии секвенирования Компания Платформа Технология Длина рида, п.н. ABI/Life technologies 3130xL-3730xL CE-Sanger 600-1000 Beckman GeXP Genetic Analysis System CE-Sanger 600-1000 Roche/454 Genome Sequencer FLX System Pyrosequencing 230-400 Illumina HiSeq 2000/miSeq Reversible terminator sequencing by synthesis 2 x 150 ABI/SOLiD 5500xl SOLiD System Sequencing by ligation 25 - 35 Helicos HeliScope Single-molecule sequencing by synthesis 25 - 30 Pacific Biosciences PacBio RS Single Molecule Real Time 964 ABI/Life technologies Ion PGM™ Sequencer Semiconductor Sequencing 35 - 200 36 Что такое длина вставки? 37 Если вы подписались на длинный геном Требуйте набор библиотек с разной длиной вставки Геном мухоловки - 1.1 Gb Библиотеки: 1)~200 4)~500 2)~300 5)~2400 3)~400 6)~4100 7)~5100 8)~18000 9)~21000 [Ellegren H et al. , The genomic landscape of species divergence in Ficedula flycatchers. 38 Nature 2012, 491.] Что такое покрытие? • Это сколько раз в среднем нуклеотид генома покрыт ридами [http://http://gcat.davidson.edu/phast/] 39 Необходимое покрытие для de Novo сборки Длина чтения Необходимое покрытие <400 п.н.(Illumina, SOLiD, Helicos, Ion Torrent) 30x-60x >400 п.н.(454,PacBio) 20x-40x 40 Форматы файлов • FASTA формат >SEQ_ID GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTT T • FASTQ формат @SEQ_ID GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTT T + !''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC65 De novo сборка генома • Предобработка FASTQC, prinseq, trimmomatic, kmc2,kmernator2… • Сборка Newbler, Spades, Velvet… • Оценка качества сборки QUAST, BLAST, Prinseq, Bowtie… 42 Предобработка • Оценка качества набора чтений.(FASTQC) • Триммирование ридов.(trimmomatic…) 43 Предобработка • Фильтрация по кмерам. (kmernator2…) 44 Как оценить качество сборки? • Число контигов – Чем меньше тем лучше. • Размер контигов – Средняя длина, максимальная длина, медиана, N50 • Суммарная длина – Должна быть близка к ожидаемой • Число “N” – Чем меньше, тем лучше 45 Что такое N50? N50 показывает качество сборки Скаффолды располагают по убыванию длины Суммируют длину, начиная с самого большого скаффолда. На каком скаффолде покроем половину генома? Длина этого скаффолда называется N50. [http://www.discoveryandinnovation.com/BIOL202/notes/lecture25.html] 46 Верификация сборки • Картировать чтения на сборку. • Определить места в которых чтения картируются с большим числом замен, вставок/делеций. • Оценка покрытия областей сборки в соотвествие с GC контентом. По сборке определяется эмпирическое распредление покрытия от GC контента и маркируются области в которых наблюдается отклонение покрытия. • -Оценка корректности картирования парных чтений по длинам вставки. По сборке определяется эмпирическое распределение длин вставок и на его основе маркируются области с некорректными значениями длин вставок, картирующихся на них пар чтений. 47 Верификация сборки • ALE(Assembly Likelihood Evaluation)[Clark et al.,2013] • FRC(Feature Response Curve)[Vezzi et al. 2012] • Amosvalidate[Phillippy et al., 2008] 48 Почему тяжело собирать геномы? • Биологические причины – Высокая плоидность, гетерозиготность, повторы • Трудности, свзяанные с секвенированием – Очень большие геномы, неточное секвенирование • Вычислительные трудности – Очень большие геномы, сложность структуры • Оценка качества – Очень трудно оценивать качество 49 Что нужно для хорошей сборки Длина чтений Длина чтений или хотя бы длины вставок должны быть больше чем длина повторов Покрытие Требуется высокий уровень покрытия Качество Ошибки могут скрывать перекрытия [Current challenges in de novo plant genome sequencing and assembly Schatz MC., Witkowski, McCombie, WR(2012) Genome biology,12:243] 50 Виды сборок 51 [Chain at el. Genome Project Standards in a New Era of Sequencing. Science. 2009. 326.] Виды сборок • Standard draft – просто запустили ассемблер • High-Quality Draft – покрывает 90% целевого генома, удалялись загрязнения. Годится для аннотации. • Improved High-Quality Draft – поиск ошибок сборки, закрытие гэпов в скаффолдах. Годится для сравнительной геномики. • Annotation-Directed Improvement – проделана аннотация, ошибки в белок кодирующих последовательностях сведены к минимуму. • Noncontigous finished – предприняты усилия для закрытия большинства гэпов, ошибок сборки и областей с повторами(досеквенирование). • Finished – менее 1 ошибки на 100 000 нуклеотидов. 52 ВОПРОСЫ? При подготовке презентации использовались материалы лекции Сергея Науменко в рамках курса «Обработка данных NGS» в ФББ МГУ, материалы с сайтов 53 http://www.vicbioinformatics.com De novo секвенирование транскриптома vs de novo секвенирование генома • Геномы не модельных организмов могут быть достаточно сложными для восстановления(большое число повторов, полиплоидность, большой размер). • Секвенирование транскриптома позволяет быстро получить доступ к информации о генах и белках, использующихся для функционирования организма. • В большинстве случаев для более точной аннотации генома все равно потребуются транскриптомные данные. • Секвенирование траснкриптома дешевле полногеномного секвенирования. • Вследствие развития технологий секвенирования растет длина рида. На данный момент «слитые» риды Illumina Miseq достигают трети средней длины транскрипта, что значительно упрощает сборку и позволяет использовать OLC сборщики. 54 De novo секвенирование транскриптома vs de novo секвенирование генома • Транскриптомы различных тканей взятые в разные промежутки времени могут очень сильно отличаться. • 20% генов дают 80% ридов. [O'Neil et al. BMC Genomics 2010, 11:310] 55 De novo секвенирование транскриптома vs de novo секвенирование генома • Неравномерность покрытия транскриптов. [Zhong Wang et al. Nat. Rev. Gen. 2009, Vol.10] 56 Сборка транскриптомов vs сборка геномов Программы для сборки геномов ожидают более-менее равномерное распределение покрытия. Собранные регионы для которых наблюдается возрастание покрытия принимаются за повторы. Но индивидуальные гены внутри транскриптома могут иметь очень разное покрытие. [http://training.bioinformatics.ucdavis.edu/docs/2013/09/short-course-2013/ _downloads/MB_RNASeq_Trans_Assembly_SC_2013.pdf] 57 Splicing graph [http://proline.bic.nus.edu.sg/dedb/methodology.html] 58 Общая схема de novo сборки транскриптома [Martin & Wang (2011) Nat. Rev. Gen. 12,671] 59 Общая схема de novo сборки транскриптома [Martin & Wang (2011) Nat. Rev. Gen. 12,671] 60 Общая схема de novo сборки транскриптома [Martin & Wang (2011) Nat. Rev. Gen. 12,671] 61 Транскриптомные сборщики Сборщики, основанные Сборщики, основанные на DeBruijn графах. на OLC подходе(454, Sanger, PacBio) (Illumina,SOLiD,IonTorrent ) • • • • Trinity(Broad) Velevet(Oases) TransAbyss SOAPtrans • • • • Mira3 Est2assembly GS/Newbler(Roche) SMRT Pipe(PacBio) 62 Оценка качества сборки • Картирование чтений обратно на сборку. – >60% ридов картируется - норма. – >80% ридов картируется - очень хороший результат. • Оценка числа контигов. – Должно быть в пределах размера транскриптома.( A.Thaliana ~25 000 генов, H.sapiens ~30 000 генов) • Оценка среднего покрытия контигов. • Оценка числа уникальных п.н.. – чем больше тем лучше. • Оценка N50 контигов. Должно соответствовать N50 транскриптома. (A. Thaliana ~1900 п.н., H.sapiens ~2500 п.н.) • Оценка числа контигов >1 т.п.н.. – Чем больше тем лучше. 63 Постобработка транскриптомной сборки «У меня слишком много контигов, что делать дальше?» • Многие транскриптомные сборщики(в частности Trinity) дают большое количество контигов(>100K) • Возникает вопрос, как уменьшить число контигов. • Можно сформулировать следующее правило: Не нужно кластеризовать, нужно фильтровать. • Кластеризация приведет к схлопыванию паралогов, альтернативных изоформ и семейств генов. • Кластеризация приводит к возникновению химер. • Фильтруйте по % изоформ, покрытию, ORF, бластовым хитам и т. д. Оценивать насколько велики потери данных в результате фильтрации можно картируя риды на контиги. 64 Velvet • Автор: Zerbino, D. • Представлен: 2007 • Поддерживаемые технологии: Sanger, 454, Solexa, SOLiD • Текущая версия: 1.2.10 • http://www.ebi.ac.uk/~zerbino/velvet/ 65 Velvet • velveth обрабатывает файлы с последовательностями и конструирует хэштаблицу, на основании этого создает два файла, Sequences и Roadmaps, которые необходимы для velvetg. • velvetg – ядро Velvetа, создает de Bruijn граф и на основании него конструирует контиги. • Поддерживаемые форматы: fasta(по умолчанию); fastq; fasta.gz; fastq.gz; sam; bam; eland; gerald 66 velveth • ./velveth <output_directory> <hash_length> [[-<file_format>][-<read_type>] <filename>] • read_type – short(по умолчанию); shortPaired; short2; shortPaired2; long; longPaired 67 velvetg(одиночные чтения) • ./velvetg <output_directory> [<parameters>] • -cov_cutoff • -min_contig_lgth • -max_coverage • -exp_cov 68 velvetg(парные чтения) • ./velvetg <output_directory> [<parameters>] • ./shuffleSequences_fasta.pl forward_reads.fa reverse_reads.fa output.fa • -ins_length • -ins_length_sd • -ins_length2 • -ins_length2_sd • -ins_length_long • -ins_length_long_sd 69 Velvet файлы с результатами сборки • • • • contigs.fa stats.txt LastGraph Final graph has 3623771 nodes and n50 of 7, max 99, total 13230514, using 0/1650370 reads 70