Streszczenie rozprawy doktorskiej "GPU

Transkrypt

Streszczenie rozprawy doktorskiej "GPU
Streszczenie rozprawy doktorskiej pt. Konstrukcja grafu w
problemie asemblacji caªego genomu z wykorzystaniem procesorów
kart gracznych
mgr in». Michaª Kierzynka
Promotor: prof. zw. dr hab. in». Jacek Bªa»ewicz
Promotor pomocniczy: dr in». Paweª Wojciechowski
1
Wst¦p
Bioinformatyka i asemblacja genomu
Podstawowym no±nikiem informacji genetycznej materii o»ywionej jest kwas dezoksyrybonukleinowy
(DNA). Fakt ten zostaª odkryty w roku 1953 przez Jamesa Watsona i Francisa Cricka bazuj¡cych na
badaniach Rosalind Franklin, Raymonda Goslinga oraz Maurice'a Wilkinsa. To wydarzenie zainicjowaªo gwaªtowny rozwój biologii molekularnej gaª¦zi nauki analizuj¡cej sposób dziaªania organizmów na
poziomie kodowania informacji genetycznych. Jednym z projektów, który miaª bardzo istotny wpªyw
na wiedz¦ w tej dziedzinie byª tzw. Human Genom Project. Rozpocz¦ty w roku 1990 i trwaj¡cy 13
lat miaª na celu dogª¦bne poznanie ludzkiego genomu. Jedn¡ z motywacji projektu byªa nadzieja na
wynalezienie nowych leków, które maiªy przeciwdziaªa¢ chorobom uwa»anym dotychczas za nieuleczalne. Efektem projektu byªo poznanie sekwencji ponad 3 miliardów par zasad koduj¡cych 20-25 tysi¦cy
genów. Przetwarzanie takich zbiorów danych byªo mo»liwe dzi¦ki post¦powi technicznemu, który zazwyczaj towarzyszy tak du»ym projektom. Ogromne zbiory danych b¦d¡ce rezultatem biomedycznych
eksperymentów nie mogªyby by¢ przetworzone gdyby nie wydajne algorytmy i metody obliczeniowe.
Na tym gruncie powstaªa nowa dyscyplina nauki zwana biologi¡ obliczeniow¡ lub te» bioinformatyk¡.
Zªo»ono±¢ procesów w organizmach »ywych oraz wspomniana du»a ilo±¢ danych do przetworzenia s¡
gªównymi powodami rosn¡cej liczby metod informatycznych, które staªy si¦ nieodª¡czn¡ cz¦±ci¡ biologii
molekularnej.
Mimo post¦pu jaki dokonaª si¦ w tej dziedzinie na przestrzeni kilkudziesi¦ciu ostatnich lat, do dzi±
nie opracowano uniwersalnej metody na odczytywanie genomu organizmów. Problem le»y nie tylko
w cz¦±ci biochemicznej eksperymentu (odczytywaniu pojedynczych nukleotydów, czyli sekwencjonowaniu) ale równie» w skªadaniu odczytanych fragmentów genomu w caªo±¢, a zatem w opracowaniu
dobrego algorytmu rozwi¡zuj¡cego problem asemblacji. Algorytmy do asemblacji DNA s¡ niezb¦dne,
poniewa» istniej¡ce technologie pozwalaj¡ odczytywa¢ jedynie bardzo krótkie odcinki materiaªu genetycznego, które nast¦pnie trzeba zªo»y¢ w caªo±¢. Warto zauwa»y¢, »e problem asemblacji
de novo
(czyli bez wcze±niejszej znajomo±ci genomu) nale»y do klasy problemów silnie NP-trudnych i przy pewnych ograniczeniach mo»na sprowadzi¢ go do problemu poszukiwania najkrótszego wspólnego zªo»enia
(ang. Shortest Superstring Problem). Jednak»e ze wzgl¦du na specyk¦ odczytów pochodz¡cych z se-
kwenatorów, cz¦sto nie ma mo»liwo±ci stworzenia pojedynczej sekwencji konsensusowej, a rezultatem
dziaªania algorytmów jest wówczas zbiór sekwencji (kontigów) ª¡cznie pokrywaj¡cych jak najwi¦ksz¡
cz¦±¢ poszukiwanego genomu.
Najcz¦±ciej stosowanym podej±ciem do rozwi¡zania problemu asemblacji typu
de novo
s¡ rozwi¡-
zania oparte na grafach. W du»ej mierze, to wªa±nie od jako±ci stworzonego grafu zale»¡ dalsze wyniki,
czyli dªugo±¢ jak i jako±¢ otrzymanych kontigów. Pomimo, i» w ostatnich latach pojawiªo si¦ wiele
algorytmów do asemblacji DNA typu de
novo,
ka»dy z nich ma pewne wady czy ograniczenia. Niektóre
z nich nie radz¡ sobie z du»ymi zbiorami danych, inne produkuj¡ relatywnie krótkie kontigi lub ich
wyniki s¡ kiepskiej jako±ci sekwencje nie zawsze s¡ zªo»one poprawnie. Jako±¢ rozwi¡za« jest niestety
nierzadko po±wi¦cana kosztem szybko±ci dziaªania algorytmu. Z drugiej strony obserwowany wzrost
mocy obliczeniowej, ilo±ci pami¦ci operacyjnej oraz pojawiaj¡ce si¦ nowe architektury obliczeniowe
umo»liwiaj¡ stosowanie coraz bardziej zaawansowanych równolegªych algorytmów asemblacji pozwalaj¡cych cz¦±ciowo wyeliminowa¢ wspomniany kompromis pomi¦dzy jako±ci¡ rozwi¡zania a czasem
trwania oblicze«.
Cel i zakres pracy
Niniejsza rozprawa jest odpowiedzi¡ na opisany powy»ej problem. Jej gªównym celem jest zaproponowanie wysoce efektywnej, równolegªej metody konstrukcji wysokiej jako±ci grafów naªo»e« DNA,
które mog¡ by¢ nast¦pnie stosowane w procesie asemblacji
de novo
caªego genomu. Ponadto, w celu
oceny skuteczno±ci algorytmu, powinien on zosta¢ równie» zaimplementowany oraz przetestowany na
ró»norodnych zbiorach danych.
Zdeniowane zadanie mo»na podzieli¢ na szereg mniejszych problemów, spo±ród których najwa»niejsze to:
1. opracowanie oraz implementacja szybkiej metody dopasowywania sekwencji biologicznych na
procesorach kart gracznych (GPU),
2. zrównoleglenie zaproponowanej metody na wiele GPU,
3. opracowanie i implementacja nowego algorytmu heurystycznego opartego na k-merach sªu»¡cego
do efektywnej preselekcji podobnych do siebie sekwencji biologicznych,
4. opracowanie i implementacja metod podnosz¡cych jako±¢ tworzonego grafu naªo»e« DNA, w tym
metod uwzgl¦dniaj¡cych tzw. odczyty sparowane,
5. przygotowanie oraz przeprowadzenie obszernych testów na ró»norodnych zbiorach danych werykuj¡cych jako±¢ tworzonego grafu.
2
Problem asemblacji DNA
Asemblacj¦ DNA typu
de novo
mo»na okre±li¢ jako prób¦ rekonstrukcji pewnej nieznanej sekwencji
genomu na podstawie krótkich fragmentów DNA zwanych odczytami. W procesie asemblacji cz¦sto
zdarza si¦, »e wyspecjalizowane algorytmy nie s¡ w stanie odtworzy¢ caªej sekwencji genomu, lecz jedynie jego fragmenty, zwane kontigami. Warto zauwa»y¢, »e w przypadku sekwenatorów nowej generacji
nie wiadomo, który odczyt pochodzi z której nici podwójnej helisy DNA. W zwi¡zku z tym, dla ka»dego odczytu rozwa»a si¦ zazwyczaj równie» jego wersj¦ odwrotnie komplementarn¡. Jak wspomniano,
przy pewnych ograniczeniach problem asemblacji DNA typu de
novo
mo»e by¢ sformuªowany jako pro-
blem najkrótszego wspólnego zªo»enia (ang. Shortest Superstring Problem, SSP) [GMA80]. Niemniej
jednak, takie sformuªowanie nie odzwierciedla rzeczywistej zªo»ono±ci problemu asemblacji DNA, w
którym odczyty mog¡ zawiera¢ bª¦dy, genom pokryty jest odczytami nierównomiernie, a w±ród danych
wej±ciowych mo»na znale¹¢ krótkie fragmenty pochodz¡ce z innych organizmów. Co wi¦cej rzeczywiste
genomy zawieraj¡ wiele powtarzaj¡cych si¦ odcinków, których odr¦bno±¢ nie mo»e by¢ zignorowana,
jak w przypadku SSP, ze wzgl¦du na ich znaczenie biologiczne. Dalsza cz¦±¢ rozdziaªu przedstawia
pokrótce podej±cia stosowane w celu rozwi¡zania opisywanego problemu.
Grafy naªo»e« DNA
Graf naªo»e« DNA mo»e by¢ traktowany jako zmodykowana wersja grafu Lysova [LFK+ 88]. Tak jak
w przypadku oryginalnego modelu, ka»dy odczyt reprezentowany jest jako wierzchoªek, a nakªadaj¡ce
si¦ odczyty poª¡czone s¡ ªukiem. To, które odczyty traktowane s¡ jako nachodz¡ce na siebie zale»y od
konkretnej implementacji, jednak»e warto wspomnie¢, »e nie musz¡ one pasowa¢ do siebie w sposób
idealny. W zwi¡zku z tym, z ka»dym ªukiem powi¡zana jest zazwyczaj waga stanowi¡ca o jako±ci
danego naªo»enia. Wag¡ mo»e by¢ na przykªad numeryczny wynik semi-globalnego dopasowania dwóch
sekwencji b¡d¹ dªugo±¢ naªo»enia. Przykªadowy graf naªo»e« DNA przedstawiono na Rysunku 1.
Podgrafy grafu de Bruijna
Drugim rodzajem modelu grafowego, obecnie cz¦sto spotykanego w literaturze, jest model oparty na
grafach de Bruijna. Koncepcja tego rodzaju grafu jest zbli»ona do reprezentacji przedstawionej przez
Pevznera [Pev89]. W celu opisania tego podej±cia musimy zdeniowa¢ poj¦cie k -meru, który mo»e by¢
rozumiany jako ci¡g k kolejnych znaków. W wi¦kszo±ci zastosowa« jest on jednak u»ywany do opisu
jednakowej dªugo±ci (k ) podci¡gów pewnej sekwencji. W modelu o którym mowa, zbiór wierzchoªków
skªada si¦ ze wszystkich k -merów jakie mo»na wydoby¢ z wej±ciowych odczytów, wliczaj¡c odczyty
odwrotnie komplementarne. Skierowana kraw¦d¹ ª¡czy wierzchoªki i oraz j , je±li suks o dªugo±ci k − 1
k -meru i jest identyczny z preksem dªugo±ci k − 1 k -meru j . Warto podkre±li¢, »e tak zdeniowany
graf stanowi indukowany podgraf grafu de Bruijna, poniewa» nie zawiera w sobie wszystkich mo»liwych
permutacji nukleotydów o dªugo±ci k , lecz jedynie te które wyst¦puj¡ w wej±ciowym zbiorze danych,
por. [dB46]. Przykªadowy graf tego rodzaju zobrazowany jest na Rysunku 2.
Rysunek 1: Przykªadowy graf naªo»e« DNA dla pi¦ciu sekwencji. Ka»dy ªuk oznaczony jest par¡ wag:
numerycznym wynikiem semi-globalnego dopasowania dwóch sekwencji oraz liczb¡ pocz¡tkowych niedopasowanych nukleotydów. Podkre±lone warto±ci wskazuj¡ na wyst¡pienie niedopasowania na nakªadaj¡cej si¦ cz¦±ci sekwencji. Dla przejrzysto±ci sekwencje odwrotnie komplementarne s¡ pomini¦te.
Podsumowanie
W wyniku dyskusji przeprowadzonej w pracy wida¢ jednoznacznie, »e reprezentacja odczytów pochodz¡cych z do±wiadczenia biochemicznego odgrywa istotn¡ rol¦ w procesie asemblacji DNA. Czytelnikowi zostaªy przedstawione dwa modele grafowe, które s¡ aktualnie rozpatrywane w tej dziedzinie.
W szczególno±ci graf naªo»e« DNA zostaª wybrany jako model posiadaj¡cy lepsze perspektywy. Po
analizie literatury stwierdzono jednak, »e wszystkie metody konstrukcji grafu naªo»e« DNA posiadaj¡
pewne wady. Stanowi to zatem bardzo dobr¡ motywacj¦ niniejszej pracy, która skupia si¦ na nowym
algorytmie budowy grafu naªo»e« DNA.
3
Dopasowywanie sekwencji na GPU
Oprogramowanie, które jest obecnie wykorzystywane do asemblacji
de novo
mo»e by¢, jak opisano w
poprzednim rozdziale, podzielone na to bazuj¡ce na grafach de Bruijna i takie, które wykorzystuje
tzw. strategi¦
overlap-layout-consensus,
czyli bazuj¡ce na grafach naªo»e«. Chocia» ta pierwsza me-
toda jest obecnie bardziej popularna, gªównie ze wzgl¦du na jej szybko±¢ i zdolno±¢ do efektywnego
przetwarzania du»ych zbiorów danych, druga metoda jest nadal w punkcie zainteresowania wielu grup
naukowych. Czynnikiem ograniczaj¡cym jej stosowalno±¢ jest przede wszystkim czas potrzebny na
konstrukcj¦ grafu naªo»e«, szczególnie w kontek±cie nieustannie wzrastaj¡cej liczby odczytów z pojedynczego eksperymentu. Dlatego te» jest bardzo wa»ne, aby zidentykowa¢ te fragmenty algorytmu,
Rysunek 2: Przykªadowa sekwencja i jej reprezentacja bazuj¡ca na idei grafu de Bruijna (dla k = 4).
Podkre±lona cz¦±¢ sekwencji stanowi region powtarzaj¡cy si¦, który jest przyczyna cyklu w grae.
które potencjalnie mogªyby by¢ przyspieszone. Podstawowym etapem metod opartych na grafach naªo»e« DNA jest, jak sama nazwa wskazuje, obliczanie tzw. naªo»e«, czyli przesuni¦cia mi¦dzy danymi
parami odczytów i odpowiadaj¡cych im warto±ci dopasowania. Najdokªadniejsze wyniki mo»na uzyska¢ tutaj korzystaj¡c z dokªadnej metody dopasowywania sekwencji, któr¡ jest semi-globalna wersja
algorytmu Needlemana-Wunscha [NW70]. Du»¡ dokªadno±¢ osi¡ga si¦ tu jednak kosztem du»ej zªo»ono±ci obliczeniowej. Dlatego krok ten jest cz¦sto zast¦powany przez szybsze aczkolwiek mniej dokªadne
heurystyki, por. [BBF+ 09].
To wªa±nie rosn¡ca liczba sekwencji w biologicznych bazach danych byªa gªównym powodem, dla
którego wielu naukowców i praktyków poszukiwaªo wydajnego oprogramowania do masywnie równolegªego porównywania sekwencji. St¡d te» popularne staªo si¦ wykorzystanie w tym celu ukªadów kart gracznych (ang. graphics processing units, GPUs) [MV08, LR09, LMS09, LMS10, BFK+ 11, FKBW12].
Niestety prawie wszystkie z wy»ej wymienionych narz¦dzi zostaªy zaprojektowane tak, aby uzyskiwa¢
dobr¡ wydajno±¢ jedynie przy skanowaniu bazy danych, tzn. gdy pojedyncza sekwencja porównywana
jest do wszystkich pozostaªych. Pozostaªe metody zostaªy zoptymalizowane dla scenariusza, w którym
ka»da sekwencja jest porównywana ze wszystkimi pozostaªymi. Oznacza to, »e w obu przypadkach
wydajno±¢ wspomnianych metod dramatycznie spadªaby, gdyby zastosowa¢ je w procesie asemblacji
de novo,
gdzie jedynie wybrane pary sekwencji s¡ ze sob¡ porównywane.
Dlatego te» powstaªa potrzeba aby opracowa¢ narz¦dzie adresuj¡ce powy»ej przedstawiony problem, narz¦dzie, które przetwarza dane pochodz¡ce z sekwencjonowania nowej generacji tak wydajnie, jak to mo»liwe. W ramach niniejszej pracy zaprojektowano i zaimplementowano bibliotek¦
DNA
G-
[FKB+ 13], która speªnia wy»ej przedstawione wymagania. Jest to pierwsze wysoce równolegªe
rozwi¡zanie, zoptymalizowane pod k¡tem przetwarzania odczytów nukleotydowych (DNA/RNA) z nowoczesnych sekwenatorów jak np. Roche/454, Illumina/Solexa i AB/Solid. Rozwi¡zanie wykorzystuje
algorytm Needlemana-Wunscha, oparty na dynamicznym programowaniu, do obliczania zarówno jako-
±ci jak i stopnia naªo»enia poszczególnych sekwencji. Omawiana biblioteka zostaªa zaimplementowana
na GPU oraz zoptymalizowana pod k¡tem architektury Fermi. Wyniki pokazuj¡, »e oprogramowanie
osi¡ga wydajno±¢ do 89 GCUPS na pojedynczej karcie gracznej i w rezultacie jest to najszybsze
oprogramowanie tego typu na ±wiecie, patrz Rysunek 3. Ponadto skaluje si¦ ono dobrze na systemach
wyposa»onych w wiele kart gracznych. Detale implementacyjne opisywanej metody zostaªy szczegóªowo opisane w pracy doktorskiej.
200
1xGPU
2xGPU
177
165
160
GCUPS
150
112
100
83
82
89
63
50
0
SOLiD
Illumina
Rysunek 3: Wydajno±¢ implementacji algorytmu
cych z sekwenatorów ró»nego typu.
4
∗
G-DNA
454
454 Titanium *
(w GCUPS) dla zbiorów danych pochodz¡-
odnosi si¦ do zbioru danych z dªugimi sekwencjami.
Algorytm konstrukcji grafów naªo»e« DNA
Gªównym wkªadem rozprawy doktorskiej w nauk¦ jest zaproponowana metoda konstrukcji grafu naªo»e« DNA, której gªówna idea jest opisana pokrótce poni»ej. Algorytm w du»ej cz¦±ci opiera si¦ na
k -merowej
analizie sekwencji biologicznych. Dla ka»dej sekwencji algorytm oblicza tzw. peªn¡ oraz
cz¦±ciow¡ charakterystyk¦
k -merow¡.
Charakterystyki takie tworzone s¡ poprzez ekstrakcj¦ z danej
sekwencji wszystkich mo»liwych k -merów o zadanej dªugo±ci, które nast¦pnie sortowane s¡ malej¡co
ze wzgl¦du na liczb¦ wyst¡pie« danego k -meru. Takie posortowanie sprawia, i» najbardziej charakterystyczne k -mery dla ka»dej z sekwencji znajduj¡ si¦ na pocz¡tku jej charakterystyki k -merowej.
Przykªad ilustruj¡cy powy»sze zagadnienie przedstawiony jest na Rysunku 4. W przypadku charakterystyk cz¦±ciowych k -mery ekstrahowane s¡ jedynie z wybranej cz¦±ci sekwencji.
W dalszej kolejno±ci charakterystyki u»ywane s¡ do sortowania sekwencji (odczytów z sekwenatora). Sekwencje sortowane s¡ dwukrotnie: zgodnie z peªnymi oraz cz¦±ciowymi charakterystykami
k -merowymi. To drugie sortowanie ma szczególne znaczenie gdy sekwencje nakªadaj¡ si¦ jedynie w
niewielkim stopniu, np. na 50% dªugo±ci sekwencji (Rysunek 5). W ka»dym z przypadków sortowane
przebiega w taki sposób aby zmaksymalizowa¢ prawdopodobie«stwo wyst¦powania podobnych do siebie sekwencji w bliskim s¡siedztwie, w obr¦bie którego poszczególne pary sekwencji tworz¡ tzw. pary
Rysunek 4: Peªna charakterystyka k -merowa pojedynczej sekwencji. Dla ustalonej warto±ci k ekstrahuje
si¦ wszystkie mo»liwe k -mery, które sa nast¦pnie sortowane wzgl¦dem cz¦sto±ci ich wyst¦powania.
obiecuj¡ce (Rysunek 6). Nast¦pnie ich wzajemne podobie«stwa, a mówi¡c precyzyjniej wªa±ciwo±ci
nakªadania si¦, s¡ werykowane przez dokªadny algorytm Needlemana-Wunscha dopasowania parami
(por. Rozdziaª 3). Pary sekwencji, które pomy±lnie przejd¡ proces werykacji ª¡czone s¡ w grae ªukiem
skierowanym. Zaproponowany algorytm ma zªo»ono±¢ O(n · log2 n + n), gdzie n to liczba sekwencji w
danej instancji problemu.
Rysunek 5: Pi¦¢ przypadków w których odcinki sekwencji scharakteryzowane przez k -mery odpowiadaj¡
nakªadaj¡cym si¦ cz¦±ci¡ sekwencji. Pomimo i» taka wyidealizowana sytuacja nie zdarza si¦ cz¦sto, zbiór
cz¦±ciowych charakterystyk k -merowych policzony dla ka»dej z sekwencji znacznie zwi¦ksza szanse, »e
dwie nakªadaj¡ce si¦ sekwencje znajd¡ si¦ we wspólnym s¡siedztwie.
W dalszej kolejno±ci jako±¢ grafu jest podnoszona za pomoc¡ czterech dodatkowych procedur, które
w du»ym skrócie opisane s¡ poni»ej:
1. Metoda najmniejszego indeksu leksykogracznego: z ka»dej sekwencji ekstrahowane s¡ dwa leksykogracznie najmniejsze deskryptory. Odczyty, które wspóªdziel¡ identyczne deskryptory s¡
Rysunek 6: Gªówna idea algorytmu wyboru nakªadaj¡cych si¦ par sekwencji: gdy odczyty s¡ posortowane, dokªadny algorytm werykuje które z s¡siaduj¡cych sekwencji rzeczywi±cie si¦ nakªadaj¡.
traktowane jako pary obiecuj¡ce a ich wªa±ciwo±ci nakªadania si¦ s¡ werykowane przez algorytm dokªadny.
2. Metoda porówna« odczytów typu
nych ªuków w grae, a i
a0
paired-end :
zaªó»my, »e P jest zbiorem dotychczas wyznaczo-
s¡ odczytami typu
paired-end,
podobnie b i b0 . Idea metody jest
nast¦puj¡ca: je±li (a, b) ∈ P oraz (a0 , b0 ) ∈
/ P , wówczas (a0 , b0 ) staje si¦ obiecuj¡ca par¡ i dokªadny
algorytm dopasowywania sekwencji werykuje czy (a0 , b0 ) ∈ P .
3. Metoda porównywania bezpo±rednich nast¦pników: werykuje czy odczyty nakªadaj¡ce si¦ z dan¡
sekwencj¡ nakªadaj¡ si¦ równie» pomi¦dzy sob¡.
4. Metoda sprawdzania odczytów odwrotnie komplementarnych: zaªó»my, »e a00 jest odczytem odwrotnie komplementarnym do odczytu a, podobnie b00 i b. Metoda dodaje brakuj¡ce ªuki pomi¦dzy
odczytami a00 i b00 , dla których speªniony jest warunek: (a, b) ∈ P .
W rezultacie dziaªania metody bazowej oraz czterech wy»ej opisanych procedur (Rysunek 7) dokªadno±¢ zaproponowanego algorytmu do tworzenia grafu naªo»e« DNA jest bardzo wysoka, co zostanie
pokazane w nast¦pnym rozdziale. Ponadto warto zwróci¢ uwag¦, »e w pracy poªo»ono du»y nacisk na
zrównoleglenie wykonywania wszystkich opisanych kroków algorytmu. W tym celu wykorzystano zarówno równolegªo±¢ oferowan¡ przez karty graczne jak i przez procesory centralne.
5
Wybrane wyniki testów obliczeniowych
W celu kompleksowego zbadania wªasno±ci zaprojektowanego algorytmu testy przeprowadzono na dwojakim rodzaju danych: na zbiorach syntetycznych oraz rzeczywistych, pochodz¡cych z sekwenatora
Rysunek 7: Uproszczona wersja diagramu prezentuj¡ca caªy algorytm konstrukcji grafu naªo»e« DNA.
Illumina Genome Analyzer IIx. Dzi¦ki zbiorom syntetycznym mo»liwy byª dokªadny pomiar jako±ci
konstruowanych grafów przy u»yciu macierzy pomyªek (przy czym najwa»niejszymi parametrami w
rozpatrywanym przypadku s¡ czuªo±¢ oraz precyzja). Mo»liwo±¢ taka wynika z faktu, i» dokªadna lokalizacj¦ odczytów w oryginalnym genomie jest znana a zatem znany jest i fakt nakªadania si¦ b¡d¹
nie dowolnej pary odczytów (tzw.
ground truth ).
W przypadku zbiorów danych pochodz¡cych z eks-
perymentów biochemicznych, skonstruowano prosty algorytm trawersuj¡cy graf i skªadaj¡cy kontigi,
których dªugo±¢ oraz jako±¢ byªy nast¦pnie sprawdzane za pomoc¡ mapowania do genomu referencyjnego. Poni»ej przedstawiono wybrane wyniki testów. Bardziej szczegóªowe wyniki wraz z dokªadniejszym
opisem i interpretacj¡ znajduj¡ si¦ w rozprawie doktorskiej.
Pierwszy test obrazuje czuªo±¢ (Rysunek 8) oraz precyzj¦ algorytmu konstrukcji grafu naªo»e«
DNA na danych syntetycznych. Jak ªatwo zauwa»y¢, czuªo±¢ metody wzrasta wraz ze wzrostem rozmiaru s¡siedztwa. Jednak warto podkre±li¢, »e ulega ona nasyceniu bardzo szybko. Nawet przy bardzo
niewielkim rozmiarze s¡siedztwa wynosz¡cym 10 sekwencji, algorytm znalazª 96.66% wszystkich nakªadaj¡cych si¦ par sekwencji w testowanym zbiorze danych. Dla rozmiaru s¡siedztwa wynosz¡cego
1000 czuªo±¢ algorytmu wyniosªa 98.5%, ale warto zauwa»y¢, »e warto±¢ 98% zostaªa osi¡gni¦ta ju»
dla s¡siedztwa o rozmiarze 60. ‘wiadczy to o du»ej zbie»no±ci zaproponowanego algorytmu sortowania. Dla porównania, podano równie» wyniki czuªo±ci algorytmu dla nieposortowanych sekwencji. W
tym wypadku czuªo±¢ wzrastaªa liniowo by dla s¡siedztwa o wielko±ci 1000 sekwencji osi¡gn¡¢ zaledwie 1.134%. Dla testowanych danych precyzja algorytmu niezale»nie od rozmiaru s¡siedztwa wynosiªa
pomi¦dzy 95.4% a 96.2%.
Rysunek 8: Czuªo±¢ algorytmu konstrukcji grafu naªo»e« DNA dla danych syntetycznych w zale»no±ci
od rozmiaru s¡siedztwa. Wyniki przedstawione s¡ zarówno dla sekwencji posortowanych (tak jak ma
to miejsce w algorytmie) jak i nieposortowanych, które podane s¡ jako punkt odniesienia.
Kolejny test obrazuje czuªo±¢ algorytmu w zale»no±ci od minimalnej dªugo±ci naªo»enia, przy którym sekwencje uznaje si¦ za nakªadaj¡ce si¦. Na Rysunku 9 wida¢ jasno, »e czuªo±¢ algorytmu spada w
przybli»eniu liniowo (a» do 40%) gdy algorytm korzysta jedynie z peªnych charakterystyk k -merowych.
Sytuacja ulega znacznej poprawie gdy algorytm korzysta równie» z charakterystyk cz¦±ciowych. Nawet dla bardzo krótkich naªo»e«, rz¦du 20%, metoda byªa w stanie poprawnie wskaza¢ ponad 75%
nakªadaj¡cych si¦ par odczytów w zbiorze danych. Ponadto warto wspomnie¢, »e precyzja algorytmu
pozostawaªa w przybli»eniu na tym samym poziome niezale»nie od wersji algorytmu.
Kolejny test miaª za zadanie pokaza¢ wpªyw poziomu bª¦dów sekwencjonowania na jako±¢ wyników. W tym celu wygenerowano 51 zbiorów danych, w których odsetek bª¦dów wynosiª odpowiednio od
‡ do 50‡. Dodatkowo w kolejnych uruchomieniach modykowano liczb¦ akceptowalnych bª¦dów (w
0
rozumieniu SNP) w obr¦bie naªo»enia dwóch sekwencji. Czuªo±¢ algorytmu w ró»nych konguracjach
pokazana jest na Rysunku 10. Šatwo zauwa»y¢, »e w przypadku rosn¡cej liczby bª¦dów w zbiorze danych czuªo±¢ algorytmu spada w szybki sposób gdy nie toleruje on »adnych bª¦dów. Jednak»e, czuªo±¢
t¡ mo»na przywróci¢ do odpowiednio wysokiego poziomu poprzez regulacj¦ parametru odpowiadaj¡cego za liczb¦ dopuszczanych bª¦dów. Z drugiej strony, w takim wypadku precyzja metody ulega
nieznacznemu spadkowi: dla ka»dego kolejnego bª¦du dopuszczanego przez algorytm precyzja spada o
0.4% 0.9%. Mocn¡ stron¡ algorytmu jest jednak to, »e t¡ niewielk¡ warto±¢ cz¦sto mo»na po±wi¦ci¢
w zamian za znaczny wzrost czuªo±ci metody.
Ponadto wykonano równie» testy na dwóch mocno ró»ni¡cych si¦ zbiorach danych pochodz¡cych
z sekwencjonowania bakterii oraz nicienia. Dla zwi¦zªo±ci, przedstawione tu wyniki dotycz¡ jedynie
pierwszego testu. W celu porównania dªugo±ci oraz jako±ci skonstruowanych kontigów, asemblacj¦ prze-
Rysunek 9: Czuªo±¢ algorytmu konstrukcji grafu naªo»e« DNA dla danych syntetycznych w zale»no±ci od minimalnego naªo»enia wymagaj¡cego wykrycia. Cz¦±ciowe charakterystyki k -merowe znacznie
poprawiaj¡ czuªo±¢ algorytmu, w szczególno±ci dla krótkich naªo»e«.
prowadzono równie» z u»yciem najbardziej popularnych pakietów oprogramowania do asemblacji
novo,
de
a mianowicie: Velvet 1.2.10 [ZB08], SOAPdenovo 2.04 [LLX12], Celera Whole-Genome Shotgun
(WGS) Assembler 8.1 [MSD00], String Graph Assembler (SGA) 0.10.13 [SD12] and SR-ASM (Short
Reads ASseMbly) [BBF+ 09]. Wyniki porównania przedstawiono w Tabeli 1. Jak ªatwo zauwa»y¢ najdªu»sze kontigi uzyskano metod¡ SR-ASM. Równie» ten algorytm uzyskaª najwy»sz¡ warto±¢ N50 oraz
najwi¦ksz¡ sumaryczn¡ dªugo±¢ wszystkich kontigów (obie warto±ci byªy liczone jedynie dla poprawnie
zmapowanych kontigów). Z drugiej strony, kontigi te miaªy najni»sz¡ jako±¢: 4% z nich nie zmapowaªa
si¦ w ogóle a jako±¢ pozostaªych spadaªa nawet do 80.52% identyczno±ci z genomem referencyjnym.
Pozostaªe algorytmy generowaªy kontigi o zazwyczaj bardzo dobrej jako±ci, w granicach 99% identyczno±ci. Warto podkre±li¢, »e jedynym asemblerem, którego wszystkie kontigi zmapowaªy si¦ do genomu
referencyjnego, byª asembler bazuj¡cy na grae skonstruowanym przez metod¦ zaproponowan¡ z niniejszej pracy (tu oznaczony jako
G-DNA).
Jest to bardzo obiecuj¡cy wynik, który potwierdza wysok¡
jako±¢ konstruowanych grafów. Pomimo »e zarówno Velvet jak i Celera WGS miaªy wy»sz¡ warto±¢
N50, byªo to uzyskane kosztem cz¦±ci niepoprawnych kontigów. Warto jednak wspomnie¢, »e dªugo±¢
kontigów konstruowanych przez
G-DNA
mo»e by¢ przedmiotem dalszej optymalizacji.
Na zako«czenie warto równie» wspomnie¢, »e wi¦kszo±¢ testów zostaªa wykonana na infrastrukturze
obliczeniowej PL-Grid.
Rysunek 10: Czuªo±¢ algorytmu konstrukcji grafu naªo»e« DNA dla danych syntetycznych w zale»no±ci
od liczby bª¦dów sekwencjonowania w zbiorze danych oraz od liczby bª¦dów dopuszczanych przez
algorytm (0-12).
Tabela 1: Liczba oraz jako±¢ kontigów wyprodukowanych przez ka»dy z testowanych asemblerów dla
zbioru odczytów pochodz¡cych z bakterii
Candidatus Microthrix.
6
Podsumowanie
Gªównym celem niniejszej pracy byªo zaprojektowanie i implementacja bardzo dokªadnego a zarazem wydajnego algorytmu budowy grafów naªo»e« DNA, które s¡ szeroko wykorzystywane w procesie
asemblacji typu
de novo.
Zaproponowany algorytm oparty jest na k -merowej analizie sekwencji biolo-
gicznych. Dla ka»dej sekwencji algorytm oblicza tzw. peªn¡ oraz cz¦±ciow¡ charakterystyk¦ k -merow¡,
które w dalszej kolejno±ci u»ywane s¡ do sortowania sekwencji. Nast¦pnie wzajemne podobie«stwa
sekwencji z s¡siedztwa werykowane s¡ przez dokªadny algorytm Needlemana-Wunscha dopasowania
parami. W dalszej kolejno±ci jako±¢ grafu jest podnoszona za pomoc¡ czterech dodatkowych procedur.
W rezultacie dokªadno±¢ zaproponowanego algorytmu jest bardzo wysoka.
Przedstawiony w pracy algorytm byª przetestowany na ró»norodnych zbiorach danych: pocz¡wszy
od wygenerowanych syntetycznie, ko«cz¡c na danych pochodz¡cych z rzeczywistych sekwenatorów.
Czuªo±¢ zaproponowanej metody wahaªa si¦ pomi¦dzy 97% a 99%, co w poª¡czeniu z wysok¡ precyzj¡
si¦gaj¡c¡ 99% daªo bardzo dobre wyniki. Pokazano równie», »e metoda bardzo dobrze radzi sobie nawet
w przypadku danych z bª¦dami sekwencjonowania. Ponadto, jako±¢ grafu zostaªa zwerykowana nie
wprost na podstawie dwóch zbiorów danych pochodz¡cych z sekwenatora Illumina Genome Analyzer
II. W tym celu zaimplementowano prost¡ metod¦ przechodzenia grafu i konstrukcji tzw. kontigów,
czyli zrekonstruowanych fragmentów genomu. Zostaªa ona zestawiona z najlepszymi dost¦pnymi algorytmami do asemblacji
de novo
i w wielu przypadkach jako±ci¡ generowanych rozwi¡za« przewy»szaªa
pozostaªe metody. Dowodzi to nie tylko wysokiej dokªadno±ci metody konstrukcji grafu, lecz równie»
jej mo»liwo±ci efektywnego przetwarzania du»ych zbiorów danych.
Aby obliczenia wykonywaªy si¦ w mo»liwie krótkim czasie, du»¡ uwag¦ po±wi¦cono na zrównoleglenie metody. Najbardziej czasochªonn¡ procedur¦, czyli dokªadne dopasowywanie sekwencji, zaimplementowano na kartach gracznych. Testy przeprowadzone na szerokim spektrum realnych danych
wykazaªy bardzo wysok¡ wydajno±¢ zaproponowanej metody oraz prawie liniow¡ skalowalno±¢ przy
u»yciu wielu kart gracznych. W rezultacie omawiany algorytm konstrukcji grafu mo»e w rozs¡dnie
krótkim czasie zwerykowa¢ wi¦ksz¡ liczb¦ obiecuj¡cych par sekwencji w obr¦bie s¡siedztwa, co pozytywnie wpªywa na jako±¢ konstruowanego rozwi¡zania. Co wi¦cej, pozostaªe cz¦±ci algorytmu równie»
zostaªy przeanalizowane pod k¡tem zrównoleglenia, które zostaªo wykonane za pomoc¡ bardziej tradycyjnych modeli wielow¡tkowo±ci na procesorach centralnych.
Podsumowuj¡c, praca przedstawia now¡, wysoce efektywn¡ oraz dokªadn¡ metod¦ konstrukcji grafu
naªo»e« DNA. Otrzymane rezultaty s¡ bardzo obiecuj¡ce, co zach¦ca do dalszych prac. Naturaln¡
kontynuacj¡ przedstawionych osi¡gni¦¢ jest stworzenie zaawansowanej metody przechodzenia grafu
oraz skªadania tzw. kontigów oraz skafoldów, czyli zrekonstruowanych fragmentów genomu. Jednak»e
jest to bardzo zªo»ony temat, który wykracza poza zakres niniejszej pracy.
Literatura
[BBF+ 09] J. Blazewicz, M. Bryja, M. Figlerowicz, P. Gawron, M. Kasprzak, E. Kirton, D. Platt,
J. Przybytek, Swiercz A., and Szajkowski L. Whole genome assembly from 454 sequencing
output via modied DNA graph concept.
Comput. Biol. Chem.,
33(3):224230, 2009.
[BFK+ 11] J. Blazewicz, W. Frohmberg, M. Kierzynka, E. Pesch, and P. Wojciechowski. Protein
alignment algorithms with an ecient backtracking routine on multiple GPUs.
Bioinformatics,
[dB46]
BMC
12:181, 2011.
N.G. de Bruijn. A combinatorial problem.
Proc. Nederl. Akad. Wetensch.,
49:758764,
1946.
[FKB+ 13] W. Frohmberg, M. Kierzynka, J. Blazewicz, P. Gawron, and P. Wojciechowski. G-DNA a highly ecient multi-GPU/MPI tool for aligning nucleotide reads.
Bull. Pol. Ac.: Tech.,
61:989992, 2013.
[FKBW12] W. Frohmberg, M. Kierzynka, J. Blazewicz, and P. Wojciechowski. G-PAS 2.0 - an improved version of protein alignment tool with an ecient backtracking routine on multiple
GPUs.
[GMA80]
Bull. Pol. Ac.: Tech.,
60:491494, 2012.
J. Gallant, D. Maier, and J. Astorer. On nding minimal length superstrings.
Computer and System Sciences,
Journal of
20:5058, 1980.
[LFK+ 88] I.P. Lysov, V.L. Florent'ev, A.A. Khorlin, K.R. Khrapko, and V.V. Shik. Determination of
the nucleotide sequence of DNA using hybridization with oligonucleotides. A new method.
Doklady Akademii Nauk SSSR,
[LLX12]
R. Luo, B. Liu, and Y. et al. Xie. SOAPdenovo2: an empirically improved memory-ecient
short-read de novo assembler.
[LMS09]
303:15081511, 1988.
Giga Science,
1:18, 2012.
Y. Liu, D.L. Maskell, and B. Schmidt. CUDASW++: optimizing smith-waterman sequence
database searches for CUDA-enabled graphics processing units.
BMC Research Notes,
73(2), 2009.
[LMS10]
Y. Liu, D.L. Maskell, and B. Schmidt. CUDASW++2.0: enhanced smith-waterman protein
database search on CUDA-enabled GPUs based on SIMT and virtualized SIMD abstractions.
[LR09]
BMC Research Notes,
93(3), 2010.
L. Ligowski and W. Rudnicki. An ecient implementation of smith waterman algorithm
on GPU using CUDA, for massively parallel scanning of sequence databases.
IPDPS,
pages
18, 2009.
[MSD00]
E.W. Myers, G.G. Sutton, and A.L. et al. Delcher. A Whole-Genome Assembly of Drosophila.
Science,
287(5461):21962204, 2000.
[MV08]
S. Manavski and G. Valle. CUDA compatible GPU cards as ecient hardware accelerators
for Smith-Waterman sequence alignment.
[NW70]
BMC Bioinformatics,
S.B. Needleman and C.D. Wunsch. A general method applicable to the search for similarities in the amino acid sequence of two proteins.
[Pev89]
9 (Suppl 2)(S10), 2008.
J Mol Biol,
P.A. Pevzner. l-Tuple DNA sequencing: computer analysis.
48(3):443453, 1970.
J. Biomol. Struct. Dyn.,
7:63
73, 1989.
[SD12]
J.T. Simpson and R. Durbin. Ecient de novo assembly of large genomes using compressed
data structures.
[ZB08]
Genome Res.,
22:549556, 2012.
D.R. Zerbino and E. Birney. Velvet: Algorithms for de novo short read assembly using de
Bruijn graphs.
Genome Res.,
18:821829, 2008.