statystyki oparte na składzie i przetłumaczone wyszukiwania nukleotydów: ulepszenie modułu TBLASTN BLAST

w tej sekcji przedstawiamy algorytm używany do obliczania składu sekwencji baz danych i stosowania statystyk opartych na składzie w TBLASTN. Następnie opiszemy testy opisane w tym artykule: użyte pliki wykonywalne, zestawy testów i szczegóły dotyczące metod.,

korekta kompozycji w TBLASTN

heurystyka BLAST wykorzystuje ogólny system punktacji, taki jak seria macierzy PAM lub BLOSUM, do wykrywania sekwencji baz danych, które mogą być wyrównane do zapytania i prawdopodobnych punktów początkowych dla wyrównań. W BLAST, wyrównanie jest znany jako wysokiej punktacji pary, lub HSP. Lista HSP dla każdej znaczącej pary zapytanie-temat jest tworzona przy użyciu algorytmu wielostopniowego., Na każdym etapie HSP może zostać wykreślony z aktualnej listy z wielu powodów, w tym z niewystarczająco wysokiej punktacji, z umieszczenia w HSP o wyższej punktacji lub dzielenia punktu końcowego z HSP o wyższej punktacji. W rezultacie, podczas gdy każdy kolejny etap algorytmu BLAST wymaga znacznie więcej obliczeń dla każdego HSP, należy wziąć pod uwagę mniej HSP.

Regulacja składu, niezależnie od tego, czy jest używana przez TBLASTN, czy inne tryby pracy, jest stosowana tylko w końcowym etapie wyszukiwania BLAST., W ten sposób tryby wykorzystujące regulację kompozycji wykorzystują szybką heurystykę wybuchu, aby zlokalizować regiony, które mogą zawierać, i punkty początkowe, które mogą prowadzić do wyrównania o wysokiej punktacji. Stosują one dostosowanie składu tylko przed najbardziej wrażliwym i najbardziej kosztownym obliczeniowo algorytmem wyrównania, obliczaniem wyrównania, które zawiera informacje określające lokalizacje luk, informacje znane jako”traceback”., Lista HSP Wyprodukowana przez to ostateczne dopasowanie z przefiltrowaniem pod kątem niewystarczająco istotnych lub zbędnych HSP jest listą przedstawioną użytkownikowi.,niezależnie dla każdej pary zapytania-temat, są następujące: (1) Oblicz okna zainteresowania za pomocą listy HSP ze wstępnych etapów algorytmu BLAST; (2) uzyskaj przetłumaczone dane tematu dla okien i filtruj je, aby usunąć nieciekawe kolejne; (3) Oblicz skład regionu tematu dla każdego HSP do wyrównania; (4) Oblicz macierz punktacji dla każdego HSP do wyrównania, w oparciu o skład regionu tematu tego HSP i na skład zapytania; (5) wykonaj wyrównanie z ograniczeniem do Oblicz ponownie listę HSP, używając nowych macierzy punktacji., W praktyce te kroki wysokiego poziomu są przeplatane w celu zmniejszenia zapotrzebowania na pamięć.

Każdy HSP określa, wraz z innymi informacjami, zakres w sekwencji tematu, który został wyrównany do zapytania. Zakresy te są używane w następujący sposób do obliczania listy okien. Najpierw tworzy się wstępną listę okien dla sekwencji tematu., Ta lista zawiera jedno okno dla każdego HSP, okno, które otacza zakres tematyczny HSP, w tym 600 baz po lewej i prawej stronie zakresu tematycznego, jeśli dostępna jest taka ilość danych sekwencji. Następnie tworzy się końcową listę okien, łącząc okna w tej samej ramce tłumaczenia, jeśli dotykają się lub nakładają. Dla każdego okna utrzymywana jest lista HSP odpowiadających temu oknu.

uzyskiwanie i filtrowanie danych obiektu

dane obiektu nukleotydu w oknie są uzyskiwane i tłumaczone za pomocą ramki tłumaczenia tego okna., Algorytm SEG o rozmiarze okna 10, niskim odcięciu 1.8 i wysokim odcięciu 2.1 służy do maskowania regionów o niskiej złożoności w oknie temat. Parametry zostały wybrane w wyniku badania. Region o niskiej złożoności jest zazwyczaj zdominowany przez kilka odrębnych pozostałości często, ale nie zawsze, w powtarzalnym wzorze. Typowymi przykładami są monomery poliglicyny lub poliproliny. Wyniki wyrównania, które obejmują wyniki regionów o niskiej złożoności, zazwyczaj zawyżają znaczenie wyrównań i prowadzą do wielu fałszywie pozytywnych wyników.,

