DAR Approximate string matching Casus: biological sequence alignment



Vergelijkbare documenten
Wie? Advanced Databases blok DB vs IR. Wat? Canonical application (DB) Canonical application (DB)

Bio-informatica Similariteit Searches. Peter De Rijk

Bioinformatica tentamen D2 voor 2MNW op maandag 30/05/2005 van 13:30-16:30 in Q105

Bioinformatica tentamen D1 voor 2MNW op woensdag 30 maart 2005 van uur in zaal Q105

Bio-informatica Similariteit. Peter De Rijk

Implementatie LIMS binnen afdeling Genetica van het Radboudumc. Ermanno Bosgoed

Bioinformatica tentamen D1 voor 2MNW, 3I, 3PHAR op vrijdag 30 maart 2007 van uur in zaal Q105

DNA practicum De modellenwereld van DNA

Mee-naar-huis-neem boodschappen dec. 2016

Afsluitende les. Leerlingenhandleiding. Proteomics voor de massa

De antwoorden op vragen 1 en 2, 3 en 4, en 5 t/m 8 graag op verschillende vellen schrijven. Vergeet ook niet op de 3 vellen je naam en studentnr.

Het menselijk genoom. Inleiding Medisch Technische Wetenschappen. Bioinformatica Deel 2. Gevouwen chromosoom. X chromosoom DNA.

Hetzelfde DNA in elke cel

AFO 113 Authoritybeheer

2 e SMT Workshop Moleculaire Typeringen spa typering en MLST

Afsluitende les. Leerlingenhandleiding. Wat voor eiwit ben jij? (Basis)

extra oefening algoritmiek - antwoorden

Molecular Pathology for Pathologists. Pr P. Pauwels

Vragen Genetica (Diederik de Bruijn) Omcirkel bij vraag 1 t/m 12 het juiste antwoord. Naam: Studentnummer:

LDA Topic Modeling. Informa5ekunde als hulpwetenschap. 9 maart 2015

Next Generation Sequencing voor moleculaire diagnostiek. Aniek O. de Graaf, PhD, EurClinChem Laboratory Hematology

Data Mining: similariteit en visuele data exploratie

Ranking database queries. Ranking in IR. Classic ranking in IR. Ranking in IR. Ranking in IR: score. Advanced Databases

Neanderthaler Genoom PROBUS 25 november Presentatie van Allan R. de Monchy

Tentamen Genetica Studentnr:

Les 10 : Aanmaken van een database (deel2).

ContentSearch. Deep dive

Bioinformatica en Systeembiologie (BIS)

Probabilistische modellen in de bio-informatica. Yves Moreau 3de jr. Burg. Ir. Elektrotechniek Dataverwerking & Automatisatie

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen

Subrapporten. 5.1 Inleiding

Databank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster

Het omzetten van een ER-diagram naar SQL

20 maart Prof. Dr. Katrien Verleye

Hand-out bij de oefen- en zelftoets-module bij hoofdstuk 7 van 'The Molecular Biology of the Cell', Alberts et al.

Informatievaardigheden Introductie EndNote

BRAF rondzending SKML 2012

Met een LightSwitch applicatie een OData service uit de Windows Azure Marketplace consumeren

Starten van de tool De tool wordt opgestart door een web browser te openen (bij voorkeur Google Chrome) en in de adresbalk te typen:

Van big data naar smart data. Stappenplan voor B2B leadgeneratie.

Artificial Intelligence in uw dagelijkse praktijk. Hilversum, 22 September 2016

High through put automatisering in de Genetica. Ermanno Bosgoed

Algoritmiek. 2 februari Introductie

Databases - Inleiding

Figuur 1. Representatie van de dubbele helix en de structuren van de verschillende basen.

Bio-informatica Boom constructie. Peter De Rijk

Examen structurele bioinformatica Naam:

Naar High Throughput DNA data analyse

SQL datadefinitietaal

DNA & eiwitsynthese Oefen- en zelftoetsmodule behorende bij hoofdstuk 16 en 17 van Campbell, 7 e druk December 2008

BIOLOGIE MOLECULAIRE GENETICA EIWITSYNTHESE VWO KLASSE 6

TENTAMEN BIOCHEMIE (8S135) Prof. Dr. Ir. L. Brunsveld :00 17:00 (totaal 100 punten) 6 opgaven in totaal (aangegeven tijd is indicatie)

