Modello di Markov nascosto![]() x — stato nascosto y — uscita osservabile a — probabilità di transizione b — probabilità di uscita Un modello di Markov nascosto (Hidden Markov Model - HMM) è una catena di Markov in cui gli stati non sono osservabili direttamente. Più precisamente:
I modelli nascosti di Markov sono conosciuti particolarmente per le loro applicazioni nel riconoscimento dello schema temporale dei discorsi parlati, della scrittura a mano, nel riconoscimento di texture e la bioinformatica (per esempio HMMer). Come usare il modello di Markov nascostoCi sono 3 problemi canonici connessi con gli HMM:
Esempio concretoSi considerino due amici, Alice e Bob, che vivono lontani e quotidianamente parlano al telefono di ciò che hanno fatto in giornata. Bob fa tre sole attività: cammina nel parco, fa shopping e pulisce il suo appartamento. La scelta di cosa fare è determinata esclusivamente dal tempo atmosferico. Alice non sa che tempo fa da Bob quando lo chiama, ma sa cosa fa Bob ogni giorno. Sulla base di quello che Bob fa, Alice cerca di indovinare che tempo c'è stato dove vive Bob. Ci sono due stati, "pioggia" e "sole", ma Alice non può osservarli direttamente, ovvero sono nascosti. Ogni giorno, c'è una certa probabilità che Bob faccia una delle seguenti attività, a seconda del tempo: camminare, fare shopping o pulire. Dato che Bob parla ad Alice delle sue attività, queste sono le osservazioni. L'intero sistema è quello di un modello nascosto di Markov. Alice sa qual è l'andamento generale del tempo dove vive Bob e quello che piace fare a Bob in media. In altre parole sono noti i parametri del HMM, che possono essere rappresentati come segue nel linguaggio di programmazione Python: stati = ('Pioggia', 'Sole')
osservazioni = ('camminare', 'shopping', 'pulire')
probabilità_iniziale = {'Pioggia': 0.6, 'Sole': 0.4}
probabilità_transizione = {
'Pioggia' : {'Pioggia': 0.7, 'Sole': 0.3},
'Sole' : {'Pioggia': 0.4, 'Sole': 0.6},
}
probabilità_emissione = {
'Pioggia' : {'camminare': 0.1, 'shopping': 0.4, 'pulire': 0.5},
'Sole' : {'camminare': 0.6, 'shopping': 0.3, 'pulire': 0.1},
}
dove Alice può calcolare la sequenza più probabile di stati nascosti in giorni successivi, conoscendo questi tre dati, moltiplicando la probabilità di transizione per la probabilità di emissione di ciascun giorno e sommando i valori. dove è l'insieme ordinato degli eventi e è l'insieme ordinato degli stati nascosti. Applicazioni dei modelli nascosti di Markov
StoriaI modelli nascosti di Markov sono stati descritti per la prima volta in una serie di studi statistici di Leonard E. Baum ed altri autori nella seconda metà degli anni sessanta. Una delle prime applicazioni degli HMM era il riconoscimento della parola, a partire dagli anni settanta. Nella seconda metà degli anni ottanta, si è cominciato ad applicare gli HMM all'analisi delle sequenze biologiche, in particolare quella del DNA. Da allora, questa metodologia è diventata di grande aiuto nel campo della bioinformatica. Bibliografia
Voci correlateAltri progetti
Collegamenti esterni
|