efektem zastosowania algorytmu SEG do sekwencji aminokwasów jest zastąpienie każdej pozostałości w regionie o niskiej złożoności znakiem X: znakowi, któremu przypisany jest mały wynik ujemny, gdy jest wyrównany do dowolnego znaku, w tym do niego samego. Dane obiektu są filtrowane przed obliczeniem dopasowanych do kompozycji macierzy punktacji, A wystąpienia znaku X są ignorowane podczas obliczania składu sekwencji. W przeciwieństwie do kodu dopasowania kompozycji, wstępne etapy wyszukiwania wybuchu nie filtrują danych podmiotu.,

filtrowanie SEG może być również stosowane do sekwencji zapytań. Filtrowanie seg zapytania jest opcją wiersza poleceń zarówno dla BLASTP jak i TBLASTN. Programy różnią się tym, że filtrowanie seg zapytania jest domyślnie wyłączone w BLASTP, ale domyślnie włączone w TBLASTN. Nie filtrowaliśmy zapytania w żadnych wynikach zgłoszonych w tym artykule. Parametry SEG używane do filtrowania sekwencji tematu stosują wyższy próg deklarowania regionu jako o niskiej złożoności niż domyślne parametry używane do filtrowania zapytania., Powodem, dla którego Sekwencja zapytań jest bardziej rygorystycznie filtrowana, jest to, że sekwencja zapytań jest używana na każdym etapie algorytmu BLAST. Filtrowanie seg obiektu występuje tylko na końcowych etapach wyszukiwania, a niedostateczne filtrowanie danych w oknie tematu spowoduje tylko jedno porównanie.

Obliczanie składu podmiotu

Dla TBLASTN, dane sekwencji i zakresy tematyczne HSPs w oknie są używane do określenia zakresu, który może zawierać poprawnie przetłumaczone dane aminokwasowe., Okno jest przeszukiwane ściśle po lewej stronie zakresu tematycznego HSP, aby znaleźć najbardziej po prawej stronie wystąpienie kodu stop. Jeśli jeden zostanie znaleziony, to położenie 20 znaków na prawo od kodonu stop jest lewą granicą zakresu kompozycji, z zastrzeżeniem, że obejmuje cały zakres tematyczny HSP. Jeśli kodon stop nie zostanie znaleziony, to lewy punkt końcowy jest lewym punktem końcowym okna. Reguła symetryczna jest stosowana po prawej stronie.,

intencją nie jest zlokalizowanie kodonu stop, który kończy białko, ale raczej wykorzystanie obecności kodonu stop, aby wskazać, że hipotetycznie przetłumaczony kodon leży w regionie niekodującym. W rzeczywistości region niekodujący może być intronem, a nie prawdziwym końcem sekwencji aminokwasów. Ponieważ nie próbujemy znaleźć kodonu stop kończącego, proponujemy symetryczną regułę określającą zakres sekwencji, który ma być użyty do dostosowania kompozycji, mimo że tłumaczenie biologiczne jest asymetryczne.,

w losowej sekwencji DNA z 50% zawartością GC można oczekiwać znalezienia kodonu stop w hipotetycznie przetłumaczonej sekwencji aminokwasów średnio raz na 21 znaków. Dlatego wprowadzamy 20 znakowy margines między kodonem stop a zakresem, który ma być użyty do regulacji kompozycji, z zastrzeżeniem, że należy uwzględnić cały zakres tematyczny HSP.

biorąc pod uwagę konkretny region, TBLASTN bierze pod uwagę tylko 20 standardowych aminokwasów podczas obliczania składu; znak X, Znak stop i wszystkie inne niestandardowe znaki są całkowicie ignorowane., Gdy długość sekwencji jest używana w algorytmach dopasowywania kompozycji, używana wartość nie liczy wystąpień ignorowanych znaków.

Computing compositionally-adjusted scoring matrices

