Stemlok
Deweloperzy | Ian Holmes ( UC Berkeley ) |
---|---|
Wersja stabilna | 1 |
Napisane w | Strzałka |
System operacyjny | UNIX , Linux , Mac , Cygwin na Windows XP |
Typ | Narzędzie bioinformatyczne |
Licencja | Otwarte źródło |
Strona internetowa | Strona główna Stemloca |
W bioinformatyce Stemloc to oprogramowanie typu open source do dopasowywania wielu sekwencji RNA i przewidywania struktury RNA w oparciu o probabilistyczne modele struktury RNA znane jako para stochastycznych gramatyk bezkontekstowych (również probabilistyczne gramatyki bezkontekstowe) . Stemloc próbuje jednocześnie przewidywać i dopasowywać strukturę sekwencji RNA przy ulepszonym koszcie czasowym i przestrzennym w porównaniu z poprzednimi metodami z tym samym motywem. Powstałe oprogramowanie implementuje ograniczone wersje algorytmu Sankoffa wprowadzając zarówno ograniczenia składania, jak i dopasowania, co zmniejsza zużycie procesora i pamięci oraz umożliwia analizę większych sekwencji RNA na zwykłym sprzęcie. Stemloc został napisany w 2004 roku przez Iana Holmesa.
Stemloc można pobrać jako część pakietu oprogramowania DART . Akceptuje pliki wejściowe w FASTA lub Stockholm .
Terminologia
- Fałdowanie : fałdowanie RNA to proces, w którym cząsteczka RNA uzyskuje strukturę drugorzędową poprzez interakcje wewnątrzcząsteczkowe.
- Koperta fałd : Zestaw kandydujących fałd do uwzględnienia w algorytmie
- Obwiednia wyrównania : zbiór kandydujących wyrównań, które mają być uwzględnione w algorytmie
Tło
Algorytm opracowany wcześniej przez Davida Sankoffa w 1985 roku wykorzystuje programowanie dynamiczne do jednoczesnego dopasowania i przewidywania wielu struktur RNA. Algorytm Sankoffa zajmuje czas i miejsce w dużej notacji i odpowiednio dla sekwencje długości . Jest to zauważalnie drogie i dlatego stanowi motywację do tworzenia lepszych narzędzi do analizy RNA, takich jak Stemloc. Początkowym celem projektu Stemloc było zmniejszenie kosztów czasowych i przestrzennych jednoczesnego dopasowania i przewidywania struktury dwóch sekwencji RNA za pomocą schematu punktacji stochastycznej gramatyki bezkontekstowej (SCFG) oraz zaimplementowania ograniczonych wersji algorytmu Sankoffa.
Stemloc wykorzystuje obwiednie dopasowujące i obwiednie fałdowe , aby jednocześnie ograniczyć zarówno dopasowanie, jak i struktury drugorzędowe porównywanych sekwencji. Koperty fałdowe można wykorzystać do „przycięcia” wyszukiwania nad strukturami drugorzędowymi i określenia podsekwencji dwóch sekwencji RNA, które można uwzględnić w algorytmie. Na przykład włączenie lub wyłączenie określonych par zasad związanych z atomami azotu. Koperty wyrównania można użyć do „przycięcia” wyszukiwania nad dopasowaniami i określenia możliwych „punktów przecięcia” w dopasowaniu dwóch sekwencji. Na przykład włączenie lub wykluczenie specyficznych homologii na poziomie reszt. Obwiednie składania są wstępnie obliczane dla każdej sekwencji indywidualnie, a obwiednie wyrównania są wstępnie obliczane przez porównanie dwóch sekwencji z pominięciem struktur drugorzędowych. Obsługiwane jest zarówno globalne, jak i lokalne wyrównanie .
Wejście
Dane wejściowe w Stemloc mogą być w formacie FASTA lub Stockholm (patrz powyżej, aby zapoznać się z opisami każdego z nich). Przykładowe dane wejściowe pokazane poniżej:
stemloc --local dynalign.trna
Polecenie „--local” analizuje plik w trybie wyrównania lokalnego. Użycie opcji „--global” spowoduje użycie trybu wyrównania globalnego.
Wyjście
To wyjście jest w formacie sztokholmskim . Pokazuje nazwy sekwencji, współrzędne dopasowań, dopasowanie, konsensusową sekwencję pierwotną, strukturę drugorzędową każdej sekwencji, strukturę drugorzędową konsensusu oraz wynik logarytmu prawdopodobieństwa dopasowania w bitach. Linia „//” służy do rozdzielania wyrównań lub oznaczania końca pliku. Przykładowe dane wyjściowe pokazane poniżej:
# SZTOKHOLM 1.0 #=GR RD0260/26-67 SS ..<<<<<.......>>>>>.....(<<<<.......>> >>). RD0260/26-67 UACUCCCCUGUCACGGGAGAGAAUGUGGGUUCAAAUCCCAUC #=GC PS_cons UAC..CCCUGUCACGG..G.GA..G.GGGUUC.AAUCCC..C RD0500/26-66 UACGACCCUGUCACGGUCGUGA-CGCGGGUUCgAAUCCCGCC #=GR RD0500/26- 66 SS ..<< <<<.......>>>>>...-.<<<<<.......>>>>>. #=GC SS_cons ..<<<<<.......>>>>>.....<<<<<.......>>>>>. #=GF SC 31.872 //
Proces
Stemloc w dużym stopniu opiera się na stochastycznych gramatykach bezkontekstowych, które można postrzegać jako schemat punktacji algorytmu. Ponieważ algorytm Sankoffa uwzględnia wszystkie możliwe fałdy i wszystkie możliwe wyrównania, jest dość dokładny i dokładny, ale uzyskanie jakichkolwiek wyników lub danych wyjściowych zajmuje wymierną ilość czasu. Aby to poprawić, Stemloc pozwala użytkownikowi ograniczyć całkowitą liczbę fałd i wyrównań, które należy wziąć pod uwagę. Dokładniej, każdą sekwencję można wstępnie złożyć indywidualnie w i wstępnie wyrównane, ignorując Na przykład użycie poniższego polecenia „-fast” uwzględni tylko 100 najlepszych struktur RNA, zamiast analizować wszystkie możliwe fałdy. Użycie polecenia „-log DOTPLOT” wyświetli wizualną reprezentację obwiedni składania i wyrównania.
stemloc nanos-tiny.rna -fast -log DOTPLOT
Ograniczanie kopert
Główną ideą Stemloc jest możliwość ustawienia progu liczby fałd i wyrównań, które są próbkowane w celu utworzenia kopert. Można to zrobić za pomocą opcji „-nf” i „-na”, które ustawiają liczbę fałd i wyrównań, które należy wziąć pod uwagę. (Użycie -1 ograniczy liczbę próbkowanych fałd i dopasowań, a zatem użycie -1 dla obu parametrów uruchomi algorytm Sankoffa na wejściowym zbiorze danych.
stemloc nanos-tiny.rna -nf -1 -na -1
Trening parametrów
Kolejną cechą Stemloc jest możliwość parametryzacji modeli probabilistycznych, takich jak stochastyczne gramatyki bezkontekstowe z danych. Stemloc wykorzystuje algorytm Inside-Outside i stochastyczną gramatykę bezkontekstową, aby zmaksymalizować prawdopodobieństwo zbioru uczącego. Jest to przydatne, ponieważ domyślne parametry Stemloc zostały przeszkolone na wybranych dopasowaniach parami o identyczności sekwencji od 30% do 40% z Rfam (baza danych) w wersji 5.0. Parametry te jednak nie zawsze są skuteczne, dlatego pomocna może być możliwość trenowania parametrów jako użytkownik.
W praktyce
Od tego czasu Stemloc był używany w różnych publikacjach naukowych dotyczących analizy struktury RNA. Przede wszystkim w badaniu optymalnego dopasowania wielu sekwencji.
- Holmes I. (2005) Przyspieszone wnioskowanie probabilistyczne o ewolucji struktury RNA . BMC Bioinformatyka. 2005 24 marca;6:73.
- Sankoff D. (1985) Jednoczesne rozwiązanie problemów fałdowania, dopasowania i protosekwencji RNA . SIAM Journal o matematyce stosowanej. 1985 Oct;45:5.Sankoff D. (1985) Jednoczesne rozwiązanie problemów zwijania RNA, wyrównania i protosekwencji. SIAM Journal o matematyce stosowanej. Październik 1985; 45:5.
Linki zewnętrzne
- Strona główna Stemloc i samouczek