• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Dominando Modelos Ocultos de Markov com Python e GHMM
 

Dominando Modelos Ocultos de Markov com Python e GHMM

on

  • 1,612 views

 

Statistics

Views

Total Views
1,612
Views on SlideShare
1,612
Embed Views
0

Actions

Likes
0
Downloads
33
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Dominando Modelos Ocultos de Markov com Python e GHMM Dominando Modelos Ocultos de Markov com Python e GHMM Presentation Transcript

    • Dominando Modelos Ocultos deMarkov com Python e GHMMDaker Fernandes PinheiroSetembro/2011, Python Brasil
    • Sobre mim... from Petrolina-PE import Daker Ciência da Computação CIn-UFPE Developer Instituto Nokia de Tecnologia (IDNT) Software Livre KDE, Qt, Plasma, QML-Box2D, MeeGo Components, dia2code, QMLFB, ... GSoC: Plasma Components PUG-PE Nerd Power Camisetas Brancas :-)
    • Senta que lá vem históriaProcessamento de Sequências Biológicas e Metodos e Algoritmos emBiologia Computacional - 2011.1 Prof. Ivan Gesteira DNA, RNA Proteínas Modelos Ocultos de Markov
    • Problemas em Biologia Computacional Identicação de regiões de interesse no DNA Classicação de DNA e Proteínas Clusterização de DNA e Proteínas Proling de DNA e Proteínas Identicação de Anomalias Ilhas CpG ...
    • Modelos Ocultos de Markov Ou Hidden Markov Models (HMMs) Modelo Matemático Probabilístico Análise de Séries e Sequências Estados internos vs. Comportamento
    • Problemas diversos Classicação Clusterização Reconhecimento Análise de Séries Temporais Análise de Sequências Geração segundo o modelo
    • Problemas Diversos Linguagem Natural Sinais Música Mineração de Dados Aprendizagem de Máquina Extração de Informação
    • Fair-Bet CasinoExiste um casino onde existe um jogo de apostas com moedas e umfuncionário que as lança moedas.
    • Fair-Bet CasinoCada moeda pode assumir dois valores: Cara (H) Coroa (T)
    • Fair-Bet CasinoO funcionário tem duas moedas: Uma moeda Justa: que pode dar como resultado (emite símbolos) com a seguinte distribuição Cara com probabilidade 50% Coroa com probabilidade 50% Uma moeda Viciada: Cara com probabilidade 75% Coroa com probabilidade 25%
    • Fair-Bet CasinoGrafo de emissões:
    • Fair-Bet CasinoEsse funcionário sempre usa uma das duas moedas. Mas podetrocá-las com 10% das vezes que vai fazer um novo sorteio. Estados Transições
    • Fair-Bet CasinoGrafo de transições de estados:
    • Fair-Bet CasinoO funcionário começa com qualquer uma das moedas com igualprobabilidade.
    • Fair-Bet CasinoTransições do estado inicial:
    • Fair-Bet CasinoModelo completo:
    • ProblemaImagine que você é um apostador
    • ProblemaDada uma sequência de lançamentos:T, T, T, H, T, H, H, T, T, H, H, T, H, T, H, H, H, H, T, T, H, T, H, T, H, H, H, T, H, H, H, H, H, T, H, H, T, H, H, H, T, H, TQuais moedas o lançador estava utilizando em cada momento?
    • Solução Não existe solução extata! Mas...
    • Solução Probabilidades a posterioriDado uma sequência, quais as probabilidades de estar em cada modelo +Viterbi
    • Biblioteca: General Hidden Markov Model (GHMM)+ Biopython (Cenas de um próximo capítulo)
    • GHMM Biblioteca C++ HMMs + Algoritmos Binding Python
    • GHMMimport ghmm# Criando a l f a b e t o para r e p r e s e n t a r os# s i m b o l o s e m i t i d o s p e l o me modelo .emission_alphabet = ghmm. Alphabet ( [ H , T ] )
    • GHMM# Matriz de t r a n s i c o e s :# l i n h a s representam e s t a d o s de origem# c o l u n a s representam e s t a d o s de d e s t i n o# v a l o r e s da matriz representam a# p r o b a b i l i d a d e da t r a n s i c a o de e s t a d o s#transitions_probabilities = [ [ 0 . 9 , 0 . 1 ] , # 0 : e s t a d o de j u s t o [ 0 . 1 , 0 . 9 ] , # 1: estado viciado]
    • GHMM# p r o b a b i l i d a d e s de comecar em H e Tinitial_states_distribution = [0.5 , 0.5]
    • GHMM# Matriz de emissao de s i m b o l o s# 0 : p r o b a b i l i d a d e s de emissao da moeda j u s t aemissions_fair = [0.5 , 0.5]# 1 : p r o b a b i l i d a d e s de emissao da moeda v i c i a d aemissions_biased = [ 0 . 5 , 0 . 5 ]emissions_probabilities = [ emissions_fair , emissions_biased]
    • GHMM# Criando Modelo Oculto de Markovhmm = ghmm. HMMFromMatrices ( # Alfabeto emission_alphabet , # Tipo de d i s t r i b u i c a o ( d i s c r e t a , gau ss ia na , . . . ) ghmm. D i s c r e t e D i s t r i b u t i o n ( emission_alphabet ) , transitions_probabilities , emissions_probabilities , initial_states_distribution)
    • GHMMResolvendo o problema do Casinot o s s e s = [ T, T, T, H, . . . , H, T]# XXXsequence = ghmm. EmissionSequence ( emission_alphabet , tosses )v i t er b i _ p a t h , states_prob = hmm. v i t e r b i ( sequence )
    • GHMMResolvendo o problema do Casino>>> p r i n t ( v i t e r b i _ p a t h )[0 , 0 , 0 , 0 , . . . , 1 , 1 , 1 , 1 , 1]>>> p r i n t states_prob[[0.8407944139086141 , 0.1592055860913865] , [0.860787703168127 , 0.13921229683187356] , . . . ]
    • Fair-Bet CasinoProbabilidades a posteriori:
    • Algoritmos Geração de sequências Emissão com distribuições Gaussianas Baum Welch
    • Agradecimentos INDT CIn - UFPE Prof. Ivan Gesteira Python Brasil Vocês!
    • Dúvidas?Twitter: @dakerfpE-mail: daker.pinheiro@openbossa.orgFreenode: dakerfpBlog: http://codecereal.blogspot.comBlog: http://blog.qtlabs.org.brBlog: http://aimotion.blogspot.comGitorious: http://gitorious.org/ dakerfpGithub: http://github.com/dakerfpGHMM: http://ghmm.org