Body of Knowledge and Skills (BoKS) van de opleidingen Bio-informatica / /

Informatie Systeem Ontwikkeling ISO 2R290

Inleiding Programmeren 2

Bio-informatica Genpredictie

Inleiding Programmeren 2

Waardelijsten. Vormen van waardelijsten.

Bio-informatica Sequentie Patronen. Peter De Rijk

1. Welk van de onderstaande DNA sequenties zijn mogelijke herkenning-sites voor restrictie-enzymen? c 5' GAATTC 3' c 5' GGGGCCCC 3' c 5' CTGCAG 3' 5'

Synthetische biologie in de praktijk. igem TU Eindhoven 2016

Information Retrieval.

Moleculaire diagnostiek

Leerlingenhandleiding

Oplossingen Datamining 2II15 Juni 2008

Demultiplexing reads FASTA format genome sequencing reads run

Temperatuur logger synchronisatie

Proteomics. Waarom DNA alleen niet genoeg is

Koppeling met een database

Genetische testen. Professor Martina Cornel and Professor Heather Skirton Gen-Equip Project.

HLA-B*27 diagnostiek: is sequentie analyse the way to go?

1 (~20 minuten; 20 punten)

Informatie & Databases

SQL Aantekeningen 3. Maarten de Rijke 22 mei 2003

Data Manipulatie. Query Talen. / Informatica

take home messages COIG Genoom& Genetica juni 2017 Clinical Genetics UMCG

ODS: Open Directory service. Wat is ODS?

Kunstmatige Intelligentie (AI) Hoofdstuk van Russell/Norvig = [RN] Genetische algoritmen. voorjaar 2016 College 11, 3 mei 2016

Grootste examentrainer en huiswerkbegeleider van Nederland. Biologie. Trainingsmateriaal. De slimste bijbaan van Nederland! lyceo.

Kunstmatige Intelligentie (AI) Hoofdstuk 6 van Russell/Norvig = [RN] Constrained Satisfaction Problemen (CSP s) voorjaar 2015 College 7, 31 maart 2015

Transcriptie:

DAR Approximate string matching Casus: biological sequence alignment 1

Text search Approx string matching dynamic programming, edit distance example application: Google search Text indexing inverted list q-grams Casus: protein strings similarity, specific for biological domein application of q-gram indexing: BLAST 2 2

Biological sequence alignment 3 3

Biological sequence alignment Ik heb een sequentie S die bij soort A eigenschap X bepaalt. Kan ik in de genomen van andere soorten sequences vinden die grote gelijkenis vertonen met S? Ik heb een aantal patiënten met aandoening Y. Kan ik in hun genoom een sequentie vinden die zij gemeenschappelijk hebben en die afwijkt in vergelijking met niet-patiënten? 4

DNA sequencing: mijlpalen 1953 Crick & Watson ontdekken moleculaire structuur van het DNA (dubbele helix) 1975 Sanger ontdekt sequencing techniques 2000-2003 human genome sequenced Anno nu: onderzoek naar individuele genetische verschillen 5 5

Sequence basics Model: een DNA sequence is een string over het alphabet {A,C,G,T} DNA segmenten worden gekopieerd naar een sequentie van messenger RNA om een eiwit te produceren (U in RNA = T in DNA) triplet structure definieert vertaling naar sequentie van aminozuren (codons) 6 6

Sequence basics 7 7

Sequence basics Een gen is een DNA-fragment dat een proteine codeert (versimpeld) Een proteine = sequentie van aminozuren (20 letter alphabet) ATGACCAGGATCTTTAAGTGA start codon = ATG stop codon = TGA codons: ATG-ACC-AGG-ATC-TTT-AAG-TGA methionine-threonine-arginine- MTR 6 manieren om een DNA-string af te lezen 8 8

Biological sequence databases SWISSPROT, GENBANK, Zowel proteines als ACGT-sequenties Generieke vorm query: find protein sequences similar to MKYMTVTDLNNAGATV 9 9