i Yu i in. pokaż, jak dostosować wynik substytucji dla 20 standardowych aminokwasów. W przypadku standardowych aminokwasów stosujemy te techniki. Prace te nie omawiają jednak leczenia rzadko występujących aminokwasów, dwuliterowych znaków niejednoznaczności, znaku X lub znaku stopu., W tej sekcji omawiamy traktowanie znaków X i stop, ponieważ występują one często w wyszukiwaniach TBLASTN. Omówimy traktowanie innych znaków w dodatkowym pliku 3.

znak stop występuje często w tłumaczonych sekwencjach i czasami w znaczących wyrównaniach. Wystąpienie znaku stop zazwyczaj wskazuje, że tłumaczony jest obszar niekodujący lub kodujący w niewłaściwej ramce. Oczywiście znak stop może również po prostu oznaczać koniec tłumaczenia., Jednakże znaki stop występują w znaczących wyrównaniach z kilku powodów: Sekwencja testera może zawierać pseudogen; Sekwencja testera może być mitochondrialnym DNA, w którym pewne kodony będące kodonami stop w DNA jądrowym są tłumaczone na prawdziwe aminokwasy ; Sekwencja testera może zawierać kodon stop, który jest przekształcany in vivo do pozostałości selenocysteiny lub pirolizyny; Sekwencja testera może reprezentować Gen, taki jak gen hdc w D. melanogaster, kodujący produkt białkowy przez odczyt mRNA; lub może wystąpić błąd sekwencjonowania w testerze.Sekwencja.,

odpowiednia punktacja znaku stop jest niezbędna do TBLASTN. Każdy znak wyrównany do znaku stop powinien otrzymać wynik ujemny, ale nie wynik ujemny o tak dużej skali, aby uniemożliwić prawidłowe wyrównanie zawierające kodon stop. BLAST równomiernie przypisuje litery wyrównane do kodonu stopu wynik całkowy, który, biorąc pod uwagę zastosowaną skalę, jest jak najbardziej zbliżony do -2 bitów.

jak już wspomniano, biologicznie znaczące i statystycznie istotne wyrównania TBLASTN mogą czasami zawierać przetłumaczone kodony stop., Jednak obecność wielu kodonów stop w regionach niekodujących i poza klatkami sprawia, że jest bardzo mało prawdopodobne, aby regiony te przypadkowo uzyskały wyrównania o wysokiej punktacji. W związku z tym, dla obliczeń wartości E, tblastn przyjmuje długość sekwencji bazy danych jako długość białka uzyskanego przez tłumaczenie w jednej ramce odczytu, mimo że tłumaczenie jest w rzeczywistości wykonywane we wszystkich sześciu klatkach odczytu., To, że wiele sekwencji DNA w bazie danych nie jest zakodowanych przez większą część ich długości, może być jednym z wyjaśnień dla ogólnie konserwatywnych statystyk S-TBLASTN i C-TBLASTN pokazanych na rysunku 1.

ze względu na zastosowanie algorytmu SEG, wieloznaczność znaku X jest powszechna, a traktowanie znaków X może znacząco wpłynąć na wydajność algorytmu. Punktujemy wyrównania z X w następujący sposób. Gdy stosuje się skalowanie macierzy składu lub dostosowanie macierzy składu, wyniki substytucji są obliczane dla wszystkich standardowych aminokwasów.,0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFse=uaaa@3845@ is the set of standard amino acids and P ′ j MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacuWGqbaugaqbamaaBaaaleaacqWGQbGAaeqaaaaa@2F6A@ is the probability of amino acid j in the subject sequence., Innymi słowy, wynik dopasowania standardowego aminokwasu z X jest wartością oczekiwaną we wszystkich dopasowaniach tego aminokwasu z standardowym aminokwasem, pod warunkiem, że wartość ta jest mniejsza niż -1., For B-TBLASTN and S-TBLASTN, P ′ j MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacuWGqbaugaqbamaaBaaaleaacqWGQbGAaeqaaaaa@2F6A@ is the actual frequency of the amino acid in the subject region; for C-TBLASTN, the probabilities are computed using pseudocounts, as described in ., Wzór analogiczny do równania (1) służy do obliczenia wyniku wyrównania znaku X w zapytaniu do standardowego aminokwasu w temacie. Wynik wyrównania X do siebie jest mniejszy oczekiwany wynik wyrównania dowolnych dwóch standardowych aminokwasów i -1, zaokrąglony do najbliższej liczby całkowitej.

