A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Agentes Probabilistas Seminário da disciplina Métodos de Computação Inteligentes Hugo Pimentel de Santana

Apresentações semelhantes


Apresentação em tema: "Agentes Probabilistas Seminário da disciplina Métodos de Computação Inteligentes Hugo Pimentel de Santana"— Transcrição da apresentação:

1 Agentes Probabilistas Seminário da disciplina Métodos de Computação Inteligentes Hugo Pimentel de Santana

2 2 Motivação Agentes precisam lidar com incertezas Ambientes  Não determinísticos  Parcialmente observáveis Exemplo: Wumpus Brisa(2,1)  Brisa(1,2)  Buraco(3,1)  Buraco(2,2)  Buraco(1,3) OK B OK B OK ? ? ? 2 4 3

3 3 Limitações da lógica para representar conhecimento incerto Engajamento epistemológico: crença sobre fato do mundo representado como fórmula lógica certamente verdadeira certamente falsa totalmente desconhecida Incertezas representáveis apenas através da disjunção Limitações da disjunção: Problema da qualificação: impossível na prática pensar em todos os casos possíveis  É trabalhoso demais modelar todos os casos, ou adquirir todos os dados  Existe apenas conhecimento observado empírico sem modelo causal Crenças iguais sobre todas as alternativas de uma disjunção  não há algumas mais plausíveis do que outras

4 4 Representando conhecimento incerto Conhecimento provê um grau de confiança sobre aspectos do mundo Teoria da probabilidade Pode expressar o grau de confiança do agente  1 representa a certeza absoluta da verdade  0 a certeza absoluta da falsidade  Valores entre 0 e 1 representam a confiança do agente A priori (incondicional)  Antes de se obter evidências. Ex. P(Buraco(1,1)) = 0.2 A posteriori (condicional)  Expressa o grau de confiança após alguma evidência ter sido obtida. Ex. P(Buraco(1,1)|Brisa(1,2)) = ?

5 5 Probabilidade: Notação Graus de confiança associados a proposições Representações de primeira ordem também podem ser utilizadas Variáveis aleatórias associadas a literais da lógica proposicional extendidos com inequações numéricas: Booleanas, correspondem a variáveis booleanas de CSP  Carie: domínio, DorDeDente: domínio:  Carie = true  carie, e Carie = false   carie Discretas, corresponde a variáveis de domínio finito de CSP  Tempo: domínio  Tempo = sol Contínuas, corresponde a variáveis reais de CSP  X: domínio = [0,1] ou R  X  1.24 Evento atômico: combinação de literais com conjunção e negação Especificação completa das variáveis do mundo Exemplo  carie   dordedente  Tempo = nublado

6 6 Probabilidade Incondicional (a priori) Associada a uma proposição P(Carie = true) = 0.1 ou P(carie) = 0.1 P(Tempo = sol) = 0.7, P(Tempo = chuva) = 0.2, P(Tempo = nublado) = 0.08, P(Tempo = neve) = 0.02 Distribuição de probabilidade P(Tempo) = P(Carie) = Distribuição de probabilidade conjunta: P(Carie, DorDeDente, Tempo)  Indicada por uma tabela com 2 x 2 x 4 (16 entradas)  Cada entrada representa um evento atômico

7 7 Probabilidade Condicional Probabilidade, dado que o agente já possui alguma evidência P(a|b) = probabilidade de a, dado que b é conhecido P(carie|dordedente) = 0.8  Se o paciente está com dor de dente, há 80% de chances dele estar com uma cárie Regra do produto P(a  b) = P(a|b)P(b) (regra do produto) P(X|Y) representa os valores P(X=x i |Y=y j ),  i,j

8 8 Agente probabilista 1 Ask Tell Retract Ambiente Sensores Atuadores Base de Conhecimento Probabilista Máquina de Inferência Probabilista Marginalização Distribuição de probabilidade conjunta (intensão) P(carie) dorDeDente  dorDeDente catch  catch catch  catch carie  carie DorDeDente = true

9 9 Resumo dos métodos utilizados por agentes probabilistas DPC Redução da complexidade na aquisição das probabilidades RB com CPT RB com noisy-or e det. nodes Redução da complexidade da inferência (e da precisão) DPC com marginalização RB com inferência exata RB Amo. D./ Rej. S. RB Likelihood W. RB MCMC