Biological sequence databases SWISSPROT example entries (FASTA format) >gi 1171675 sp P42268 NDD_BPR70 NUCLEAR DISRUPTION PROTEIN MKYMTVTDLNNAGATVIGTIKGGEWFLGTPHKDILSKPGFYFLVSEFDGSCV SARFYVGNQRSKQGFSAVLSHIRQRRSQLARTIANNNMAYTVFYLPASKM KPLTTGFGKGQLALAFTRNHHSEYQTLEEMNRMLADNFKFVLQAY >gi 123527 sp P05228 HRP2_PLAFA HISTIDINE-RICH PROTEIN PRECURSOR (CLONE PFHRP-III) MVSFSKNKVLSAAVFASVLLLDNNNSEFNNNLFSKNAKGLNSNKRLLHESQA HAGDAHHAHHVADAHHAHHVADAHHAHHAANAHHAANAHHAANAHHAANA HHAANAHHAANAHHAANAHHAANAHHAANAHHAANAHHAANAHHAANAHH AANAHHAADANHGFHFNLHDNNSHTLHHAKANACFDDSHHDDAHHDGAHH DDAHHDGAHHDDAHHDGAHHDGAHHDGAHHNATTHHLH 10 10

Protein based data similarity Twee fragmenten DNA zijn homoloog als ze overeenkomsten vertonen die gebaseerd zijn op gemeenschappelijk afstamming We zoeken een concept sequence similarity dat gapping ondersteunt en rekening houdt met letter distance GSAQVKGHGKKVA HV---D--DMPNAL G+ +VK+HGKKV ++ +L GNPKVKAHGKKVL QLQVTGVVVTDATL 11 11

Similarity Doel 1: een probabilistisch model opstellen ter onderbouwing van notie van sequence similarity Doel 2: algoritmen opstellen om optimale alignments te vinden 12 12

Scoring model Twee fragmenten DNA zijn homoloog als ze overeenkomsten vertonen die gebaseerd zijn op gemeenschappelijk afstamming Men heeft collecties van paren strings verzameld die corresponderen met homologieën Op grond van deze collecties kunnen we tellingen doen betreffende de frequenties van matching van paren aminozuren Door (bio)chemische oorzaken zijn niet alle matches even waarschijnlijk 13 13

Scoring model String x bestaat uit een reeks symbolen x i Symbool x i heeft een waarschijnlijkheid q x i Volgens random model R (er is geen sprake van een homologie) hebben twee strings x en y een waarschijnlijkheid 14 14

Scoring model Volgens het Match model komen paren strings voor met een gezamenlijke waarschijnlijkheid, uitgaande van gemeenschappelijke afstamming van een symbool c De odds-ratio (voor wel/geen homologie) is dan 15 15

Scoring model Om mathematisch-technische redenen werken we liever met log-odds De log-odds ratio voor strings x en y is 16 16

BLOSUM matrices Op basis van tellingen zijn matrices ter representatie van s(a,b) opgesteld; hieronder een fragment van de BLOSUM50-matrix D, E en K charged; V, I en L hydrofoob Variatie t.b.v. sensitiviteit (50, 62, 80) 17 17

Scoring model: gaps Penalty voor gap met lengte g optie 1 optie 2 (d = gap open, e = gap extension) 18 18

Alignment algoritmen Aantal mogelijke alignments voor sequences met lengte m en n is erg groot Dynamic programming: druk de optimale alignment van twee sequences uit in de optimale oplossingen voor deelsequences 19 19

Needleman-Wunsch (global) Globale match Eenvoudige gap penalty We zoeken de optimale match van x 1.. x m en y 1.. y n We hebben optimale matches van x 1.. x m-1 en y 1.. y n-1 x 1.. x m-1 en y 1.. y n x 1.. x m en y 1.. y n-1 20 20

Needleman-Wunsch De optimale match van x 1.. x m en y 1.. y n verkrijg je door de beste optie te kiezen uit: x 1.. x m-1 en y 1.. y n-1, waarbij x m gepaard wordt aan y n x 1.. x m-1 en y 1.. y n : x m gepaard aan gap x 1.. x m en y 1.. y n-1 : y n gepaard aan gap 21 21

Needleman-Wunsch De keuze uit deze drie mogelijkheden wordt bepaald aan de hand van de scorefunctie F 22 22

Needleman-Wunsch De keuze uit deze drie mogelijkheden wordt bepaald aan de hand van de scorefunctie F In de matrix: F (i-1, j-1) F (i, j-1) F (i-1, j) F (i, j) Via trace-back pijlen geven we de herkomst van de oplossing weer 23 23