wykonywanie wyrównania z funkcją traceback

procedury, które stosują statystyki oparte na kompozycji, nie tylko przeskalowują wyrównania, ale raczej przekomputowują je. Wyrównania są obliczane przy użyciu jednej z dwóch technik., Domyślnie algorytm x-drop jest stosowany do zbioru punktów początkowych określonych na listach HSP dostarczonych z poprzednich etapów algorytmu BLAST. W wyniku modyfikacji dokonanych w trakcie realizacji tego projektu można na przemian określić, że w każdym oknie stosuje się rygorystyczny algorytm Smitha-Watermana. Jeśli zastosowany jest algorytm x-drop, kompozycja jest obliczana indywidualnie dla każdego skorygowanego HSP. Jeśli stosuje się algorytm Smitha-Watermana, za skład okna przyjmuje się skład jego najwyżej punktowanego HSP., Łączenie składów obszarów tematycznych kilku HSP w jednym oknie jest problematyczne, ponieważ HSP niekoniecznie należą do tego samego wyrównania, a nawet do tego samego połączonego zestawu wyrównań. Domyślnie w TBLASTN jest użycie algorytmu x-drop, a my używamy algorytmu x-drop w testach przedstawionych w tym artykule.

poniższy pseudokod pokazuje, w jaki sposób wyrównania odpowiadające pojedynczemu dopasowaniu obiektu zapytania są obliczane ponownie, gdy używany jest algorytm x-drop.,aacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFwe=vaaa@384D@ is a list of windows, D MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFdepraaa@3827@ is a source of sequence data, and params is a structure containing all parameters needed for gapped alignment., The variable A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ represents the new set of alignments to be returned, and M represents a compositionally adjusted scoring matrix. The HSP_IS_CONTAINED and WITH_DISTINCT_ENDS routines will be described below; the action of the remaining routines should be clear from their names.,

algorytm 1

ponowne wyrównanie w oknie.,MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFdepraaa@3827@ , params, cutoff_score)

A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ ←∅

H←windows.,T_BY_SCORE(H)

s←GET_TRANSLATED_SUBJECT (w, D MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFdepraaa@3827@ )

for i←0 to length(H)-1 do

h←H

if forall 0≤ j <i not HSP_IS_CONTAINED(h, H ) then

M←ADJUST_COMPOSITION (q, s, h, params)

a←CALC_X_DROP_ALIGNMENT (q, s, h, M, params)

if a.,abaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ ←WITH_DISTINCT_ENDS (a, A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ )

end if

end if

end for

return A

end function

The HSP_IS_CONTAINED routine returns true if the HSP provided as its first argument is contained in the HSP provided as its second argument., HSP jest uważany za zawarty w drugim HSP, jeśli jego granice zapytania i przedmiotu są zawarte w granicach zapytania i przedmiotu drugiego HSP i jeśli drugi HSP ma równy lub wyższy wynik.,xAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ if and only if A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ does not already contain an equal- or higher-scoring alignment that shares an endpoint with a.,OvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ , then WITH_DISTINCT_ENDS filters A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ to remove any lower-scoring alignments that share an endpoint with a., W ten sposób wielokrotne wywołanie procedury WITH_DISTINCT_ENDS zapewnia, że ostateczna lista wyrównań nie zawiera wyrównania, które dzieli punkt końcowy z wyrównaniem o wyższej punktacji. Gdy dwa wyrównania mają ten sam punkt końcowy, wyżej punktowane wyrównanie jest preferowanym wyrównaniem; niżej punktowane wyrównanie jest nieoptymalnym artefaktem heurystyki wybuchu.

algorytm x-drop wymaga punktu początkowego (p q , p s), który wymusi wyrównanie między przesunięciem p q w zapytaniu a p s W temacie. Oblicza wyrównanie w obu kierunkach począwszy od tego punktu., Punkt początkowy jest zdefiniowany dla każdego HSP, który jest wyrównany. Jeśli to możliwe, punkt początkowy, który został pierwotnie użyty do obliczenia HSP, jest ponownie używany. Jednak ze względu na efekty filtrowania SEG i nowo obliczonej macierzy punktacji, poprzedni punkt początkowy może nie być już pożądany; może leżeć w regionie niepozytywnego wyniku. Omawiamy regułę używaną do walidacji istniejącego punktu początkowego i w razie potrzeby wybieramy nową, w dodatkowym pliku 3: tblastn_suppl.pdf.,

