Heuris'c)search:)FastA)and)BLAST ) COMPSCI)260))Spring)2016 ) - - PowerPoint PPT Presentation

heuris c search fasta and blast
SMART_READER_LITE
LIVE PREVIEW

Heuris'c)search:)FastA)and)BLAST ) COMPSCI)260))Spring)2016 ) - - PowerPoint PPT Presentation

Heuris'c)search:)FastA)and)BLAST ) COMPSCI)260))Spring)2016 ) Previous)lectures) Global)alignment) Local)alignment) Dynamic)programming)algorithms:)O( mn ))'me) Database)searches) O( mn ))algorithms)are)very)efficient)


slide-1
SLIDE 1

Heuris'c)search:)FastA)and)BLAST

)

COMPSCI)260)–)Spring)2016)

slide-2
SLIDE 2

Previous)lectures)

  • Global)alignment)
  • Local)alignment)
  • Dynamic)programming)algorithms:)O(mn))'me)
slide-3
SLIDE 3

Database)searches)

  • O(mn))algorithms)are)very)efficient)
  • But)this)is)too)slow)for)searching)large)databases)of)DNA)or)

protein)sequences)) )

slide-4
SLIDE 4

NCBI)genomic)data)

slide-5
SLIDE 5

Database)searches)

  • INPUT:)

– Database) – Query:))RGIKW)

  • OUTPUT:))

– sequences)similar)to)query))

  • What)does)“similar”)mean)?))
slide-6
SLIDE 6

Heuris'cs)

  • Heuris'c)methods)can)be)used)to)perform)fast)approxima'ons)

) – Tradeoff:)accuracy)of)solu'on)vs.)speed)

  • We)have)seen)another)tradeoff:)

– Speed)vs.)space)

  • Popular)heuris'c)algorithms)are)the)result)of)our)willingness)for

)

  • ur)solu'on)to)loose)accuracy)in)return)for)a)speedup)
  • Loss)of)accuracy:)false)posi'ves)or)(more)commonly))false)

nega'ves.))

slide-7
SLIDE 7

Heuris'cs)

  • False)posi'ves)represent)results)returned)by)your)algorithm)

as)successful)(in)our)case,)as)high)scoring)alignments))that) really)aren’t)))

  • False)nega'ves)are)just)the)opposite:)really)high)scoring)

alignments)that)get)overlooked)by)the)algorithm)

  • Trade`off:)sensi'vity)vs.)selec'vity)
slide-8
SLIDE 8

The)history)of)the)alignment)problem))

Global)Alignment)) Needleman`Wunsch)algorithm)(linear)gap)) 1972) Global)Alignment) Affine)gap)(Gotoh’s)solu'on)in)quadra'c)'me)) 1980) Exact)Local)Alignment) Smith`Waterman)algorithm) 1981) Heuris'c)Local) Alignment) FastN)+)FastP)=)FastA) 1985)) Heuris'c)Local) Alignment) BLAST)1.0:)Basic)Local)Alignment)Search)Tool)) 1990) Heuris'c)Local) Alignment) BLAST)2.0:)Gapped)BLAST)) 1997)

run much faster, at the expense of possibly missing some significant hits (i.e. getting false negatives) due to the heuristics employed

slide-9
SLIDE 9

Heuris'c)local)alignment))

  • Heuris'c)local)alignment)algorithms)are)usually)seed$and$extend)

approaches:)small)exact)matches)are)found,)which)are)then) extended)to)obtain)long)inexact)matches) )

  • Preprocessing:)for)every)W`mer))

(e.g.)W=3),)list)every)loca'on)in)) the)database)where)it)occurs) – W`mer:)a)string)of)length)W)

  • Query:))

– Generate)W`mers)and)look)) them)up)in)the)database)) – Process)the)results)to)obtain) longer,)inexact)matches))

slide-10
SLIDE 10

FastA)

  • FastA)(which)stands)for)Fast`All))is)a)combina'on)of)FastN)

(nucleo'de))and)FastP)(protein)))

  • It)was)the)first)good)heuris'c)local)alignment)program,)and)it)

was)capable)of)finding) – DNA:DNA) – DNA:protein)(by)inferring)transla'on))and)) – protein:protein)alignments)

  • The)original)paper:)

)David)J.)Lipman)and)William)R.)Pearson)“Rapid)and)sensi've) protein)similarity)searches”)(Science'1985))))

slide-11
SLIDE 11