Needleman-Wunsch Voorbeeld Match HEAGAWGHEE en PAWHEAE d = 8 -- H E A -- 0 P A W 24 24

Needleman-Wunsch Voorbeeld Match HEAGAWGHEE en PAWHEAE d = 8 -- H E A -- 0-8 -16-24 P -8 A -16 W -24 25 25

Needleman-Wunsch Voorbeeld Match HEAGAWGHEE en PAWHEAE d = 8 -- H E A -- 0-8 -16-24 P -8-2 A -16 W -24 26 26

Match HEAGAWGHEE en PAWHEAE Needleman-Wunsch From: Biological Sequence Analysis; Durbin, Eddy e.a. 27 27

Needleman-Wunsch Alignment is klaar als je het veld rechtsonderin bereikt. Deze bevat de globale score van de match Time complexity: O(mn) 28 28

Smith-Waterman (local) Voorbeeld Globale match: score = +1 HEAGAWGHE-E --P-AW-HEAE Lokale match: score = +21 HEA HEA \Lokale matches zijn interessanter 29 29

Smith-Waterman (local) Vraag Hoe pas je Needleman-Wunsch aan zodanig dat je lokale matches vindt? Antwoord 1. Zorg dat je op elk punt in de matrix met een schone lei begint: zet negatieve scores direct op 0 2. Je mag overal stoppen 30 30

Smith-Waterman (local) De keuze uit de mogelijkheden wordt bepaald aan de hand van de scorefunctie F 31 31

Smith-Waterman Voorbeeld Match HEAGAWGHEE en PAWHEAE d = 8 -- H E A -- 0 0 0 0 P 0 A 0 W 0 32 32

Smith-Waterman Voorbeeld Match HEAGAWGHEE en PAWHEAE d = 8 -- H E A -- 0 0 0 0 P 0 0 0 0 A 0 0 0 W 0 0 33 33

Smith-Waterman Voorbeeld Match HEAGAWGHEE en PAWHEAE d = 8 -- H E A -- 0 0 0 0 P 0 0 0 0 A 0 0 0 5 W 0 0 0 0 34 34

Smith-Waterman (local) Alignment kan op elk punt in de matrix eindigen From: Biological Sequence Analysis; Durbin, Eddy e.a. 35 35

Heuristieken In principe is ons probleem opgelost via dynamic programming Complexiteit O(mn) m: lengte query string n: lengte database! Behoefte aan heuristiek: Blast Methode: filtering gebaseerd op 3-grams 36 36

Blast Als twee strings een 3-gram delen, noemen we dat een hit HEAGAWGHEE en PAWHEAE Idee van filtering: Zoek via 3-gram hits kansrijke posities Pas op zo n kansrijke positie een lokaal expansiealgoritme toe 37 37

Blast Als twee strings een q-gram delen, noemen we dat een hit HEAGAWGHEE en PAWHEAE Het hebben van één hit geeft veel false positives; Hoe kunnen we spelen met selectiviteit en sensitiviteit? 38 38

Blast Extensie van hit-notie Twee q-grams zijn similar als hun onderlinge matchscore boven een bepaalde drempel komt (default = 11) HEAGAWGHEE en PAWHEAE Effecten: verhoging sensitivity (recall) verlaging selectivity (precision) 39 39

BLAST2 (PBLAST) Eis voor selectie is Two-hit diagonal principe: paar hits met dezelfde onderlinge afstand in query en db-string query = CWYWRWYYC dbstr = RRWYWAWYYRR OK! query = CWYWRWYYC dbstr = RRWYWABCWYYRR FOUT! Wat gebeurt er met sensitivity/selectivity? 40 40

Blast: expansie Eenvoudige ungapped expansie: ga uit van match op hits schuif naar rechts totdat match-score een val van 8 punten heeft gemaakt ten opzichte van optimum idem naar links 41 41

Blast: expansie Gapped expansie: pas lokaal een variant van Smith-Waterman (dynamic programming) toe 42 42

43

PBLAST: an RDB approach 44 44

PBLAST: an RDB approach Oefening: Druk BLAST-filtering uit in Relationele algebra (of SQL) 45 45