na koniec zwracamy uwagę, że algorytm 1 jest również poprawnym pseudokodem dla BLASTP, który wykonuje zapytania białkowe, przeszukiwania białkowo-baz danych. Różnica polega na tym, że dla BLASTP istnieje tylko jedno okno dla każdej sekwencji tematu: okno, które zawiera całą sekwencję. Co więcej, w przypadku BLASTP kompozycja całej sekwencji podmiotowej jest zawsze używana podczas dokonywania korekty kompozycyjnej. W związku z tym macierz dopasowana kompozycyjnie jest zawsze taka sama dla każdego HSP w oknie i musi być obliczona tylko raz., W praktyce ten sam kod jest używany zarówno dla Tblastn, jak i BLASTP do implementacji algorytmu 1, ale dla BLASTP stosuje się warunek, aby zapewnić, że macierz jest obliczana tylko raz dla każdego okna.

zestawy testowe i używane programy

poniżej opisujemy konkretne pliki wykonywalne, zestawy danych i metody wykorzystywane do generowania wyników przedstawionych w niniejszym artykule. Przedstawione tu warianty tblastn zostały napisane w języku C, a jak wspomniano poniżej, niektóre warianty są dostępne jako część dystrybucji oprogramowania NCBI C i C++; moduły obliczeniowe są odzwierciedlone między tymi dwoma dystrybucjami., Wiele programów pomocniczych używanych do automatyzacji testów i podsumowania wyników zostało napisanych w C, perlu, Pythonie i skrypcie powłoki Bourne ' a.

używane pliki wykonywalne

TBLASTN jest trybem działania dla pliku wykonywalnego blastall. Ten plik wykonywalny jest dostępny do pobrania z. Warianty C-TBLASTN i S-TBLASTN są dostępne jako zestaw opcji do pliku wykonywalnego blastall. S-TBLASTN jest wywoływany przy użyciu opcji wiersza poleceń „- p tblastn-F F-C 1”. C-TBLASTN jest wywoływany przy użyciu podobnych opcji, ale z „-C 1” zastąpionym „- C 2”. B-TBLASTN nie jest obecnie dostępny jako zestaw opcji wiersza poleceń., TBLASTN może być uruchamiany bez statystyk składowych, pomijając opcję „- C” , ale domyślna wersja działa z mniejszą precyzją niż B-TBLASTN. Pliki wykonywalne uruchamiające B-TBLASTN oraz określone wersje s-TBLASTN i C-TBLASTN użyte w tym artykule są dostępne do pobrania na stronie.

plik wykonywalny blastall domyślnie używa BLOSUM62 do wykonywania wyrównań sekwencji aminokwasów, a jest to matryca używana na wszystkich etapach przed wykonaniem korekty kompozycji. Opcja „- F F ” wyłącza filtrowanie SEG sekwencji zapytań., Filtrowanie sekwencji tematu jest domyślnie włączone w każdym z trybów dopasowania kompozycji. Uważamy filtrowanie obu sekwencji za niepotrzebne; kiedy próbowaliśmy filtrować obie sekwencje, nie widzieliśmy poprawy dokładności statystycznej, ale zauważyliśmy spadek wyników ROC (dane nie pokazano).

testy z wykorzystaniem losowo permutowanych zapytań

aby zmierzyć skuteczność statystyk opartych na składzie w eliminowaniu fałszywych trafień o niskiej wartości E, wykonaliśmy serię testów z wykorzystaniem losowo permutowanych sekwencji aminokwasów z genomu myszy (Mus musculus)., Tysiąc sekwencji białek zostało losowo wybranych z listy białek myszy RefSeq aktualnej 10 stycznia 2006. Sekwencje były permutowane za pomocą ich numeru identyfikacyjnego GenBank jako ziarna do generatora liczb losowych. Permutowane sekwencje są dostarczane jako dodatkowy plik 1.