FastA)paper)`)Abstract)

An algorithm was developed which facilitates the search for similarities between newly determined amino acid sequences and sequences already available in databases. Because of the algorithm's efficiency on many microcomputers, sensitive protein database searches may now become a routine procedure for molecular biologists. The method efficiently identifies regions of similar sequence and then scores the aligned identical and differing residues in those regions by means of an amino acid replaceability

  • matrix. This matrix increases sensitivity by giving high scores to

those amino acid replacements which occur frequently in

  • evolution. The algorithm has been implemented in a computer

program designed to search protein databases very rapidly. For example, comparison of a 200-amino-acid sequence to the 500,000 residues in the National Biomedical Research Foundation library would take less than 2 minutes on a minicomputer, and less than 10 minutes on a microcomputer (IBM PC).

slide-12
SLIDE 12

FastA)

  • General)idea:)

– Choose)regions)of)the)two)sequences)that)look)promising) (have)some)degree)of)similarity))) – Compute)local)alignment)using)dynamic)programming)in) these)regions))

  • Assump'on:)a)good)alignment)probably)has)some)exact)

matches.))

  • The)algorithm)treats)these)exact)matches)as)anchors)or)seeds)
  • f)a)larger)alignment)with)some)gaps))
slide-13
SLIDE 13

FastA)

  • Assump'on:)a)good)alignment)probably)has)some)exact)

matches.))

  • Is)this)true?)
  • Two)sequences)of)9)aa)each,)with)7)iden''es))

)There)must)be)a)stretch)of)3)aa)perfectly)conserved))

  • Two)sequences)of)9)aa)with)at)most)1)mismatch)

)There)must)be)a)stretch)of)4)aa)perfectly)conserved))

  • More)generally:)pigeonhole)principle))

)If)you)have)2)pigeons)and)3)holes,)there)) must)be)at)least)one)hole)with)no)pigeon))

slide-14
SLIDE 14

FastA)–)Step)1)

  • The)algorithm)begins)by)looking)for)occurrences)of)exact)

matches)of)length)k)between)the)two)sequences)

  • These)are)referred)to)as)k>tuples)and)their)length)is)set)by)the)

FastA)parameter)ktup))

  • This)search)is)a)rela'vely)fast)one))
slide-15
SLIDE 15

FastA)–)Step)2)

  • Score)diagonals)with)k`word)matches,)to)iden'fy)the)10)best)

diagonals))

  • Construct)an)(m)×)n))grid)and)place)a)dot)at)every)(i,)j))that)

begins)a)k`tuple)

k=2

  • The)end)result)will)be)a)table)with)some)runs)of)diagonal)dots)

)

  • This)table)is)called)a)dot)matrix)
  • Why)diagonal?))

– Consider)the)case)where)k)=)2)and)we)have)a)match)of)5)characters)in)a) row)star'ng)at)posi'on)(i,)j).)Not)only)will)there)be)a)dot)in)the)(i,)j)) posi'on,)but)also)in)the)(i)+)1,)j)+)1),)(i + 2, j + 2) and)(i + 3, j + 3) posi'ons.)This)will)results)in)a)run)of)4)diagonal)dots.)

slide-16
SLIDE 16

Dot)matrix,)k=1)(DNA)sequences)of)size)1875)and)2013)bp))

slide-17
SLIDE 17

Dot)matrix,)k=4)(DNA)sequences)of)size)1875)and)2013)bp))

slide-18
SLIDE 18

Dot)matrix,)k=8)(DNA)sequences)of)size)1875)and)2013)bp))

slide-19
SLIDE 19

Dot)matrix,)k=16)(DNA)sequences)of)size)1875)and)2013)bp))

slide-20
SLIDE 20

FastA)–)Step)2)

  • Score)diagonals)with)k`word)matches,)to)iden'fy)the)10)best)

diagonals))

  • Construct)an)(m)×)n))grid)and)place)a)dot)at)every)(i,)j))that)

begins)a)k`tuple)

k=2

  • The)con'guous)diagonal)runs)of)dots)in)the)dot)plot)represent)

exact)matches,)so)we)want)to)find)long)diagonal)runs)

  • It)can)be)done)without)genera'ng)the)en're)matrix)
  • We)want)to)this)very)efficiently)('me)and)space))
slide-21
SLIDE 21
  • 1. Iden'fy)common)k`words)between)X)and)Y))
  • 2. Score)diagonals)with)k`word)matches,)to)iden'fy)the)10)best)

diagonals))

  • 3. Rescore)ini'al)regions)with)a)subs'tu'on)matrix))

– Each)of)the)ten)diagonal)runs)with)highest)scores) (iden'fied)in)step)2))are)further)processed) – Within)each)of)these)diagonal)runs,)an)op'mal)local) alignment)is)computed)using)a)subs'tu'on)matrix) – These)alignments)are)called)) ini(al'regions)) – The)score)of)the)best)sub`alignment)is)found)in)this)phase) is)reported)as)init1))

