HK07 – Les 2
Sequentiealignering
Yves Moreau 3de jr. Burg. Ir. Elektrotechniek Dataverwerking & Automatisatie
Practische regelingen
n Cursus
n Transparanten
n Gedetailleerde lijst van hoofdstukken en aanvullende artikels
n Oefenzitting
n Afgeven van een kort verslag op het einde van iedere zitting
n Les 1 : Essential Cell Biology
Overzicht
n Aligneren van twee sequenties
n DNA n Proteïnen n Similariteit vs. homologie n Similariteit n Homologie n Orthologie n Paralogie
n Elementen van een alignering n Dynamisch programmeren
Overzicht
n Globale alignering n Needleman-Wunsch algoritme n Lokale alignering n Smith-Waterman algoritme n Affiene gapkost n Substitutiematrices n PAM n BLOSUM n Gapkost n Significantieberekening n BLASTDNA
n DNA helix n Complementaire strengen (A-T, G-C) n Georienteerd van 5’ naar 3’Proteïne
n Groot polymeer op basis van 20 aminozuren F L I M V S P T A Y H N D Q K E C R S W G REvolutie van sequentiedatabanken
n Genbank n SWISSProt
Moleculaire evolutie
n Genomen evolueren door imperfecte replicatie en
natuurlijke selectie
Similariteit vs. homologie
n Sequenties zijn similair als ze voldoende gelijkenis vertonen op
sequentieniveau (DNA, proteïne, …)
n Similariteit kan voortvloeien uit
n Homologie
n Convergentie (functionele bepalingen)
n Toeval
n Sequenties zijn homoloog als ze stammen uit een
gemeenschappelijke voorouder
n Homologe sequenties zijn paraloog als hun verschillen voortvloeien uit
een genduplicatie
n Homologe sequenties zijn ortholoog als hun verschillen niet gerelateerd
Orthologie vs. paralogie
δ-globin - hu man β-globin - human β-globin - mouse β-globin -ch icken leghemoglob in - lupin α-globin - ch imp α-globin -mouse myog lobin -wha lePhylogenie
n Relaties tussen genen of proteïnen kunnen worden afgeleid op
basis van hun sequentie
Homologie voor structuur- en
functievoorspelling
n Homologe proteïnen hebben gelijkaardige structuren
n Homologe proteïnen hebben potentieel gelijkaardige functies
Homologie voor voorspelling op het DNA
n Geconserveerde gebieden vloeien voort uit selectiedruk
en zijn dus functioneel belangrijk
n Genen
n Regulatiegebieden
n Comparatieve genomica
n Genen kunnen voorspeld worden door de vergelijking
van genomen op geschikte evolutieafstand (bvb., muis en mens)
Elementen van een alignering
n Type van alignering
n DNA vs. proteïne
n Paarsgewijs vs. meervoudige alignering
n Globale alignering
n Lokale alignering
n Scoringsmodel voor aligneringen
n Substituties
n Gaps (inserties, deleties)
n Substitutiematrix en gapkost n Algoritme n Dynamisch programmeren n Heuristiek n Significantieberekening
HEAGAWGHE-E
--P-AW-HEAE
Globale alignering
x y
Globale alignering
n Alignering van ‘human alpha globin’ tegen ‘human beta globin’, ‘lupin
leghemoglobin’ en ‘glutathionine S-transferase homolog F11G11.2’ (‘+’ voor goede substituties)
HBA_HUMAN GSAQVKGHGKKVADALTNAVAHVDDMPNALSALSDLHAHKL G+ +VK+HGKKV A+++++AH+D++ +++++LS+LH KL HBB_HUMAN GNPKVKAHGKKVLGAFSDGLAHLDNLKGTFATLSELHCDKL HBA_HUMAN GSAQVKGHGKKVADALTNAVAHV---D--DMPNALSALSDLHAHKL ++ ++++H+ KV + +A ++ +L+ L+++H+ K LGB2_LUPLU NNPEFQAHAGKVFKLVYEAAIQLQVTGVVVTDATLKNLGSVHVSKG HBA_HUMAN GSAQVKGHGKKVADALTNAVAHVDDMPNALSALSD----LHAHKL GS+ + G + +D L ++ H+ D+ A +AL D ++AH+ F11G11.2 GSGYLVGDSLTFVDLL--VAQHTADLLAANAALLDEFPQFKAHQE Sterke homologie
Lage similariteit / structurele homologie
Lokale alignering
x y
Substitutiematrix en gapkost
n Het aligneren van twee residus kan meer of minder waarschijnlijk zijn n Om de kwaliteit van een alignering te berekenen, brengt het aligneren
van twee residues een winst of kost met zich mee
n Substitutiematrix
= BLOSUM50
n Gaps hebben ook een kost
……… … … … … … … … ……… 7 -3 0 0 1 -1 Q ……… -3 13 -4 -2 -4 -1 C ……… 0 -4 8 2 -2 -2 D ……… 0 -2 2 7 -1 -1 N ……… 1 -4 -2 -1 7 -2 R ……… -1 -1 -2 -1 -2 5 A EGHILKMFPSTWYV Q C D N R A HEAGAWGHE-E --P-AW-HEAE BLOSUM50 substitutiematrix
Substitutiematrix voor DNA
n Standard 5 -4 -4 -4 T -4 5 -4 -4 G -4 -4 5 -4 C -4 -4 -4 5 A T G C ADynamisch programmeren
n Aligneren is het vinden van het minimum-kost/maximum-winst pad
door de kosttabel = DYNAMISCH PROGRAMMEREN
n Gapkost = -8 -8 -8 -8 -8 -8 -8 -8 0 * -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 * 6 -1 6 0 -3 -1 -1 E 6 -1 6 0 -3 -1 -1 E 0 -2 0 10 -3 -2 -2 H -3 -3 -1 -3 -1 6 0 E 0 -3 5 0 5 -1 -2 A -3 -3 -1 -3 -1 6 0 E -2 -3 -2 -2 -2 0 10 H -3 15 -3 -3 -3 -3 -3 W 0 -3 5 0 5 -1 -2 A -2 -4 -1 -2 -1 -1 -2 P G W A G A E H HEAGAWGHE-E --P-AW-HEAE -8 -8 -8 -8 -8
Dynamisch programmeren
S1 S2 S3 S4 S5 S7 S6 S8 5 7 3 4 2 5 2 6 4 3 5 3 5 Kortste pad van S1 naar S8Kortste pad van S1 naar S5 Kortste pad van S5 naar S8
n Optimaliteitsprincipe van Belman
Globale alignering
n Needleman-Wunsch algoritme
n Progressief invullen van een tabel F(i,j) (!!! kolom, rij) die de
maximum winst bijhoudt voor de alignering van sequentie x tot xi met sequentie y tot yj
n Substitutie matrix s(x, y) en gapkost d n Recurrentie
I G A xi A I G A xi G A xi
-L G V yj G V yj - - S L G V yj
{ F(i-1,j-1) + s(xi, yj) substitutie
F(i,j) = max { F(i-1,j) – d deletie
{ F(i,j-1) – d insertie
-56 -48 -40 -32 -24 -16 -8 0 * -80 -72 -64 -56 -48 -40 -32 -24 -16 -8 * 1 2 -5 -19 -37 -60 -73 E -9 -5 3 -11 -29 -52 -65 E -12 -15 -7 -3 -21 -44 -57 H -15 -14 -12 -6 -11 -24 -38 E -12 -12 -11 -11 -3 -16 -30 A -15 -12 -9 -16 -16 -8 -22 E -7 -13 -9 -8 -13 -18 -14 H -13 -5 -15 -7 -6 -11 -18 W -36 -28 -20 -12 -4 -3 -10 A -49 -42 -33 -25 -17 -9 -2 P G W A G A E H F(i,j) F(i-1,j) F(i,j-1) F(i-1,j-1) s(xi, yj) – d – d
Start links boven
Vul progressief in met recurrentie Gebruik traceback pointers
{ F(i-1,j-1) + s(xi, yj)
F(i,j) = max { F(i-1,j) – d { F(i,j-1) – d
Lokale alignering
n Smith-Waterman algoritme
n Beste alignering tussen subsequenties van x en y
n Als de huidige alignering een negatieve score heeft, is
het beter een nieuwe alignering te starten
{ 0 restart
{ F(i-1,j-1) + s(xi, yj) substitutie
F(i,j) = max { F(i-1,j) – d deletie
{ F(i,j-1) – d insertie
6 14 22 18 12 0 0 0 2 10 0 H 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 * 26 27 -19 0 0 0 E 16 20 28 0 0 0 E 4 10 18 4 0 0 H 0 4 12 18 13 6 0 E 4 0 5 13 21 8 0 A 10 4 0 0 8 16 2 E 12 20 0 2 0 0 0 W 0 0 5 0 5 0 0 A 0 0 0 0 0 0 0 P G W A G A E H AWGHE AW-HE
Start links boven
Vul progressief in met recurrentie Traceback vanaf de hoogste score en stop op nul
Alignering met affiene gapkost
n Lineaire kost voor de gap is vaak te streng
n Willekeurige gapkost verhoogt complexiteit van O(n2)
naar O(n3) (lookbacks op grote afstand)
n O(n2) complexiteit voor affiene gapkost = – d – (g – 1)e
n Het is dan nodig om drie variabelen M, Ix, Iy (match,
deletie, insertie) te tracken in plaats van enkel F
I G A xi A I G A xi G A xi
-L G V yj G V yj - - S L G V yj
-n – d – e kleiner dan kleinste substitutiekost om te vermijden dat een deletie direct door een insertie gevolgd wordt
n Alignering gevonden door het maximum over de drie variabelen te
tracken
Recurrentie
{ M(i-1,j-1) + s(xi, yj)
M(i,j) = max { Ix(i-1,j-1) + s(xi, yj) { Iy(i-1,j-1) + s(xi, yj) { M(i-1,j-1) – d
Ix(i,j) = max { Ix(i-1,j-1) – e { M(i-1,j-1) – d
Finite state automaton
n Voorstelling van het algoritme als een finite state automaton
M (+1,+1) – d – d s(xi, yj) s(xi, yj) s(xi, yj) Iy (0,+1) – e Ix (+1,0) – e
Significantieberekening
n Laten we kijken naar de distributie van N
aligneringscores S t.o.v. random sequenties
n Voor een ungapped alignering is de score van een
match de som van veel gelijkaardige random bijdragen en volgt daarom een normale distributie
n Voor een normale distributie volgt de distributie van het
maximum MN van een reeks van N random variabelen de extreme value distribution (EVD)
Significantieberekening
n Voor ungapped aligneringen heeft (hoewel de random
variabelen niet normaal verdeeld zijn) de EVD de vorm
P(S<=x) = exp(Kmne−λS)
met n lengte van de query, m lengte van de databank
n Verwachte score van een random sequentie met
probabiliteit Pi voor de aminozuren moet negatief zijn : – ∑i,j PiPjs(i,j)<0
n Ungapped alignering: parameters afgeleid uit Pi and s(i,j) n Gapped aligneringen: parameters geschat via regressie n Een alignering is relevant als de probabiliteit voldoende
Normalizatie van scores
n Verschillende substitutiematrices geven verschillende
scaleringen van de scores
n Met Pi and s(i,j) kan de score S van een ungapped
alignering genormalizeerd worden via de twee afgeleide parameters λ and K :
Lengtecorrectie
n Als de sequenties in de databank van verschillende
lengte zijn, zullen de langere sequenties hogere scores krijgen in het algemeen
n Dit kan verbeterd worden door de gemiddelde score als
functie van het logaritme van de lengte te berekenen en een lineaire functie hierdoor te fitten en af te trekken
Substitutiematrices
n Hoe een redelijke substitutiematrix kiezen? n Kijken naar een verzameling van bevestigde
aligneringen (met gaps) en de aminozuurfrequenties qa, de substitutiefrequenties pab, en de gapfunctie f(g)
berekenen
n Aannemelijkheidsmodel
n Random sequenties : P(x,y|R) = ΠiqxiΠjqyj n Alignering : P(x,y|M) = Πipxixj
n Odds ratios : P(x,y|M)/P(x,y|R) = Πipxixj/(ΠiqxiΠjqyj)
n Log-odds score : S(x,y) = Σis(xi,yi) with s(a,b) = log(pab/qaqb)
PAM matrix
n Point Accepted Mutation matrix n Problemen
n Aligneringen zijn niet onafhankelijk voor gerelateerde proteïnen
n Verschillende aligneringen komen overeen met verschillende
evolutietijden
n PAM1 matrix
n Boom van proteïnefamilies
n Schat ancestrale sequenties
n Schat mutaties op korte evolutieafstand
n Scalering naar een substitutiematrix
n 1% Point Accepted Mutation (PAM1)
n PAM250 is 250% Point Accepted Mutations (~20% similariteit) =
BLOSUM matrix
n BLOCKS SUbstitution Matrix
n PAM werkt minder goed op grotere evolutieafstanden n Ungapped aligneringen van proteïnefamilies uit de
BLOCKS databank
n Groepering van de sequenties met meer dan L%
identieke aminozuren (bvb., BLOSUM62)
n Substitutiefrequentie van aminozuren tussen de
verschillende groepen (met verbetering i.f.v. de
groepsgrootte) wordt gebruikt om de substitutiematrix af te leiden
BLAST
n Voor heel grote databanken is Smith-Waterman lokale
alignering te traag
n Basic Local Alignment Search Tool (BLAST) is een snel
heuristiek algoritme voor lokale alignering (http://www.ncbi.nlm.nih.gov/Entrez)
n BLASTP – proteïnequery op proteïnedatabank
n BLASTN – nucleotidequery op nucleotidedatabank
n BLASTX – vertaalde nucleotidequery op proteïnedatabank
(vertaling naar de zes leesramen)
n TBLASTN – proteïnequery op vertaalde nucleotidedatabank
BLASTP
n Stap 1 : Vind alle woorden van lengte w (bvb., w=3)
waarvoor er een match is in de querysequentie met
score groter of gelijk aan T (bvb., T=11) met de gekozen substitutiematrix (bvb., BLOSUM62 met gapkost 10+g)
n Stap 2 : Gebruik een finite state automaton om alle
matches met de woordlijst te vinden in de databank (hits)
BLASTP
n Stap 3 : Check voor welke hits er een andere hit zonder
overlap bestaat binnen een afstand van A (bvb., A=40) (de afstand moet dezelfde zijn op de query als op de target) (two-hits)
n Stap 4 : Breid de linkse hit van de two-hits uit in beide
richtingen via ungapped alignering ; stop de uitbreiding wanneer de score met Xg (bvb., Xg=40) valt onder de
BLASTP
n Stap 5 : Breid de HSPs met genormalizeerde score
boven Sg (Sg =22 bits) via gapped alignering en stop de uitbreiding wanneer de score met Xg (bvb., Xg=40) valt onder de beste score tot nu toe ; selecteer de beste gapped lokale alignering
n Stap 6 : Bereken de significantie van de aligneringen ;
voor de significante aligneringen herhaal de gapped
aligneringen met een hogere dropoff parameter Xg voor meer nauwkeurigheid
BLASTP
Query Target Two-hits + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Hits Lokale alignering0.34 36 Running time 197 198 P20705 H+-transport ATP synthase
81 83 P14942 Glutathione transferase 211 211 P10635 Cytochrome P450 261 262 P10318 Histocompatibility antigen 137 138 P07327 Alcohol dehydrogenase 53 53 P05013 Interferon alpha 128 128 P03435 Hemagglutinin 28 28 P02232 Globin 252 255 P01111 Ras 108 108 P01008 Serine protease inhibitor
275 275 P00762 Serine protease BLAST (# matches) Smith-Waterman Query (SWISS-PROT) Protein family