HMM
Περιγραφή ενός HMM N πλήθος καταστάσεων Q = {q 1, q 2,,q T } set καταστάσεων M πλήθος συμβόλων (παρατηρήσεις) O = {o 1, o 2,,o T } set συμβόλων
Περιγραφή ενός HMM A Πίνακας πιθανοτήτων μετάβασης a ij = P(q t+1 = j q t = i) ) B κατανομή πιθανοτήτων παρατήρησης b j (k) = P(o t = k q t = j) i k M π κατανομή αρχικών καταστάσεων
Περιγραφή ενός HMM Άρα ένα HMM περιγράφεται πλήρως από την τριάδα: λ = (A,B,π)
Markov Chains Rain Sunny Cloudy States : Three states sunny, cloudy, rainy. State transition matrix : The probability of the weather given the previous dayʹs weather. Initial Distribution ib ti : Dfii Defining the probability bilit of the system being in each of the states at time 0. 5
Hidden Markov Models dl Hidden states : the (TRUE) states of a system that may be described by a Markov process (e.g., the weather). Observable states : the states of the process that are `visibleʹ (e.g., seaweed dampness). 6
Components of HMM Output matrix : containing the probability of observing a particular observable state given that the hidden model is in a particular hidden state. Initial Distribution : contains the probability of the (hidden) model dlbi being in a particular hidden state t at time t = 1. State transition matrix : holding the probability of a hidden state given the previous hidden state. 7
Προβλήματα μοντελοποίησης με Πρόβλημα 1 Αξιολόγηση: η HMM Πιθανότητα εμφάνισης της συγκεκριμένης ακολουθίας παρατήρησης, ης, O = {o 1,,o, k k}, δεδομένου του μοντέλου P(O λ) Πολύπλοκο κρυφές καταστάσεις Χρήσιμο στο classification ακολουθιών
Problems With HMM Scoring problem: Given an existing HMM and observed sequence, what is the probability that the HMM can generate the sequence 9
Προβλήματα μοντελοποίησης με Πρόβλημα 2 Αποκωδικοποίηση: HMM Βέλτιστη ακολουθία καταστάσεων για την παραγωγή δεδομένων παρατηρήσεων, O = {o 1,,o k }, δεδομένου του μοντέλου Κριτήριο βελτιστοποίησης Χρήσιμο σε προβλήματα αναγνώρισης
Problems With HMM Alignment Problem Given a sequence, what is the optimal state sequence that the HMM would use to generate it 11
Προβλήματα μοντελοποίησης με Πρόβλημα 3 Μάθηση: HMM Καθορίστε το βέλτιστo μοντέλο, λαμβάνοντας υπόψη τις παρατηρήσεις του συνόλου εκπαίδευσης Βρες λ, τέτοιο ώστε η P(O λ) να μεγιστοποιείται
Πρόβλημα 1: απλοϊκή λύση Ακολουθία καταστάσεων Q = (q 1, q T ) Υποθέτουμε ανεξάρτητες παρατηρήσεις: P T ( O q, P( ot qt, ) bq 1( o1 ) bq 2( o2 i 1 )... b Οι παρατηρήσεις είναι ανεξάρτητες μεταξύ τους, δεδομένων των κρυμμένων καταστάσεων. (Η κοινή κατανομή των ανεξάρτητων μεταβλητών παραγοντοποιείται στις κατανομές των ανεξάρτητων ρη μεταβλητών.) qt ( o T )
Πρόβλημα 1: απλοϊκή λύση Παρατηρήστε ότι: και: P( q ) a a... a q1 q1q2 q2q3 qt 1qT P ( O ) P( O q, ) P( q ) q
Πρόβλημα 1: απλοϊκή λύση Τελικά: P ( O ) P( O q, ) P( q ) q Το πιο πάνω άθροισμα αφορά όλα τις διαδρομές Το πιο πάνω άθροισμα αφορά όλα τις διαδρομές καταστάσεων Υπάρχουν N T διαδρομές καταστάσεων, όπου η καθεμία κοστίζει O(T) υπολογισμούς, που δίνει πολυπλοκότητα O(TN T )
Πρόβλημα 1: Αποτελεσματική λύση Forward αλγόριθμος: Ορίζουμε βοηθητική forward μεταβλητή α: ( i) P( o,..., o q i, ) 1 t α t (i) είναι η πιθανότητα παρατήρησης της μερικής ακολουθίας των παρατηρήσεων o 1, o t ώστε τη στιγμή t, η κατάσταση q t =i t t
Πρόβλημα 1: Αποτελεσματική λύση Αναδρομικός αλγόριθμος: Αρχικοποίηση: η i Υπολογισμός: P ( i) b ( o ) 1 i 1 N ( j) [ t ( i) aij ] bj ( ot 1) t1 i1 N ( O ) T i 1 ( i) Πολυπλοκότητα O(N 2 T)
Πρόβλημα 1: Εναλλακτική Ορίζουμε βοηθητική μεταβλητή β: λύση Backward αλγόριθμος: t ( i) P( o, o,..., o q i, ) t1 t2 T t t (i) είναι η πιθανότητα παρατήρησης της ακολουθίας των παρατηρήσεων o t+1,,o T δεδομένου τη στιγμή t, η κατάσταση q t =i
Πρόβλημα 1: Εναλλακτική λύση Αναδρομικός αλγόριθμος: Αρχικοποίηση: T Υπολογισμός: ( j) N 1 t() i t 1 ( j ) aij bj ( ot 1 ) j1 N p( O ) ( i t T 1,..., 1 i1 Πολυπλοκότητα O(N 2 T) 1 )
Πρόβλημα 2: Αποκωδικοποίηση Επιλέγουμε ακολουθία καταστάσεων για τη μεγιστοποίηση της πιθανότητας της ακολουθίας παρατήρησης Ο Viterbi είναι επαγωγικός αλγόριθμος που κρατά την καλύτερο ακολουθία καταστάσεων σε κάθε περίπτωση
Πρόβλημα 2: Αποκωδικοποίηση Viterbi αλγόριθμος: Ακολουθία καταστάσεων που μεγιστοποιεί το P(O,Q ): P ( 2 q1, q,... qt O, ) Ορίζουμε βοηθητική μεταβλητή δ: ( i ) max P ( q, q,..., q i, o, o,... o ) t ( 1 2 t 1 2 t q δ t (i) το πιο πιθανό μονοπάτι που λήγει στην t( ) μ ήγ η κατάσταση q t =i
Αναδρομή: Πρόβλημα 2: Αποκωδικοποίηση Αλγόριθμος: 1. Αρχικοποίηση: Για να πάρουμε την ακολουθία κατάστασεων, πρέπει να παρακολουθούμε τα ορίσματα που τη μεγιστοποιούν, για κάθε t και j. Γίνεται μέσω του πίνακα ψ t (j). ( j) max( t ( i) aij ) b j ( o 1) t1 t i i) b ( ) 1 i N ( 1 i i o1 1( i) 0
2. Αναδρομή: Πρόβλημα 2: Αποκωδικοποίηση t ( j) max( t 1( i) a 1i N ij ) b j ( o t ) t ( j) arg max( t 1( i) a 1i N ij ) 2 t T, 1 j N 3. Τερματισμός: P q T max ( i ) 1iN T arg max 1 ii N T P*: δίνει τη βέλτιστη πιθανότητα ως προς την κατάσταση ( i) Q* βέλτιστη ακολουθία (Q* = {q1*,q2*,,qt*})
Πρόβλημα 2: Αποκωδικοποίηση 4. Backtrack ακολουθία: q t t1( qt 1) t T 1, T 2,..., 1 O(N 2 T) πολυπλοκότητα λ
Πρόβλημα 3: Μάθηση Εκπαίδευση του HMM ώστε να κωδικοποιήσει ακολουθίες παρατηρήσεων ώστε να εντοπίσει μια παρόμοια ακολουθία στο μέλλον Εύρεση λ=(a,b,π), (,, που μεγιστοποιεί μγ το P(O λ) Αλγόριθμος: Αρχικοποίηση: λ 0 Υπολογίζουμε νέο μοντέλο λ, χρησιμοποιώντας τα λ 0 και O λ 0 λ Επαναλαμβάνουμε τη διαδικασία εώς: log P( O ) log P( O 0) d
Πρόβλημα 3: Μάθηση Baum Welch αλγόριθμος Βήμα 1: Έστω ξ(i,j) η πιθανότητα να είμαστε στην κατάσταση i τη στιγμή t και τη j όταν t+1, δεδομένου των λ και O ( i, j) ( i) a t ij b j ( o t1 ) P ( O ) t1 ( j) N ( t N i1 j1 i) a ijb j ( ot 1) t 1( j) ( i) a b ( o ) t ij j t1 t1 ( j)
Πρόβλημα 3: Μάθηση Δραστηριότητες που απαιτούνται για τον υπολογισμό ρ ηρ η ς γ γ μ της κοινής περίπτωση που το σύστημα βρίσκεται στην κατάσταση Si για t και Sj για t+1
Πρόβλημα 3: Μάθηση Έστω γ t (i) η πιθανότητα να είμαστε στην κατάσταση i τη στιγμή t, δεδομένου του O N t ( i) t ( i, j ) j1 T 1 t1 T 1 t1 () i t () i t αναμενόμενο πλήθος μεταβάσεων από i αναμενόμενο πλήθος μεταβάσεων i j
Πρόβλημα 3: Μάθηση Baum Welch αλγόριθμος Βήμα 2: ˆ 1( i ) αναμενόμενη συχνότητα κατάστασης i για t=1 t ( i, j) aˆ ij t ( i) Αναλογία αναμενομένων μεταβάσεων από την κατάσταση i στην j προς αναμενόμενες μεταβάσεις από i ˆ t ( k), ot k j t b ( j) ( j ) t Αναλογία αναμενόμενο πλήθος φορών που στην κατάσταση j παρατηρείται το k προς πλήθος φορών στη j
Πρόβλημα 3: Μάθηση Baum Welch αλγόριθμος χρησιμοποιεί τους forward και backward αλγορίθμους για τον υπολογισμό των βοηθητικών μεταβλητών α, β Ο BW είναι μια ειδική περίπτωση του αλγορίθμου EM: E βήμα: υπολογισμός των ξ και γ M βήμα: επαναληπτικός υπολογισμός των Πρακτικά ζητήματα: Μπορεί να κολλήσει σε τοπικά μέγιστα ˆ â ˆ ( k) ij b j
HMMs in Biology Gene finding and prediction Protein Profile Profile Analysis Secondary Structure prediction Advantages Limitations 31
Relationship Between DNA, RNA And Proteins DNA CCTGAGCCAACTATTGATGAA transcription mrna CCUGAGCCAACUAUUGAUGAA translation Protein PEPTIDE 32
Protein Structure Primary Structure of Proteins The primary structure of peptides and proteins refers to the linear number and order of the amino acids present. 33
Protein Structure Secondary Structure Protein secondary structure refers to regular, repeated patters of folding of the protein backbone. How a protein folds is largely dictated by the primary sequence of amino acids 34
What is a (protein coding) gene? DNA CCTGAGCCAACTATTGATGAA transcription mrna CCUGAGCCAACUAUUGAUGAA translation Protein PEPTIDE 35
In more detail (color ~state) (Left) (Removed) 36
Gene Finding HMMs Our Objective: To find the coding and non coding regions of an unlabeled string of DNA nucleotides Our Motivation: Assist in the annotation of genomic data produced by genome sequencing methods Gain insight into the mechanisms involved in transcription, splicing and other processes 37
Why HMMs Classification: Classifying observations within a sequence Od Order: A DNA sequence is a set of ordered dobservations Grammar : Our grammatical structure (and the beginnings of our architecture) is right here: Success measure: # of complete exons correctly labeled Training i data: Available from various genome annotation projects 38
HMMs for gene finding Training Expectation Maximization (EM) Parsing Viterbi algorithm An HMM for unspliced genes. x : non coding DNA c : coding state
Protein Profile HMMs Motivation Given a single amino acid target sequence of unknown structure, we want to infer the structure of the resulting protein. Use Profile Similarity What is a Profile? Proteins families of related sequences and structures Same function Clear evolutionary relationship Patterns of conservation, some positions are more conserved than the others 40
An Overview Aligned Sequences Build a Profile HMM (Training) Database search Query against Profile HMM database (Forward) Multiple alignments (Viterbi) 41
Building from an existing alignment ACA ATG TCA ACT ATC ACA C AGC AGA ATC ACC G ATC Output Probabilities insertion Transition probabilities A HMM model for a DNA motif alignments, The transitions are shown with arrows whose thickness indicate their probability. In each state, the histogram shows the probabilities of the four bases.
Database Searching Given HMM, M, for a sequence family, find all members of the family in data base. LL score LL(x) = log P(x M) (LL score is length dependent must normalize or use Z score) 43
Query a new sequence Suppose I have a query protein sequence, and I am interested in which family it belongs to? There can be many paths leading to the generation of this sequence. Need to find all these paths and sum the probabilities. Consensus sequence: ACAC ATC P (ACACATC) C) = 0.8x1 08 x 0.8x1 08 x 0.8x0.6 08 06x 0.4x0.6 0 x 1x1 x 0.8x1 x 0.8 = 4.7 x 10 2
Multiple Alignments Try every possible path through the model that would produce the target sequences Keep the best one and its probability. Output : Sequence of match, insert and delete states Viterbi alg. Dynamic Programming 45
Building unaligned sequences Baum Welch Expectation maximization method Start with a model whose length matches the average length of the sequences and with random output and transition probabilities. Align all the sequences to the model. Use the alignment to alter the output and transition probabilities Repeat. Continue until the model stops changing By product: It produced a multiple alignment 46
PHMM Example An alignment of 30 short amino acid sequences chopped out of a alignment of the SH3 domain. The shaded area are the most conserved and were represented by the main states in the HMM. The unshaded aea area was represented ese e by an insert state. 47
Prediction of Protein Secondary structures Prediction of secondary structures is needed for the prediction of protein function. Analyze the amino acid sequences of proteins Learn secondary structures hli helix, sheet and turn Predict the secondary structures of sequences 48
Advantages Characterize e an entire family of sequences. Position dependent character distributions and position dependent insertion and deletion gap penalties. Built on a formal probabilistic bili basis Can make libraries of hundreds of profile HMMs and apply them on a large scale (whole genome) 49
Demos Speech synthesis http://www.cstr.ed.ac.uk/projects/festival/onlinedemo.html