10 10 Marginalização Probabilidade de uma proposição: soma dos valores da tabela de distribuição conjunta em que a proposição é verdade P(Y) =  z P(Y, z) ex, P(Carie) = = Como calcular a probabilidade de uma proposição dada alguma evidência? Ex: P(Carie|dorDeDente) Pela regra do produto:  P(carie|dorDeDente) = P(carie  dorDeDente) / P(dorDeDente)  P(  carie|dorDeDente)=P(  carie  dorDeDente) / P(dorDeDente)  1/P(dorDeDente) é apenas uma constante de normalização (  ), logo basta calcular P(Carie, dorDeDente) utilizando marginalização

11 11 Inferência probabilidades condicionais P(X|e) = normalizar( P(X,e) ) =  (  y P(X,e,y) ) Exemplo: P(Carie|dordedente) =  (  y P(Carie,dordedente, Y) ) =  [P(Carie, dordedente, catch) + P(Carie, dordedente,  catch)] =  [ + ] =  [ ] = (  = 5)

12 12 Problemas da inferência por marginalização Complexidade exponencial No espaço  Para n variáveis (booleanas), a distribuição de probabilidade conjunta possui 2 n entradas No tempo  No pior caso, a marginalização precisa somar todos os elementos da tabela de distribuição conjunta Não leva em conta independência entre variáveis Como seria P(Carie, DorDeDente, Catch, Tempo)  A tabela teria o tamanho da tabela anterior multiplicado por 4

13 13 Independência entre variáveis P(Carie|Tempo = nublado) = P(Carie) Se a e b são independentes  P(a|b) = P(a) e P(a  b) = P(a)P(b) Se temos 3 moedas, a distribuição conjunta P(C 1,C 2,C 3 ) pode ser dado por P(C 1 ), P(C 2 ) e P(C 3 ) Reduz de 2 3 para 3 x 2 Pode-se ter também Independência Condicional Duas variáveis podem ser independentes, dado o valor de uma terceira variável Exemplo: Se eu sei o valor de Carie, DordeDente e Catch passam a ser independentes Logo: P(dorDeDente  catch | Carie) = P(dorDeDente| Carie) P(catch|Carie)

14 14 Redução da complexidade da distribuição conjunta Distribuição conjunta: P(DorDeDente, Catch, Carie) = (regra do produto) P(DorDeDente, Catch|Carie)P(Carie) = (independência condicional) P(DorDeDente|Carie) P(Catch|Carie) P(Carie)  De valores necessários para  Reduz de O(2 n ) para O(n) De uma maneira geral (assumindo independência entre os efeitos, dada a causa)  P(Causa, Efeito 1, Efeito 2,...)=P(Causa)  i P(Efeito i |Causa)

15 15 Exemplo: Wumpus... Sejam: B ij variável booleana que indica se a posição (i,j) possui buraco V ij variável booleana que indica se a posição (i,j) possui brisa (usaremos só V 11, V 12 e V 21 ) OK V OK V OK ? ? ? Tell(  v 11 ) Tell(v 12 ) Tell(v 21 ) Ask( P(B 13 |BC) ) Ask( P(B 22 |BC) ) Ask( P(B 31 |BC) )

16 16 Wumpus: Especificação da distribuição conjunta e inferência do melhor caminho A DPC é dada por P(B 11, B 12,..., B 44, V 11,V 12,V 21 ) P(B 11, B 12,..., B 44, V 11,V 12,V 21 ) = (regra do prod.) P(V 11,V 12,V 21 |B 11, B 12,..., B 44 )P(B 11, B 12,..., B 44 ) Como P(B ij ) =, e as probabilidades de P(B ij ) são independetes P(B 11, B 12,..., B 44 ) = 0.2 nBuracos x nBuracos Sabe-se um algoritmo para calcular P(V 11,V 12,V 21 |B 11, B 12,..., B 44 ) Para toda variável B ij, se B ij = true  Para toda variável V, se V é adjacente a B ij e V = false, retorne 0 Retorne 1 Com a DPC, a máquina de inferência pode responder a Ask( P(B 13 |BC) ) por marginalização P(B 13 |BC) = P(B 31 |BC) = 31% P(B 22 |BC) = 86%  O agente deve seguir por (1,3) ou (3,1)