FastA)–)Outline)

slide-22
SLIDE 22
  • 1. Iden'fy)common)k`words)between)X)and)Y))
  • 2. Score)diagonals)with)k`word)matches,)to)iden'fy)the)10)best)

diagonals))

  • 3. Rescore)ini'al)regions)with)a)subs'tu'on)matrix))
  • 4. Join)ini'al)regions)using)gaps)

FastA)–)Outline)

slide-23
SLIDE 23

FastA)–)Step)4:)Join)ini'al)regions)using)gaps))

  • Two)offset)diagonals)can)be)joined)with)a)gap,)if)the)resul'ng)

alignment)has)a)higher)score))

– Separate)gap)open)and)extension)are)used)(affine)gap)) – Idea:)find)the)best`scoring)combina'on)of)diagonals) – The)score)of)this)alignment)is)reported)as)initn)) – initn)is)used)to)rank)the)library)sequences)

slide-24
SLIDE 24
  • 1. Iden'fy)common)k`words)between)X)and)Y))
  • 2. Score)diagonals)with)k`word)matches,)to)iden'fy)the)10)best)

diagonals))

  • 3. Rescore)ini'al)regions)with)a)subs'tu'on)score)matrix))
  • 4. Join)ini'al)regions)using)gaps)
  • 5. Perform)dynamic)programming)to)find)the)final)alignments))

FastA)–)Outline)

slide-25
SLIDE 25

FastA)–)Step)5:)Local)alignment)in)the)highest`scoring)region)

  • Last)step)of)FastA:)perform)local)alignment)using)dynamic)

programming)around)the)highest`scoring)region)

highest`scoring)region)

  • Do)we)fill)in)the)en're)DP)matrix?)(Smith`Waterman))
  • NO,)we)can)apply)banded'Smith`Waterman))

)

slide-26
SLIDE 26

FastA)–)Step)5:)Local)alignment)in)the)highest`scoring)region)

  • Banded'Smith`Waterman))
  • Idea:)A)high)quality)alignment)will)stay)close)to)the)diagonal)

– If)we)are)only)interested)in)high)quality)alignments,)we)can ) skip)filling)in)cells)that)can't)possibly)lead)to)a)high)quality) alignment)

  • Region)to)be)aligned)covers)±w))

characters)from)the)highest`)scoring) diagonals))

  • With)long)sequences,)this)region)is))

typically)very)small)compared)to)the)) whole)n)x)m)matrix)

  • The)score)of)the)resul'ng)alignment))

is)reported)as)opt'

Dynamic)programming)matrix) is)filled)only)for)the)green)region))

slide-27
SLIDE 27

Proper'es)of)FastA))

  • Fast)compared)to)local)alignment)

using)dynamic)programming)only)) – Only)a)narrow)region)of)the)full) matrix)is)aligned)

  • For)DNA)sequence)comparisons,)

the)ktup'parameter)can)range)from ) 1)to)6)

  • Increasing)ktup)decreases)the)

number)of)hits)) – increases)specificity)(the) method)does)not)produce)many ) incorrect)results)) – decreases)sensi'vity)(produces) fewer)of)the)correct)results))

slide-28
SLIDE 28
  • FastA)looks)for)ini'al)exact)

matches)to)the)query)sequence) – But)two)proteins)can)have)very) different)amino)acid)sequences) and)s'll)be)biologically)similar)) – This)may)lead)to)a)lack)of) sensi'vity)for)diverged) sequences)

  • FastA)determines)a)highest))

scoring)region,)not'all)high)scoring) alignments)between)two) sequences.)Hence,)it)may)miss) instances)of)repeats)or)mul'ple) domains)shared)by)two)proteins)

Proper'es)of)FastA))

slide-29
SLIDE 29

The)history)of)the)alignment)problem))

Global)Alignment)) Needleman`Wunsch)algorithm)(linear)gap)) 1972) Global)Alignment) Affine)gap)(Gotoh’s)solu'on)in)quadra'c)'me)) 1980) Exact)Local)Alignment) Smith`Waterman)algorithm) 1981) Heuris'c)Local) Alignment) FastN)+)FastP)=)FastA) 1985)) Heuris'c)Local) Alignment) BLAST)1.0:)Basic)Local)Alignment)Search)Tool)) 1990) Heuris'c)Local) Alignment) BLAST)2.0:)Gapped)BLAST)) 1997)