wyrównaliśmy permutowane sekwencje do bazy danych sekwencji chromosomalnych z zespołu odniesienia build 35 ludzkiego (Homo sapiens) genomu, wydany 26 sierpnia 2004. Baza danych zawiera chromosomy X i Y oraz niezaangażowane fragmenty sekwencji zawarte w budowie., Pominęliśmy jednak Genom mitochondrialny z bazy danych, ponieważ sekwencje te mają inny kod genetyczny niż DNA jądrowe.

ROC score testy na genomie drożdży

aby sprawdzić skuteczność różnych trybów regulacji składu dla TBLASTN, wykonaliśmy szereg testów z wykorzystaniem genomu jądrowego drożdży. Pobraliśmy Genom drożdży ze strony zawierającej genomy referencyjne kuratorowane przez pracowników NCBI. Wersja genomu, której użyliśmy powstała 16 maja 2005 roku.,

ustawiliśmy zestaw 102 domen białkowych do genomu nukleotydu drożdży za pomocą TBLASTN. Ten zestaw testów został po raz pierwszy opracowany dla badania w . Zaktualizowana wersja została użyta w, w którym człowiek kuratorowana lista prawdziwych pozytywnych dopasowań do proteomu drożdży został użyty do generowania wyników ROC. W przypadku opisanych tu testów zaktualizowaliśmy listę true positive, aby odzwierciedlić zmiany w opublikowanym genomie drożdży. Zaktualizowana lista zawiera 987 query-subject pasujących do 894 różnych sekwencji tematów. Wersja zestawu testowego użytego w niniejszym artykule jest dostarczana jako dodatkowy plik 2.,

w genomie drożdży każde znane białko drożdży jest oznaczone lokalizacją i pasmem jego regionu kodującego. Te adnotacje pozwalają nam dostosować zestaw testowy do użytku z TBLASTN w następujący sposób. W przypadku TBLASTN wyrównania są podzielone na trzy kategorie: (1) wyrównania, które pasują do regionu kodowania znanego z wynikiem pozytywnym; (2) wyrównania, które pasują do znanego regionu kodowania, który nie jest wynikiem pozytywnym; oraz (3) wyrównania, które nie pasują do znanego regionu kodowania., Wyrównanie mówi się, aby dopasować zapytanie do regionu kodowania, jeśli przedmiotowa część wyrównania pokrywa się z regionem kodowania i znajduje się na tym samym obszarze.

często zdarza się, że istnieje więcej niż jedno wyrównanie między zapytaniem a regionem kodowania. Rzeczywiście jest to oczekiwane; wyszukiwanie białka-białka również raport wiele wyrównań między parami białek. Gdy istnieje więcej niż jedno wyrównanie do regionu kodowania, tylko najniższe wyrównanie wartości E między konkretnym zapytaniem a regionem kodowania jest używane podczas obliczania wyników ROC., Nie podejmuje się próby zastosowania podobnej reguły do regionów niekodujących. Wszystkie wyrównania, które nie pokrywają się z regionem kodowania, są klasyfikowane jako fałszywie dodatnie mecze i liczone przy obliczaniu wyników ROC.

wprowadziliśmy dwa wyraźne wyjątki od tego schematu do klasyfikacji trafień. Pierwszym wyjątkiem jest dodanie konkretnego pseudogenu (Entrez Gene ID 850644) do naszej listy regionów kodowania i uczynienie pseudogenu prawdziwym dodatnim dla jednego z naszych zapytań, podnosząc maksymalną możliwą liczbę prawdziwych pozytywów do 988., Każdy z badanych wariantów znalazł wyrównanie do tego pseudogenu o wartości E mniejszej niż 10-12. Pseudogen ulega ekspresji i w pewnych warunkach wytwarza funkcjonalne białko . Chociaż region ten jest oznaczony jako pseudogen, nie uważamy, że algorytm wyrównania powinien odróżniać go od prawdziwego genu. Drugim wyjątkiem jest Kategoryzacja konkretnego dopasowania, które pokrywa się z jednym prawdziwie dodatnim regionem kodowania i jednym fałszywie dodatnim regionem kodowania jako prawdziwe dopasowanie dodatnie. To nakładanie się jest zgłaszane przez wszystkie trzy warianty TBLASTN.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Przejdź do paska narzędzi