17 17 Redes Bayesianas para representação de conhecimento incerto Rede bayesiana (sintaxe) Variáveis são representadas por nós O grafo formado não possui ciclos direta Se há uma seta de A para B, então A (pai) possui uma influência direta sobre B DorDeDente Catch Cárie Tempo

18 18 Redes bayesianas e tabela de probabilidades condicionais MariaLigar Alarme JoãoLigar Terremoto Ladrão P(L).001 P(T).002 LTP(A) tt.95 tf.94 ft.29 ff.001 AP(J) t.90 f.05 AP(M) t.70 f.05

19 19 Agente probabilista 2 Ask Tell Retract Ambiente Sensores Atuadores Base de Conhecimento Probabilista Máquina de Inferência Probabilista Inferência exata ou aproximada Rede Bayesiana (intensão) Subsídio Harvest Custo Compra

20 20 Resumo dos métodos utilizados por agentes probabilistas DPC Redução da complexidade na aquisição das probabilidades RB com CPT RB com noisy-or e det. nodes Redução da complexidade da inferência (e da precisão) DPC com marginalização RB com inf. Exata RB Amo. D./ Rej. S. RB Likelihood W. RB MCMC

21 21 Semântica das Redes bayesianas Representa a distribuição conjunta P(x 1,..., x n ) =  i=1|n P(x i |parents(X i )) Ex.  P(j  m  a   l   e) = P(j|a)P(m|a)P(a|  l   e)P(  l)P(  e) = Complexidade O(n2 k ) contra O(2 n ) da tabela de distribuição conjunta, onde k é o número máximo de pais por nó  No exemplo do alarme, representa 10 valores contra (31) da representação pela tabela de DPC

22 22 Propriedades das redes bayesianas Um nó é condicionalmente independente de todos os outros nós da rede, dado seus pais, filhos e pais dos filhos (markov blanket)

23 23 Propriedades das redes bayesianas Um nó é condicionalmente independente dos não-descendentes, dado seus pais Ex. P(MariaLigar|JoãoLigar,Al arme,Terremoto,Ladrão) = P(MariaLigar|Alarme)

24 24 Processo de construção de uma Rede Bayesiana Conselhos: Se a influência entre dois nós é muito pequena, não vale a pena incluir um link  Adiciona complexidade na rede desnecessariamente A ordem em que os nós são incluídos é relevante Adicionar as causas principais primeiro

