Bioinformatyczne bazy danych cz. II – Porównywanie i przeszukiwanie Grzegorz Koczyk © 2003-2004
Sukces bioinformatyki biologia matematyka walidacja odpowiedzi na gruncie statystyki biologia molekularna (problemy i dane) konkretyzowanie pytań na gruncie teorii ewolucji informatyka algorytmy i programy
Od sekwencji do funkcji - informacja {A,C,G,T}n Funkcja (np. powielanie informacji genetycznej) {A,R,N,D,C,Q,E,G,H,I,L,K,M,F,P,S,T,W,Y,V}n/3
Porównywanie sekwencji – czy... ? Podobieństwo Pokrewieństwo Statystyczna istotność Biologiczna istotność Podobieństwo sekwencji Podobieństwo struktury Podobieństwo funkcji
Porównywanie sekwencji - metody Dot Plot wykres podobieństwa sekwencji Alignment K-tuple methods (FASTA, BLAST) metody przybliżone, szybkie
Dot Plot Porównywanie sekwencji podzielonej na „okna” o określonej długości. Parametry: window (wielkość okna – liczba porównywanych naraz pozycji) stringency (liczba pozycji które muszą być podobne/identyczne, w oknie) B A O Tego DotPlot już nie złapał ! Przykładowy DotPlot dla: window = 2 stringency = 2
Parametry do wstępnych porównań Dot Plot Parametry do wstępnych porównań Window Stringency DNA 15 10 Białka 2 lub 3 2 Dywergentne białka 20 5
Dot Plot Dotter www.cgr.ki.se/cgb/groups/sonnhammer/Dotter.html
Podstawowe zdarzenia na poziomie dwóch (spokrewnionych) sekwencji Podstawy ewolucyjne Podstawowe zdarzenia na poziomie dwóch (spokrewnionych) sekwencji substytucja insercja/delecja (indel) Zasada parsymonii najlepszy model to ten który tłumaczy zaobserwowane dane przy pomocy najmniejszej ilości zdarzeń ewolucyjnych.
BAOBA-B BA-BAOB Alignment = problem... ? Jak znaleźć takie przeprowadzenie jednej sekwencji w drugą które używa najmniejszej ilości operacji edycji (substytucji, insercji, delecji) ? BAOBA-B BA-BAOB
Każda z operacji edycji wiąże się z pewnym zyskiem lub kosztem. Założenia Każda z operacji edycji wiąże się z pewnym zyskiem lub kosztem. A B O +1 -2 Koszt indela del = 2
Alignment – programowanie dynamiczne Rozważmy porównanie dwóch pozycji: (już wyliczony alignment) ... ai (już wyliczony alignment) ... bj ... ai-1 ai bj-1 wi-1,j-1 wi-1,j bj wi,j Rozwiązanie problemu całego alignmentu sprowadza się do rozwiązania wszystkich takich podproblemów !!!
Alignment – maksymalizacja wi,j Substytucja: ... ai ... ... bj ... ... ai-1 ai bj-1 wi-1,j-1 wi,j-1 bj wi-1,j wi,j wi,j = wi-1,j-1 + s(ai,bj)
Alignment – maksymalizacja wi,j Indel: ... ai ... ... - ... ... ai-1 ai bj-1 wi-1,j-1 wi,j-1 bj wi-1,j wi,j wi,j = wi-1,j + del
Alignment – maksymalizacja wi,j Indel: ... - ... ... bj ... ... ai-1 ai bj-1 wi-1,j-1 wi,j-1 bj wi-1,j wi,j wi,j = wi,j-1 - del
Alignment – programowanie dynamiczne B A O -2 -4 -6 -8 -10 -12 -14 Początkowe „zerowe” wiersz i kolumna reprezentują gapy na początku alignmentu.
Alignment – programowanie dynamiczne B A O -2 -4 -6 -8 -10 -12 +1 -1 -3 -5 -7 -9 +2 -14
Alignment – programowanie dynamiczne B A O -2 -4 -6 -8 -10 -12 +1 -1 -3 -5 -7 -9 +2 -14 Znalezienie alignmentu sprowadza się do: - wypełnienia tablicy m x n, - „powrotu po śladach” Takie podejście zajmuje czas proporcjonalny do iloczynu długości obydwu sekwencji !
koszt gapu o długości n = (n-1)*a +b Indele = gapy Nie jesteśmy w stanie odróżnić delecji w jednej sekwencji od insercji w drugiej. Najprostszy system – każdy gap (przerwa) ma taki sam koszt.... ... ale indele często dotyczą większej liczby pozycji... ... stąd odmienny system punktowania gapów (koszt liniowy) koszt gapu o długości n = (n-1)*a +b a – koszt rozszerzenia gapu b – koszt otwarcia gapu
Alignment – macierze podobieństwa +1 -2
Alignment – macierze podobieństwa Sekwencje białkowe – macierze otrzymywane na podstawie sekwencji o znanej ewolucji (BLOSUM, PAM) i stworzonych ręcznie alignmentach. A 4 R -1 5 N -2 0 6 D -2 -2 1 6 C 0 -3 -3 -3 9 BLOSUM62 Q -1 1 0 0 -3 5 E -1 0 0 2 -4 2 5 G 0 -2 0 -1 -3 -2 -2 6 H -2 0 1 -1 -3 0 0 -2 8 I -1 -3 -3 -3 -1 -3 -3 -4 -3 4 L -1 -2 -3 -4 -1 -2 -3 -4 -3 2 4 K -1 2 0 -1 -3 1 1 -2 -1 -3 -2 5 M -1 -1 -2 -3 -1 0 -2 -3 -2 1 2 -1 5 F -2 -3 -3 -3 -2 -3 -3 -3 -1 0 0 -3 0 6 P -1 -2 -2 -1 -3 -1 -1 -2 -2 -3 -3 -1 -2 -4 7 S 1 -1 1 0 -1 0 0 0 -1 -2 -2 0 -1 -2 -1 4 T 0 -1 0 -1 -1 -1 -1 -2 -2 -1 -1 -1 -1 -2 -1 1 5 W -3 -3 -4 -4 -2 -2 -3 -2 -2 -3 -2 -3 -1 1 -4 -3 -2 11 Y -2 -2 -2 -3 -2 -1 -2 -3 2 -1 -1 -2 -1 3 -3 -2 -2 2 7 V 0 -3 -3 -3 -1 -2 -2 -3 -3 3 1 -2 1 -1 -2 -2 0 -3 -1 4 A R N D C Q E G H I L K M F P S T W Y V Domyślna macierz BLASTa
PAM (Margaret Dayhoff, 1962) Macierze PAM (Percent of Accepted Mutations) PAM1 sformułowano na podstawie porównywania blisko spokrewnionych sekwencji (gdzie można założyć że żadna mutacja nie trafiła więcej niż raz w to samo miejsce). PAM 1 30 80 110 200 250 % identity 99 75 50 60 25 20
PAM – zasada tworzenia: PAM1 tworzona z ręcznego alignmentu sekwencji różniących się 1 pozycją / 100 aminokwasów. s(ai,aj) = „Większe” PAMy są ekstrapolowane z PAM-1. W pewnym momencie następuje wysycenie i kolejne mutacje zaczynają nadpisywać poprzednie. W rzeczywistości PAM-250 odpowiada obserwowalnemu 20% podobieństwu sekwencji.
(BLOcks Substitution Matrix) (Henikoff & Henikoff, 1991) PAM i BLOSUM: „Wyższe” macierze PAM opierają się na kumulacji wyników (i błędów ! ) z porównywania blisko spokrewnionych sekwencji. BLOSUM (BLOcks Substitution Matrix) (Henikoff & Henikoff, 1991)
Macierze BLOSUM stworzone z bazy danych zalignowanych sekwencji BLOCKS bazują na konserwatywnych regionach, a nie całych sekwencjach żeby nie nadreprezentować „wszędobylskich” rodzin podobnych sekwencji brano pojedyńczych reprezentantów lub skalowano wagę poszczególnych sekwencji w rodzinie notacja BLOSUM, przeciwna do PAM BLOSUM80 odpowiada 80% identyczności
Porównania sekwencji białkowych Którą wybrać ? Porównania sekwencji nukleotydowych match +10 mismatch -3 otwarcie gapa -50 rozszerzenie gapa -5 Porównania sekwencji białkowych Porównywanie nieznanych – BLOSUM62 Porównywanie dywergentnych – PAM250, BLOSUM30 Porównywanie podobnych – PAM15, BLOSUM80
Alignment – globalny czy lokalny próba dopasowania sekwencji na całej ich długości. Alignment lokalny próba znalezienia najbardziej podobnych rejonów. Za każdym razem kiedy zakumulowany wynik spada poniżej pewnego poziomu, alignment zaczyna się od 0.
Alignment lokalny - przykład Alignment lokalny jest rozszerzany tylko dopóki zakumulowany zysk na dopasowanych pozycjach jest dodatni. B A O +1 +2 +3 +4
Alignment – jak zrobić to efektywnie ? Efektywność jest dobra dla par sekwencji, ale.... ... liczba sekwencji w bazach wzrasta wykładniczo Przypływ danych w GenBanku 5000 10000 15000 20000 25000 30000 35000 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 Searches per Day 200000 400000 600000 800000 1000000 1200000 1400000 1600000 1800000 2000000 2200000 2400000 Megabases GenBank (Megabases) Searches/Day (BLAST & Text) ... liczba przeszukiwań również (coraz więcej użytkowników) Konieczne szybsze narzędzia !
Cięcie kosztów – k-tuple methods Najlepsze dopasowania z reguły: dobrze dopasowane, widoczne „gołym okiem” obszary równolegle do przekątnej tablicy (czyli motywy w tej samej odległości w obydwu sekwencjach) BLAST (Basic Local Alignment Search Tool) Heurystyka dopasowania słowa Heurystyka rozszerzania alignmentu
W, T - heurystyka dopasowania słowa Dobre alignmenty zawierają krótkie bardzo podobne obszary w obu sekwencjach (np. motywy związane z katalizą) W=3 RGD 17 KGD 14 QGD 13 RGE 13 EGD 12 HGD 12 NGD 12 RGN 12 AGD 11 MGD 11 RAD 11 RGQ 11 RGS 11 RND 11 RSD 11 SGD 11 TGD 11 T=12 Skupiska słów na tej samej przekątnej („ziarna” dla alignmentu). BLAST tworzy listę krótkich słów występujących w danej sekwencji i ich najbliższych sąsiadów.
X – heurystyka rozszerzania alignmentu Alignmenty rozszerzane w obu kierunkach, aż sumaryczny wynik spadnie poniżej X... ... i przycinane do punktu ostatniego maximum The quick brown fox jumps over the lazy dog. The quiet brown cat purrs when she sees him. max = 10 X=5
Wzajemne relacje parametrów BLASTa ze wzrostem długości słowa w – wzrasta szybkość i specyficzność, maleje czułość porównań (większe ziarna) ze wzrostem progu dla podobnych słów T – wzrasta szybkość i specyficzność, spada czułość porównań (mniej ziaren) ze wzrostem progu (odcięcia) dla rozszerzania alignmentu X – wzrasta szybkość (zmniejsza się długość alignmentów), zmniejsza się czułość, wzrasta specyficzność (nie są zawierane przypadkowe obszary)
Statystyczna ocena wyników - BLAST P(S>s) Rozkład wyników (scores) alignmentów z przypadkowymi sekwencjami odpowiada krzywej tzw. EVD (extreme value distribution) Statystyka Karlina-Altschula
Równanie Karlina-Altschula Oczekiwana liczba przypadkowych alignmentów o Ss E-value = Kmne-ls Stałe Długość zapytania Długość bazy danych Przestrzeń przeszukiwań „Czysty” wynik - statystyka Karlina-Altschula jest oparta na wynikach analitycznych tylko dla alignmentów BEZ gapów - dla alignmentów z gapami (takie nas interesują) parametry K i l są ustalone empirycznie (porównania z losowo wygenerowanymi sekwencjami, dla ustalonych w, T i K)
Rodzaje BLASTa Program Baza Sekwencja Typowe użycie BLASTN nt BLASTP Mapowanie oligonukleotydów, ESTów, powtórzeń. Identyfikacja pokrewnych transkryptów. BLASTP białko Identyfikacja wspólnych rejonów między białkami. Zbieranie białek do analizy filogenetycznej. BLASTX Szukanie kodujących sekwencji w genomach. TBLASTN Identyfikowanie transkryptów potencjalnie kodujących pokrewne białka (białka jeszcze nie w GenBanku). Mapowanie białek do genomu. TBLASTX Przewidywanie genów na podstawie ortologów (z innego gatunku). Poszukiwanie genów „gubionych” przez tradycyjne metody.
WWW BLAST – wybór narzędzia A to co ? poszukiwanie sekwencji o określonej budowie BLAST na sekwencjach genomowych odzyskiwanie przechowywanych w NCBI rezultatów
spacje i myślniki są ignorowane WWW BLAST spacje i myślniki są ignorowane baza danych poszukiwanie domen
Bazy danych – BLASTN, BLASTX, TBLASTX Baza danych Opis nr Całe GenBank+EMBL+DDBJ+PDB (bez EST, STS, GSS lub sekwencji HTGS fazy 0, 1 lub 2). Tak naprawdę nie jest "non-redundant„. pat Sekwencje z działu PAT GenBanku yeast Sekwencje genomowe Saccharomyces cerevisiae ecoli Sekwencje genomowe Escherichia coli Drosophila genome Sekwencje genomowe Drosophila dostarczone przez firmę Celera i Berkeley Drosophila Genome Project (BDGP) month Wszystkie nowe lub uaktualnione sekwencje z GenBanku + EMBL + DDBJ + PDB, z ostatnich 30 dni
Bazy danych – BLASTN, BLASTX, TBLASTX Baza danych Opis est Wszystkie ESTs z GenBanku+EMBL+DDBJ est_human Ludzkie ESTs z GenBanku + EMBL + DDBJ est_mouse Mysie ESTs z GenBanku + EMBL + DDBJ est_others ESTs innych gatunków z GenBanku + EMBL + DDBJ gss Sekwencje GSS GenBanku + EMBL + DDBJ htgs Sekwencje HTGS z GenBanku + EMBL + DDBJ dbsts Sekwencje STS z GenBanku + DDBJ + EMBL
Bazy danych – BLASTP, TBLASTN Baza danych Opis nr Wszystkie nie-redundantne (nie-identyczne) translacje sekwencji CDS (coding) z GenBanku + PDB + SwissProt + PIR + PRF swissprot Ostatni duży zrzut NAJLEPSZEJ bazy białek SwissProt (nie zawiera uaktualnień) pat Białka z działu PAT GenBanku Yeast Translowane sekwencje CDS Saccharomyces cerevisiae ecoli Translowane sekwencje CDS Escherichia coli pdb Sekwencje odpowiadające poszczególnym rekordom struktur 3D w bazie struktur Brookhaven PDB (Protein Data Bank) Drosophila genome Białka kodowane w genomie Drosophila dostarczone przez firmę Celera i Berkeley Drosophila Genome Project (BDGP) month Wszystkie nowe lub uaktualnione translowane sekwencje CDS z GenBanku + PDB + SwissProt + PIR + PRF, z ostatnich 30 dni
WWW BLAST - opcje filtrowanie wyników zapytaniem do Entrez (lub taksonem) w (heurystyka dopasowania słowa) wybór macierzy (domyślnie BLOSUM62) i kosztów gapów możliwość ustawienia innych parametrów (w tym T i X)
WWW BLAST - opcje statystyki alignmentu są skalowane zależnie od częstości występowania reszt w obu sekwencjach filtr sekwencji o niskiej złożoności (m.in. mikrosatelity, tandem repeats ! )
WWW BLAST - opcje maskowanie ciągów małych liter (można samemu zamaskować fragment) maskowanie sekwencji tylko na etapie heurystyki dopasowania słowa (alignment rozszerzany na zamaskowane obszary)
WWW BLAST - formatowanie ograniczenie na tym etapie, nie może być rozluźnione później
CDD search Konserwatywne domeny Identyfikator RID
Wady BLASTa – szacowanie istotności - wyliczona dla teoretycznego rozkładu z równania Karlina-Altschula, nie z rzeczywistych sekwencji - zakłada losowość sekwencji (rzeczywiste bazy takie nie są) - zakłada że całość bazy można reprezentować jako pojedyńczą długą sekwencję - statystyki są bardzo niedokładne dla krótkich sekwencji (ok. 20 znaków). Wartości wyników są nadal prawidłowe, ale E-wartości są zawyżone (należy podwyższyć poprzeczkę) UWAGA: Composition Based Statistics – dwa IDENTYCZNE alignmenty mogą mieć inny wynik i E-value
Parametry BLASTa – sekwencje białkowe Długość sekwencji Macierz podobieństwa Koszty gapów <35 PAM30 (9,1) 35-50 PAM70 (10,1) 50-85 BLOSUM80 >85 BLOSUM62 Źródło: Makałowski W. [Summer School of Bioinformatics], Poznań, 2003
MegaBlast Modyfikacja BLASTN przeznaczona do szybkich porównań sekwencji nt o identyczności >85% (klastrowanie ESTs, rekonstrukcja sekwencji genomowych) Etap dopasowania słowa: MegaBlast poszukuje dopasowań według wzoru 110110110... (tolerowane odchylenia na co trzeciej pozycja). domyślna wielkość słowa 28 Etap rozszerzania alignmentu: MegaBlast od razu rozpoczyna rozszerzanie dopuszczające gapy (pomija pierwszy etap) każdy gap obarczony kosztem P = Q – 0.5 (Q – koszt złego dopasowania - mismatch)
Parametry BLASTa – sekwencje nt Podobieństwo sekwencji Spodziewana długość alignmentu Zalecany program Zalecane opcje 95% 1’000 MegaBLAST -W 44 10’000 -W 84 90% -W 28 80% -W 16 -W 24 70% -W 12 –t 21 –N 1 60% BLASTn -W 8 50% -W 7 -W 9 Źródło: Makałowski W. [Summer School of Bioinformatics], Poznań, 2003
Multiple alignment Szukanie wspólnych motywów w sekwencjach danej rodziny. Identyfikacja konserwatywnych reszt np. miejsca aktywnego. Konstrukcja modeli białek danej rodziny. Zakonserwana reszta CLUSTALX poszukiwanie alignmentu metodą progresywną (porównania sekwencji parami, następnie budowanie alignmentu przez łączenie najbliższych par)
PSSM – Position Specific Scoring Matrix Pozycja T R F I S A - 5 N D C Q E G H 3 1 L K M 2 P 4 W Y V Macierz tworzona jako macierz podobieństwa, ale podstawienia aminokwasów są zależne od pozycji (tu: względem wzorca).
PSSM – Position Specific Scoring Matrix Pewne aminokwasy nie występują na wszystkich pozycjach w multiple alignmencie – ale mogą wystąpić w rzeczywistości (dodaje się niewielką wartość - pseudocount). Lepszy schemat bierze pod uwagę również podobieństwo aminokwasów (np. z BLOSUM62). Liczba aminokwasu k na pozycji i w macierzy Koszt podstawienia aminokwasu k przez najlepszy inny w kolumnie (na podstawie BLOSUM62)
przeliczenie zadanej liczby przebiegów (PSI-BLAST iterations) Pojedyńcza sekwencja jest porównywana z bazą (normalny BLAST). Najlepsze trafienia są wybierane (według pewnego progu). Konstruowana jest PSSM, używając sekwencji zapytania jako wzorca według którego ustawia się lokalne alignmenty do trafień. Różne obszary zapytania mogą być reprezentowane przez różną liczbę sekwencji. Profil jest porównywany do bazy, używając PSSM zamiast zwykłej macierzy. Najlepsze trafienia są szacowane i zatrzymywane. Kroki 2 i 3 powtarza się aż do: przeliczenie zadanej liczby przebiegów (PSI-BLAST iterations) osiągnięcia konwergencji (żadnych nowych sekwencji w porównaniu z poprzednim krokiem)
PSI-BLAST uwagi Potężne narzędzie do wykrywania odległych homologów i zbierania białek tej samej rodziny. PSI-BLAST jest podatny na błędy. Gdy jakaś sekwencja wejdzie do profilu zaczyna wyławiać sekwencje podobne do niej samej. Wskazane jest użycie filtrów (np. SEG). Im więcej iteracji i mniejsza poprzeczka tym PSI-BLAST czulszy, ale i mniej specyficzny (patrz wyżej – kumulacja błędów)
Bioinformatyczne bazy danych Dziękuję za uwagę
RefSeq – baza sekwencji referencyjnych - poprawione transkrypty i białka. Homo sapiens Mus musculus Rattus norvegicus Drosophila melanogaster Danio rerio Arabidopsis thaliana ludzkie modelowe transkrypty i białka kontigi - „szkic” genomu ludzkiego i genom mysi zapisy genomów: genomy bakteryjne genomy organellarne genomy eukariotyczne Zapytanie przez: zakładkę Limits słowo kluczowe srcdb_refseq[PROPS]
Co jest w imieniu - Accessions RefSeq Accessions Sekwencje mRNA i białka NM_123456 Curated mRNA NP_123456 Curated Protein NR_123456 Curated non-coding RNA XM_123456 Predicted Transcript XP_123456 Predicted Protein XR_123456 Predicted non-coding RNA Rekordy genów: NG_123456 Reference Genomic Sequence Sekwencje składane: NT_123456 Contig NW_123456 Supercontig NC_123455 Chromosome