run much faster, at the expense of possibly missing some significant hits (i.e. getting false negatives) due to the heuristics employed

slide-30
SLIDE 30

BLAST)`)Basic)Local)Alignment)Search)Tool))

  • Altschul)SF,)Gish)W,)Miller)W),Myers)EW,)Lipman)DJ,)“Basic)local)

alignment)search)tool”)(J'of'Molecular'Biology,)1990))

  • Perhaps)the)most)widely)used)bioinforma'cs)tool)
  • It)is)an)alignment)heuris'c)that)determines)local)alignments)

between)a)query)and)a)database)

  • It)uses)an)approxima'on)of)the)Smith`Waterman)algorithm))
  • BLAST)consists)of)two)components:))

– search)algorithm)) – computa'on)of)the)sta's'cal)significance)of)solu'ons)

  • Speed)is)achieved)by)using)a)procedure)that)typically)finds)“most”)

matches)with)scores)>)S) )

BLAST paper is the most cited paper of its decade, with more than 20,000 citations.

slide-31
SLIDE 31

BLAST)`)Basic)Local)Alignment)Search)Tool))

  • BLAST)1.0)only)reports)ungapped)alignments)
  • Assump'ons:)

– all)the)user)was)probably)interested)in)were)ungapped) alignments) – if)the)user)wanted)to)find)an)alignment)with)gaps,)the) whole)alignment)could)be)s'tched)together)using)pieces)of ) the)ungapped)alignments)returned)by)BLAST)1.0)

  • However,)we)know)that)it)is)perfectly)valid)to)want)the)

algorithm)to)return)gapped)alignments))

  • It)is)osen)not)feasible)to)reconstruct)a)gapped)alignment)

from)a)series)of)ungapped)alignments)

  • Thus,)BLAST)2.0)was)introduced)in)a)paper)co`authored)by)

many)of)the)original)BLAST)1.0)authors)

slide-32
SLIDE 32

Idea:)Seed)and)Extend))

  • Homologous)sequences)are)likely)to)contain)a)short)high)

scoring)word)pair,)or)seed)

  • BLAST)finds)high)scoring)seeds)and)tries)to)extend)them)to)

compute)maximal)high)scoring)segment)pairs)(HSPs))

slide-33
SLIDE 33

BLAST)–)Step)1:)Preprocess)query)

  • Split)query)into)overlapping)words)of)length)W))

– The)length)of)the)query)word,)W,)is)3)for)protein)sequences)

  • Find)the)neighborhood)for)each)word,)for)a)similarity)threshold)T)

What are these scores?

slide-34
SLIDE 34

The)threshold)T)is)based)on)a)subs'tu'on)matrix )

PQG) PMG)))

BLOSUM62

7+0+6=13)

slide-35
SLIDE 35

BLAST)–)Step)1:)Preprocess)query)

  • Split)query)into)overlapping)words)of)length)W))

– The)length)of)the)query)word,)W,)is)3)for)protein)sequences)

  • Find)the)neighborhood)for)each)word,)for)a)similarity)threshold)T)

What are these scores?

slide-36
SLIDE 36

BLAST)–)Step2:)Construct)query)word)hash)table)

slide-37
SLIDE 37

BLAST)–)Step)3:)Database)scanning)

  • Iden'fy)all)exact)matches)of)W`mers)with)DB)sequences)
  • A)segment>pair)(s,t))(or)hit))consists)of)two)segments,)one)in)

the)query)and)one)in)the)database,)of)the)same)length)

slide-38
SLIDE 38

BLAST)–)Step)3:)Database)scanning)

Query: GSVEDTTGSQSLAALLNKCKTPQG PQG PEG PRG PKG PNG Neighborhood words Neighborhood score threshold (T=13) PDG PHG PMG PSQ PQA PQN 325 365 SLAALLNKCKTPQG 290 330 TLASVLDCTVTPMG +LA++L+ TP G R++ +W+ P+ D + ER + A etc... X 18 15 14 14 13 13 13 13 13 12 12 Query: Sbjct: Query word (W =3) QRLVNQWIKQPLMDKNRIEERLNLVEAFVEDAELRQTLQEDL QRLVNQWIKQPLMDKNRIEERLNLVEA SRMLKRWLHMPVRDTRVLLERQQTIGA

