Stemlok

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.

Linki zewnętrzne