T - SGGW
Transkrypt
T - SGGW
Dopasowanie sekwencji Sequence alignment Bioinformatyka, wykłady 3 i 4 (19, 26.X.2010) [email protected] terminologia z alignment z dopasowanie sekwencji z uliniowienie sekwencji – uliniowianie sekwencji – uliniawianie – uliniowanie z elajment 33000 119 82 125 6 3 2 Uliniowianie Z Wikipedii z W bioinformatyce, uliniawianie sekwencji to sposób porównywania sekwencji pierwszorzędowej DNA, RNA bądź białek w celu identyfikacji regionów podobnych, które mogą być wynikiem funkcjonalnych, strukturalnych bądź ewolucyjnych związków pomiędzy sekwencjami. Uliniowione sekwencje rezyduów nukleotydów bądź aminokwasów zwykle są przedstawiane jako wiersze macierzy Pomiędzy znaki wstawiane są przerwy w taki sposób, aby zapewnić jak największą zgodność porównywanych sekwencji. ... dopasowanie (alignment) Ułożenie dwóch sekwencji biopolimerów (DNA, RNA lub białka) w celu zidentyfikowania regionów podobieństwa istotnego ze względów ewolucyjnych, strukturalnych lub funkcjonalnych (procedura oraz jej efekt). dwie sekwencje - pairwise alignment wiele sekwencji - multiple sequence alignment gap AGATTGATACCCA AGA--TTGATACCCA AGACATTAACTA AGACATTAA---CTA match mismatch Edgar Allan Poe, The Raven Dopasowanie sekwencji - znaczenie Podobieństwo porównywanych sekwencji (similarity) może świadczyć o: podobnej funkcji sekwencji podobnej strukturze białek wspólnej historii ewolucyjnej sekwencji Podobieństwo porównywanych sekwencji (similarity) może wynikać z: homologii - pochodzeniu sekwencji (homologicznych) od wspólnego przodka; sekwencje mogą, ale nie muszą pełnić te same funkcje konwergencji - podobne motywy, które wyewoluowały w obu sekwencjach (analogicznych) niezależnie; np. chymotrypsyna i subtylizyna - różna struktura 3D, ale podobne centrum aktywne (histydyna, seryna, kwas asparaginowy) {... Problem rozróżnienia odległej homologii a analogii } regiony zachowane = znaczenie funkcjonalne sekwencje trypsyny Mus musculus i Astacus astacus S-S * Mouse IVGGYNCEENSVPYQVSLNS-----GYHFCGGSLINEQWVVSAGHCYK-------SRIQV Crayfish IVGGTDAVLGEFPYQLSFQETFLGFSFHFCGASIYNENYAITAGHCVYGDDYENPSGLQI * Mouse RLGEHNIEVLEGNEQFINAAKIIRHPQYDRKTLNNDIMLIKLSSRAVINARVSTISLPTA Crayfish VAGELDMSVNEGSEQTITVSKIILHENFDYDLLDNDISLLKLSGSLTFNNNVAPIALPAQ S-S Mouse PPATGTKCLISGWGNTASSGADYPDELQCLDAPVLSQAKCEASYPG-KITSNMFCVGFLE Crayfish GHTATGNVIVTGWG-TTSEGGNTPDVLQKVTVPLVSDAECRDDYGADEIFDSMICAGVPE S-S * Mouse GGKDSCQGDSGGPVVCNG----QLQGVVSWGDGCAQKNKPGVYTKVYNYVKWIKNTIAAN Crayfish GGKDSCQGDSGGPLAASDTGSTYLAGIVSWGYGCARPGYPGVYTEVSYHVDWIKANAV-- Sequence identity? CLCA1_HUMAN vs 1kapp Metalloprotease [Pseudomonas aeruginosa] Z-score -6.8 6% sequence identity CLCA1_HUMAN 1kapp PNVPEDETLIQQIKDMVTQASLYLFEATGKRFYFKNVAIL YSFLTKPNDFFNTPWKYVSDIYSLGKFSAFSAQQQAQAKL CLCA1_HUMAN 1kapp IPETWKTKADYVRPKLETYKNADVLVAESTPPGNDEPYTE SLQSWSDVTNIHFVDAGQGDQGDLTFGNFSSSVGGAAFAF CLCA1_HUMAN 1kapp QMGNCGEKGERIHLTPDFIAGKKLAEYGPQGRAFVHEWAH LPDVPDALKGQSWYLINSSYSANVNP-----QTLTHEIGH CLCA1_HUMAN 1kapp LRWGVFDEYNNDE T--GLSHPGDYNA różnice między sekwencjami świadczą o mutacjach, które zaszły po rozdzieleniu się sekwencji od wspólnego przodka AGA--TTGATACCCA AGACATTAA---CTA AGA--TTGATACCCA delecja insercja AGACATTAA---CTA -CA +TAC G->A C->T TAC AGACATTGACCA substytucje dopasowanie - zastosowanie Porównywanie sekwencji jest bardzo pomocne w: poszukiwaniu oraz określaniu funkcji i struktury (białek) dla nowych sekwencji określaniu powiązań filogenetycznych między sekwencjami - homologii między sekwencjami oraz w analizach ewolucyjnych dopasowanie - metody dopasowanie par sekwencji: Macierz punktów - dot matrix, dotplot Programowanie dynamiczne (DP) Metody słów (k - tuple methods) - szybkie metody stosowane przy przeszukiwaniu baz danych sekwencji z wykorzystaniem programów FASTA i BLAST dopasowanie wielu sekwencji Dot matrix M T S I E Q W T R Q V M • T S I E L Q W • T R E V A W • • • • • • • • • • • • • MTSIELQWTREVAW MTSIE-QWTRQV-- Dot matrix – porównanie sekwencji samej z sobą Dot matrix – porównanie dwóch podobnych sekwencji Dot matrix - metody wstawiania punktów Dla identycznych zasad lub reszt aminokwasowych (symboli) W oparciu o macierz punktacji (PAM, BLOSUM), gdy symbole wykazują podobieństwo większe niż pewna wartość punktacji (score) Nadawanie różnych kolorów lub odcieni szarości w zależności od stopnia podobieństwa symboli Gdy liczba podobnych symboli w danym oknie przekracza pewną wartość Dot matrix - metody wstawiania punktów ACTGCTAGATCGTAGCTGATAATGACCG ACAGCAACATCTGAACTGGCAGCGACGG 5/7 4/7 4/712/20 12/20 11/20 rodzaj sekwencji liczba wielkość identycznych okna symboli sekwencje DNA 15 10 sekwencje białek 2-3 2 sekwencje odległe 15 5 Dot matrix - zastosowanie identyfikacja regionów podobnych lub identycznych porównywanie sekwencji o strukturze wielodomenowej rozpoznawanie dużych insercji i delecji rozpoznawanie regionów powtórzonych i duplikacji rozpoznawanie rearanżacji rozpoznawanie regionów o słabo zróżnicowanym składzie analiza sekwencji i struktury RNA Dot matrix – insercja lub delecja ATGCTAGACATCGGATATTCGACA A T G C T A G A A T A T T C G A C A ATGCTAGACATCGGATATTCGACA ATGCTAGA------ATATTCGACA Dot matrix – duplikacja tandemowa ATGCTGTATAAAGCATATTC A T G C T G T A T A A A G T A T A A A G C A T A T T C Dot matrix – duplikacja tandemowa w tej samej sekwencji ATGTGTATAAGTATAAAGCATAT A T G T G T A T A A G T A T A A A G C A T A T Dot matrix – inwersja ATGCTAGACATCGGATATTCGACA A T G C T A G A C A A T A G G C T T T C G A C A Dot matrix – przyłączenie regionu ATGCTAGACATCGGATATTCGAC T G C G A T A G T C G G A A A T G C A T G C T A G Dot matrix – region o licznych powtórzeniach Dot matrix - zastosowanie czynnik krzepnięcia XII (F12) F2 E F1 E tkankowy aktywator plazminogenu (PLAT) F1 E K K K Catalytic Catalytic F1 F2 powtórzenia fibronektynowe E domena podobna do EGF K Catalytic domena “kringle” aktywność katalityczna proteaz serynowych Dot matrix - zastosowanie czynnik krzepnięcia XII (F12) F 1 E tkankowy aktywator plazminogenu (PLAT) K K Catalytic F2 E F1 E K Catalytic Programowanie dynamiczne Porównuje każdą parę znaków dwóch sekwencji i tworzy dopasowanie Uwzględnia wszystkie możliwe przyrównania uwzględniając: dopasowania (matches), niedopasowania (mismatches), przerwy (gaps). Przerwy są wstawiane, aby uzyskać wzrost liczby dopasowań w innych miejscach. Przyjmuje pewien system punktacji (scoring system) Rozpatruje wszystkie możliwości Stara się uzyskać maksymalną liczbę dopasowań między identycznymi lub podobnymi znakami Znajduje optymalne takie dopasowanie) dopasowanie (może istnieć Czas obliczeń proporcjonalny do iloczynu długości sekwencji więcej niż jedno Programowanie dynamiczne Przyjęty system punktacji: dopasowanie (match): +1 niedopasowanie (mismatch): -1 przerwa (gap): -1 gap AGA--TTGATACCCA AGACATTAA---CTA match mismatch Programowanie dynamiczne Już utworzone dopasowanie, do którego jest dodawana kolejna para znaków, musi być optymalne. Programowanie dynamiczne uwzględnia każdą i z powrotem przelicza optymalne dopasowanie. sekwencja 1: sekwencja 2: dodawaną parę znaków G A T A C T A G A T T A C C A Dotychczasowe dopasowanie musi być optymalne! G A T A | | | G A T T C + A +1 +1 +1 –1 = +2 - - G A T A C = G A T A C | | | G A T T A +1 +1 +1 –1 –1 = +1 G A T T A - - - G A T A C | | G A T T A - G A T - A C | | | | G A T T A - –1 –1 –1 –1 –1 –1 –1 = –7 –1 –1 –1 +1 +1 –1 = –2 +1 +1 +1 –1 +1 –1 = +2 Programowanie dynamiczne Tworzenie macierzy punktacji, w której każda komórka reprezentuje punktację dla najlepszego dopasowania kończącego się w danej pozycji Cofanie się w macierzy, aby znaleźć optymalne dopasowanie sekwencja 1: sekwencja 2: G A T A C T A G A T T A C C A Przyjęty system punktacji: dopasowanie (match): +1 niedopasowanie (mismatch): -1 przerwa (gap): -1 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy G A T A C T A Znaki sekwencji ułożone wzdłuż dwu-wymiarowej siatki Węzły siatki znajdują się między znakami G A T T A C C A Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy G A T A C T A Celem jest znalezienie optymalnej ścieżki G A T T A C C A stąd dotąd Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy G A T A C T A Każda ścieżka odpowiada poszczególnemu dopasowaniu Które dopasowanie jest optymalne? G A T T A C C A Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy G A T A C T A punktacja dla ścieżki jest sumą przyrastających punktacji krawędzi. G A T T A C C A A porównane z A match = +1 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy G A T A C T A punktacja dla ścieżki jest sumą przyrastających punktacji krawędzi. G A T T A C C A A porównane z T mismatch = -1 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy G A T A C T A punktacja dla ścieżki jest sumą przyrastających punktacji krawędzi. G A T T A C C A T porównane z przerwą gap = -1 przerwa porównana z T Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Znaczenie punktu w macierzy: wszystkie znaki do tego miejsca są ze sobą porównane, czego można dokonać na wiele sposobów (ścieżek). Pozycja “x” oznacza: przyrównanie GA z GA G A T A C T A G A T T A C C A x --GA -GA GA-- G-A GA GA Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. 0 G A T T A C C A -1 G A T A C T A -1 +1 0 G 0 -1= -1 0 +1 0 -1 = +1 = -1 -1 A T G -1 +1 A T 0 G 0 -1= -1 0 +1 0 -1 = +1 = -1 -1 A T G -1 A -1 -1= -2 -1 -1 -1 -1 = -2 = -2 +1 -2 -2 -2 T 0 G 0 -1= -1 0 +1 0 -1 = +1 = -1 -1 A T G -1 A -1 -1= -2 -1 -1 = -2 -2 +1 -2 0 0 +2 +1 -1= 0 +1 +1-1 +1= +2 =0 T 0 G A T G 0 -1= -1 0 +1 0 -1 = +1 = -1 -1 A -1 -1= -2 -2 -1 +1 -2 -2 0 -2 -2 0 +2 -1 --1= 0 1 -1 = -1-1 -2 = -2 +1 -1= 0 +1 +1-1 +1= +2 =0 T Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. 0 G A T T A C C A -1 G A T A C T A -1 +1 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0 G A T T A C C A -1 G A T A C T A -1 -2 +1 -2 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0 G A T T A C C A -1 G A T A C T A -1 -2 +1 -2 0 0 +2 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0 G A T T A C C A G A T A C T A -1 -2 -1 +1 -2 0 -2 0 +2 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0 G A T T A C C A G A T A C T A -1 -2 -3 -1 +1 -2 0 -1 -2 0 +2 +1 -3 -1 +1 +3 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0 G A T T A C C A G A T A C T A -1 -2 -3 -4 -5 -1 +1 0 -1 -2 -3 -2 0 +2 +1 0 -1 -3 -1 +1 +3 +2 +1 -4 -2 0 +2 +2 +1 -5 -3 -1 +1 +3 +2 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0 G A T T A C C A G A T A C T A -1 -2 -3 -4 -5 -6 -7 -1 +1 0 -1 -2 -3 -4 -5 -2 0 +2 +1 0 -1 -2 -3 -3 -1 +1 +3 +2 +1 0 -1 -4 -2 0 +2 +2 +1 +2 +1 -5 -3 -1 +1 +3 +2 +1 +3 -6 -4 -2 0 +2 +4 +3 +2 -7 -5 -3 -1 +1 +3 +3 +2 -8 -6 -4 -2 0 +2 +2 +4 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy Cofanie się do tyłu i wybór optymalnej ścieżki i dopasowania. 0 G A T T A C C A G A T A C T A -1 -2 -3 -4 -5 -6 -7 -1 +1 0 -1 -2 -3 -4 -5 -2 0 +2 +1 0 -1 -2 -3 -3 -1 +1 +3 +2 +1 0 -1 -4 -2 0 +2 +2 +1 +2 +1 -5 -3 -1 +1 +3 +2 +1 +3 -6 -4 -2 0 +2 +4 +3 +2 -7 -5 -3 -1 +1 +3 +3 +2 -8 -6 -4 -2 0 +2 +2 +4 Programowanie dynamiczne – dopasowanie jako ścieżka w macierzy G A T A C T A Uzyskane dopasowanie G A - T A CT A G A T T A CC A G A T T A C C A dopasowanie globalne i lokalne dopasowanie globalne (Needleman & Wunsch, 1970) – przyrównuje sekwencje na całej długości; wykorzystuje tak dużo znaków, jak to jest tylko możliwe. dopasowanie lokalne (Smith & Waterman, 1981) – przyrównuje fragmenty sekwencji, które wykazują największe podobieństwo; poszukuje najlepiej pasujących regionów; znajduje regiony konserwowane. Gdy obliczana wartość punktacji w macierzy jest mniejsza od zera, to wartość ta jest ustawiana na zero, a dopasowanie ulega zakończeniu do tego miejsca i rozpoczynany jest nowe` dopasowanie od nowego miejsca Optimalne dopasowanie globalne Optymal ne dopasowanie lolalne LGPSSKQTGKGS-SRIWDN | | ||| | | LN-ITKSAGKGAIMRLGDA sekwencje o podobnej długości, blisko spokrewnione -------TGKG-------||| -------AGKG-------- sekwencje o różnych długościach, posiadające regiony i domeny zachowane, podobne tylko w niektórych obszarach System punktacji Prosty system punktacji: match: +1 +1 mismatch: gap: -1 -1 0 -1 Zaawansowany system punktacji (nadawanie różnych wag dla niedopasowań i przerw w zależnosci od ich długości): Macierze podstawień aminokwasów (PAM, BLOSUM) Macierze podstawień nukleotydów System punktacji dla przerw: gap penalties, affine gap penalty Typowe systemy punktacji z sekwencje DNA • • • • Match = +1 Mismatch = -3 Gap penalty = -5 Gap extension penalty = -2 z sekwencje białkowe • Macierz Blossum62 • Gap open penalty = -11 • Gap extension = -1 Istotność dopasowania Czy punktacja dopasowanie jest znacząco większa od punktacji oczekiwanej dla dopasowania losowych sekwencji o tej samej długości i składzie? Tworzenie metodą Monte Carlo losowych(-ej) sekwencji (o tej samej długości i składzie co rzeczywiste). Przyrównanie losowych(-ej) sekwencji (powtórzenie 100-1000 razy) przy tych samych parametrach. Określenie rozkładu punktacji, średniej i odchylenie standardowego (SD). Wyliczenie Z-score: Z = (scoreobs – scoreran)/SDran 3>Z 3<Z<6 Z>6 – brak homologii – istnieje homologia – silna homologia Rozkład „score-ów” nie jest normalny i dlatego nie można przekształcić Z-score na prawdopodobieństwo. Istotność dopasowania Dla dopasowań lokalnych rozkład maksymalnych scorów dopasowania dla sekwencji losowych przyjmuje rozkład wartości ekstremalnych (extreme values distribution)(Karlin i Altschul 1990). Log p(S>=S’) S’ Wykres zależności logarytmu ułamka dopasowań z punktacją S równą lub większą od wartości punktacji S’ Określenie E-value – Oczekiwana liczba przypadkowych dopasowań z punktacją większą niż obserwowana E=Kmn⋅e−λS Oczekiwana (wg rozkładu prawdopodobieństwa) liczba dopasowań z punktacją równą przynajmniej S Bit score- znormalizowana punktacja uwzględniająca warunki jego naliczania i przyjęte systemy punktacji (parametry lambda i K) λS −ln K S'= ln2 E=mn 2 −S' Prawdopodobieństwo znalezienia przynajmniej 1 dopasowania o punktacji >=S −E p=1−e Jeżeli spodziewamy się znaleźć przynajmniej 3 dopasowania o punktacji >= S, to prawdopodobieństwo tego że znajdziemy co najmniej jedno wynosi 0,95. Programy z grupy BLAST posługują się wartością E zamiast bezpośrednim prawdopodobieństwem ze względu na łatwiejsze rozróżnienie Istotność dopasowania alignment significance Łatwiej oszacować istotność statystyczną Trudniej ocenić istotność biologiczną