Segment pair, or seed (s, t)

slide-39
SLIDE 39

BLAST)–)Step)4:)Extend)seeds)to)HSP)

  • Each)such)seed)(s,)t'))is)extended)in)both)direc'ons)un'l)its)

score)cannot)be)increased))

  • All)extensions)with)score)≥)S)are)reported))
  • These)are)called)high`scoring)segment)pairs)(HSPs))
  • Originally)(in)BLAST1.0))the)extension)did)not)include)gaps.)

The)BLAST2.0)algorithm)allows)inser'on)of)gaps))

slide-40
SLIDE 40

BLAST)–)Step)5:)Evalua'on)

  • Evaluate)the)alignment)sta's'cally)
  • E>value:))the)number)of)HSPs)having)score)S)(or)higher))

expected)to)occur)by)chance)(given)the)database)))

  • Smaller)E`value)means)more)significant)score)
  • Big)E`value)corresponds)to)random)alignments)
  • P>value:)the)probability)that)an)HSP)with)score)S)(or)higher))is)

generated)by)chance)

slide-41
SLIDE 41

Assessing)the)significance)of)sequence)alignment)

  • We)want))to)evaluate)the)probability)that)a)score)between)

random)(unrelated))sequences)will)reach)the)score)found) between)the)two)sequences)on)interest)

  • What)is)the)distribu'on)of)scores)between)2)random)

sequences?)

slide-42
SLIDE 42
  • Karlin)and)Altschul)observed)that)in)the)framework)of)local)

alignments)without)gaps,)the)distribu'on)of)random) sequence)alignment)scores)follows)an)extreme)value) distribu'on)

Parameters that depend on the length and composition of the sequences, and

  • n the scoring

function

Assessing)the)significance)of)sequence)alignment)

slide-43
SLIDE 43

P`value)=)the)probability)of))

  • btaining)a)score)equal)to)or))

greater)than)x)by)chance)

Score A - significant Score B – not significant

Assessing)the)significance)of)sequence)alignment)

slide-44
SLIDE 44
  • P`value:))

– Probability)that)an)alignment)with)this)score)occurs)by) chance)in)a)database)of)size)N) – The)closer)the)P`value)is)towards)0,)the)beuer)the) alignment))

  • E`value:))

– Number)of)matches)with)this)score)one)can)expect)to)find) by)chance)in)a)database)of)size)N) – The)closer)the)E`value)is)towards)0,)the)beuer)the) alignment))

  • In)a)database)of)size)N:)P)x)N)=)E)

Assessing)the)significance)of)sequence)alignment)

slide-45
SLIDE 45
  • Local)alignment)without)gaps:)

– Extreme)Value)Distribu'on) – Theore'cal)work)of)Karlin)and)Altschul)

Assessing)the)significance)of)sequence)alignment)

  • Local)alignments)with)gaps:)

– Extreme)Value)Distribu'on)derived)from)empirical)studies)

slide-46
SLIDE 46

BLAST)parameters))

  • Larger)values)of)W)increases)the)number)of)neighborhood)

words,)but)decreases)the)number)of)chance)matches)in)the) database) – In)prac'ce,)W'=)12)for)DNA,)3)for)protein)sequences)

  • Larger)values)of)T)decrease)the)overall)execu'on)'me,)but)

increase)the)chance)of)missing)a)MSP)having)score)≥)S))

  • Larger)values)of)S)increase)the)specificity.)The)value)of)S)is)

affected)by)changes)in)the)expecta'on)value)parameter)

slide-47
SLIDE 47

BLAST)parameters))

  • The)more)filtering)we)do)the)less)work)we)end)up)having)

to)do)in)later)steps)of)the)algorithm)

  • However,)the)more)filtering)we)do)the)greater)our)

chances)of)having)false)nega'ves)

  • The)less)filtering)we)do)the)more)sequences)we)are)

forced)to)analyze)aser)the)filtering)step,)but)the)fewer) false)nega'ves)we)encounter))

slide-48
SLIDE 48

Very)similar)sequences))

slide-49
SLIDE 49

Quite)similar)sequences))

slide-50
SLIDE 50

Not)similar)sequences))

slide-51
SLIDE 51

Blast)versions))

Program Database Query BLASTN Nucleotide Nucleotide BLASTP Protein Protein BLASTX Protein

Nucleotide translated in to protein

TBLASTN

Nucleotide translated into protein

Protein TBLASTX

Nucleotide translated into protein Nucleotide translated into protein

slide-52
SLIDE 52

NCBI)Blast))