25 25 Construção de uma rede bayesiana A ordem pode acarretar em: Mais arestas na representação Relacionamentos tênues, e difíceis de valorar (Ex. P(Terremoto|ladrão, alarme) O segundo exemplo possui a mesma complexidade de especificar a DPC

26 26 Resumo dos métodos de inferência dos agentes probabilistas DPC Redução da complexidade na aquisição das probabilidades RB com CPT RB com noisy-or e det. nodes Redução da complexidade da inferência (e da precisão) DPC e marginalização RB com inf. Exata RB Amo. D./ Rej. S. RB Likelihood W. RB MCMC

27 27 Representações eficientes de distribuições condicionais Nós determinísticos seu valor é uma função determinística dos pais  Ex. NorteAmericano = Canadense  US  Mexicano Noisy-OR Permite especificar a distribuição em relação aos pais se:  Todas as influências(causas) estão listadas  Há independência entre os fatores que fazem com que a causa não provoque a conseqüência (inibidores)

28 28 Noisy-OR - Exemplo P(  febre|gripe,  resfriado,  malaria) = 0.6 P(  febre|  gripe, resfriado,  malaria) = 0.2 P(  febre|  gripe,  resfriado, malaria) = 0.1 GripeResfriadoMalariaP(Febre) P(  Febre) FFF FFT FTF FTT = 0.2 x 0.1 TFF TFT = 0.6 x 0.1 TTF = 0.6 x 0.2 TTT x 0.2 x 0.1

29 29 Redes Bayesianas para variáveis contínuas Duas possibilidades Discretizar os valores das variáveis aleatórias Especificar as funções de distribuição de probabilidade, com número finito de parâmetros (linear gaussiana mais utilizada) Rede Bayesiana híbrida Possui variáveis discretas e contínuas Exemplo:Subsídio e Compra, booleanas, Custo e Harvest contínuas Subsídio Harvest Custo Compra P(c|h, subsidio) = N(a true h + b true   2 )(c) = P(c|h,  subsidio) = N(a false h + b false  2 )(c) =

30 30 Resumo dos métodos de inferência dos agentes probabilistas DPC Redução da complexidade na aquisição das probabilidades RB com CPT RB com noisy-or e det. nodes Redução da complexidade da inferência (e da precisão) DPC e marginalização RB com inf. Exata RB Amo. D./ Rej. S. RB Likelihood W. RB MCMC

31 31 Inferência exata em redes bayesianas Como uma rede bayesiana representa a distribuição conjunta, o mesmo processo pode ser utilizado P(L|j,m)=  P(L,j,m) =  t  a P(L,t,a,j,m) Para L = true:  P(l|j,m) =   t  a P(l)P(t)P(a|l,t)P(j|a)P(m|a) Porém, mais eficiente:  P(l|j,m) =  P(l)  t P(t)  a P(a|l,t)P(j|a)P(m|a)

32 32 Árvore de expressões P(m|a) P(l) P(t) P(  t) P(a|l,t) P(  a|l,  t) P(  a|l,t) P(j|a) P(j|  a) P(m|  a) P(a|l,  t) P(j|a) P(j|  a) P(m|a) P(m|  a) P(l|j,m) =  P(l)  t P(t)  a P(a|l,t)P(j|a)P(m|a)

33 33 Eliminação de variáveis Algoritmo para inferência exata Processa a árvore de expressões bottom-up, armazenando os valores calculados Observação:  Todas as variáveis que não são ancestrais da variável de consulta ou das evidências podem ser removidas da inferência  P(J|l) =  P(l)  t P(t)  a P(a|l,t)P(J|a)  m P(m|a) Mas  m P(m|a) é 1 por definição, logo pode ser eliminado

34 34 Complexidade do algoritmo de eliminação de variáveis Se a rede é uma polytree (no máximo um caminho entre dois nós) linear no número de nós da rede Em geral, tempo e espaço exponencial (#P-Hard) Algoritmos de clustering podem transformar redes em polytrees (continua exponencial no pior caso) Chuva Aguador Nublado Molhado Aguador + Chuva Nublado Molhado

35 35 Inferência aproximada em redes bayesianas Inferência exata é intratável para redes grandes e muito conectadas Inferência aproximada permite obter uma solução mais eficiente, porém aproximada A complexidade em tempo é dada pela qualidade da solução Escapa da NP-Completude, mas qualidade da solução diminui Baseada nos algoritmos de Monte Carlo

36 36 Resumo dos métodos utilizados por agentes probabilistas DPC Redução da complexidade na aquisição das probabilidades RB com CPT RB com noisy-or e det. nodes Redução da complexidade da inferência (e da precisão) DPC e marginalização RB com inf. Exata RB Amo. D./ Rej. S. RB Likelihood W. RB MCMC

37 37 Amostragem direta Chuva Aguador Nublado Molhado Amostra de = true Amostra de P(Aguador|Nublado = true) = false Amostra de P(Chuva|Nublado = true) = true Amostra de P(Molhado|Aguador = false, Chuva = true) = true Evento atômico: [true, false, true, true]

38 38 Amostragem direta lim N  [N amostras (x 1,...,x n )/N] = P(x 1,...,x n ) Quanto mais amostras, mais consistente a aproximação da DPC Exemplo: Se em 1000 amostras, 511 delas tem Chuva = true, P(chuva) = Problema: como responder a consultas do tipo P(X|evidencia)? Nublado Chuva Molhado Aguador

39 39 Rejection Sampling Calculando P(X|e) Gera-se várias amostras, descartando as que e não é verdade N amostras (X,e)/N amostras (e) = [P(X,e) x N] / [P(e) x N] = P(X,e) / P(e) = P(X|e) =  N amostras (X,e) Ex. Calcular P(Chuva|Aguador = true) De 100 amostras, 73 tem Aguador = false e são rejeitadas Das 27, 8 tem Chuva = true e 19 não P(Chuva|Aguador = true)  Normalizar( ) = Problema: Se P(e) pequena, muitas amostras terão que ser rejeitadas até que se consiga uma estimativa consistente Nublado Chuva Molhado Aguador

40 40 Likelihood weighting Só gera amostras consistentes com as evidências Associa um peso a cada amostra, que significa o quão significativa é esta amostra P(x|e)   y N ws (x,y,e)w(x,y,e) Fazendo amostra em P(Chuva|aguador, molhado): W = 1 Suponha que amostra de Nublado seja true Para Aguador=true: w = w x P(aguador|nublado) Amostra de Chuva em P(Chuva|nublado) é true Para Molhado=true: w = w x P(molhado|aguador, chuva) [true, true, true, true] tem peso Problemas Quanto mais evidências, pior a performance (mais amostras são necessárias), principalmente se as evidências estão no final da rede Nublado Chuva Molhado Aguador

41 41 Simulação por cadeias de Markov (Markov Chain Monte Carlo) Gera resultados consistentes mais rapidamente Cada evento atômico é um estado Próximos estados são gerados amostrando as variáveis (que não são evidências), condicionada aos valores do Markov Blanket O próximo estado é formado pelo estado anterior, alterando apenas uma variável Prova de que funciona: AIMA, 2nd edition, página 517

42 42 MCMC: Exemplo Query: P(Chuva|Aguador = true, Molhado = true) Nublado e Chuva são inicializados randômicamente com (true, false), evidências são mantidas Estado inicial: [true,true, false, true] Nublado é amostrada segundo o seu Markov Blanket de P(Nublado|Aguador = true, Chuva = false), gerando um novo estado: Ex. [false, true, false, true] Chuva é amostrada segundo o seu Markov Blanket: P(Chuva|Nublado = false, Aguador = true, Molhado = true), gerando um novo estado [false, true, true, true] A resposta a query é dada normalizando a quantidade de eventos atômicos em que Chuva = true e Chuva = false Nublado Chuva Molhado Aguador

43 43 Probabilidade e representações de primeira ordem Redes Bayesianas são proposicionais Restringe seu uso em muitos domínios Problema de estender para lógica de primeira ordem: Base de conhecimento precisaria especificar as probabilidades para todos os modelos possíveis Aplicações existentes: Relational Probability models

44 44 Relational Probability Models Constantes, nomeando objetos de classes Ex: ProfSmith pertence a classe Professor, Jones pertence a classe Estudante, Bloggs pertence a classe Estudante Funções Simples: classes -> imagem finita Ex: Inteligencia(Jones) = {alta, baixa}, Famoso(ProfSmith) = {true, false} Funções Complexas: de classes em classes Ex: Orientador(Jones) = ProfSmith Informação probabilística: especificar pais para as funções simples  x, x  Estudante  Parents(Sucesso(x)) = {Inteligencia(x), Famoso(Orientador(x))}  x, x  Estudante  P(Sucesso(x) = true| Inteligencia(x) = alta, Famoso(Orientador(x)) = true) = 0.95 Redes bayesianas podem ser criadas a partir de um RPM, em um processo semelhante ao da proposicionalização

45 45 Relational Probability Models Professor Student Fame Funding Inteligence Success Advisor Fame(ProfSmith) Funding(ProfSmith) Intelligence(Bloggs) Success(Bloggs) Intelligence(Jones) Success(Jones)

46 46 Outras maneiras de lidar com incertezas Default reasoning Conclusões são tratadas como verdadeiras, até que algum outro fato leve a acreditar em outra coisa Baseados em regras Adicionar um “fudge factor” a regras para acomodar incertezas Teoria de Dempster-Shafer Probabilidade não trata ignorância Moeda: Se ela é honesta, P(Cara) =, se ela for desonesta mas desconhecida, P(Cara) = Lógica Fuzzy O que foi apresentado trata grau de certeza sobre existência de fatos que são verdadeiros ou falso. Lógica Fuzzy:eventos podem ser +/- verdade


Carregar ppt "Agentes Probabilistas Seminário da disciplina Métodos de Computação Inteligentes Hugo Pimentel de Santana"

Apresentações semelhantes


Anúncios Google