Redes Bayesianas Disciplina: Sistemas Inteligentes Tópicos Introdução Noções de Probabilidade Redes Bayesianas Aplicações Conclusões Bibliografia Conhecimento com Incerteza Exemplo: sistema de diagnóstico odontológico Regra de diagnóstico " p sintoma (p,dor de dente) doença (p,cárie) A doença (causa do sintoma) pode ser outra. Regra causal " p doença (p,cárie) sintoma (p,dor de dente) Há circunstâncias em que a doença não provoca o sintoma. A conexão entre antecedente e conseqüente não é uma implicação lógica em nenhuma direção Conhecimento com Incerteza Agentes em Lógica de Primeira Ordem enfrentam dificuldades em situações onde: o agente não tem acesso a todo o ambiente o agente tem uma compreensão incompleta ou incorreta do ambiente Conhecimento com Incerteza A lógica de primeira ordem falha no domínio de diagnóstico médico devido a: “preguiça”: existem causas ou conseqüências demais a considerar ignorância teórica e prática: não existe uma teoria completa para o domínio, nem podemos fazer todos os testes necessários para o diagnóstico perfeito. Nestes casos, o conhecimento do agente pode apenas prover um grau de crença nas sentenças relevantes. P(Cárie/Dor de Dente) = 0.6 Teoria da Probabilidade Associa às sentenças um grau de crença numérico entre 0e1 Contudo, cada sentença ou é verdadeira ou é falsa Grau de crença(probabilidade): a priori(incondicional): calculado antes do agente receber percepções Ex. P(cárie= true) = P(cárie) = 0.5 condicional: calculado de acordo com as evidências disponíveis evidências: percepções que o agente recebeu até agora Ex: P(cárie|dor de dente)= 0.8 P(cárie|~dor de dente)= 0.3 Probabilidade condicional Probabilidade condicional (a posteriori) de A dado que B ocorreu é definida por: P(A|B) = P(AB) , quando P(B) > 0. P(B) Probabilidade condicional: possibilita inferência sobre uma proposição desconhecida A dada a evidência B Regra de Bayes Equação para o Teorema de Bayes : P(A/B) = P(B/A)P(A) P(B) Pode-se estender esta expressão para o caso em que a dependência condicional está associada a mais de uma evidência previa: P(A/B,E) = P(B/A,E)P(A/E) P(B/E) Aplicação da Regra de Bayes: Diagnóstico Médico •Seja M=doença meningite S= rigidez no pescoço •Um Doutor sabe: P(S/M)=0.5 P(M)=1/50000 P(S)=1/20 P(M/S)=P(S/M)P(M) P(S) =0,5*(1/50000)=0,002 1/20 •A probabilidade de uma pessoa ter meningite dado que ela está com rigidez no pescoço é 0,02% ou ainda 1 em 5000. Probabilidade Condicional e Independência Independência: P(A|B) = P(A) Exemplo: A = dor de dente e B=úlcera Úlcera não causa dor de dente Eventos mutuamente excludentes P(A B) = 0 Experimento: Lançamento de um dado A = a face do dado é ímpar e B = a face do dado é par Independência condicional Seja X e Y independentes dado Z => P(X|Y,Z) = P(X|Z) Independência condicional é crucial para o funcionamento eficaz de sistemas probabilísticos. Independência Condicional P(X|Y,Z) = P(X|Z) Isso quer dizer que se o objetivo é saber a probabilidade de X então tanto faz o valor de Y se você já sabe o valor de Z Exemplo: Trovão é condicionalmente independente de Chuva, dado Relâmpago P(Trovão/ Chuva, Relâmpago) = P(Trovão/ Relâmpago) Distribuição de Probabilidade Conjunta Sejam Y1, Y2,...Yn um conjunto de variáveis. Evento atômico: uma especificação completa dos estados do domínio Y1= y1,Y2 = y2,....,Yn= yn A distribuição de probabilidade conjunta, P(Y1,Y2,...,Yn), atribui probabilidades a todos os possíveis eventos atômicos Exemplo: Probabilidade Conjunta dor de dente dor de dente cárie 0.04 0.06 cárie 0.01 0.89 P(cárie ^ dor de dente)=? P(cárie)=? P(dor de dente)=? P(cárie/dor de dente)=? Teorema da Multiplicação de Probabilidades P(y1^...yn) = P(yn / y1^...yn-1) ... P(y1^...yn-1) P(y1^...yn) = P(yn / y1^...yn-1) ... P(y2 / y1) P(y1) Esse resultado permite calcular a probabilidade de ocorrência simultânea de vários eventos a partir das probabilidades condicionais. Redes Bayesianas: Representação do Conhecimento com Incerteza Representa 3 tipos de conhecimento do domínio: Relações de independência entre variáveis aleatórias Probabilidades a priori de algumas variáveis Probabilidades condicionais entre variáveis dependentes Permite calcular eficientemente: Probabilidades a posteriori de qualquer variável aleatória (inferência) Conhecimento representado: Pode ser aprendido a partir de exemplos Reutilizando parte dos mecanismos de raciocínio Semântica da Rede Bayesiana Representação da distribuição de Probabilidade Conjunta das variáveis de interesse: P(y1^...yn) Redes Bayesianas levam em consideração a independência condicional entre subconjuntos de variáveis Estrutura das Redes Bayesianas Uma Rede Bayesiana é um grafo acíclico e dirigido onde: Cada nó da rede representa uma variável aleatória Um conjunto de ligações ou arcos dirigidos conectam pares de nós cada nó recebe arcos dos nós que tem influência direta sobre ele (nós pais). Cada nó possui uma tabela de probabilidade condicional associada que quantifica os efeitos que os pais têm sobre ele Redes Bayesianas Tempestade Ônibus de Turismo Fogo no Acampamento Raio Trovão Fogo na floresta T,O T,O T, O T, O Distribuição de Probabilidade: P(FA/T,O) FA 0.4 FA 0.6 0.1 0.9 0.8 0.2 0.2 0.8 Fogo no Acampamento Redes Bayesianas Representa a distribuição de probabilidade conjunta entre todas as variáveis: P(y1^...^yn) Exemplo: P(Tempestade, , Fogo na Floresta)? Exemplo: P(Classe=C1 ^ Atrib1=10 ^ Atrib2=Yes)? Cálculo da probabilidade conjunta: n P( y1 ,, y n ) P( y i / Pr edecessore s(Yi )) i 1 Onde Predecessores(Yi) significa predecessores imediatos de Yi no grafo Redes Bayesianas: Cálculo da Probabilidade Conjunta Lembrem-se do teorema da multiplicação de probabilidades P(y1^...yn) = P(yn / y1^...yn-1) ... P(y2 / y1) P(y1) P(yn / Predecessores(Yn)) n P(y2 / Predecessores(Y2) P( y1 ,, y n ) P( y i / Pr edecessore s(Yi )) i 1 Exemplo Alarme (AIMA) P(R) P(T) 0,001 0,002 Roubo Terremoto R T P(A) Alarme A T T F F T F T F 0,95 0,94 0,29 0,001 P(J) T 0,90 F 0,05 JohnCalls A P(M) MaryCalls T 0,70 F 0,01 Exemplo Alarme (AIMA) Calcular a probabilidade do evento que o alarme toca mas não houve assalto nem terremoto e que João e Maria telefonaram. P(J M A ~R ~T) = P(J|A) P(M|A) P(A|~R ~T )P(~R)P(~T) = 0.9 x 0.7 x 0.001 x 0.999 x 0.998 = 0.00062 ou 0.062 % Engenharia do conhecimento para Redes Bayesianas 1. Escolher um conjunto de variáveis relevantes que descrevam o domínio 2. Ordem de inclusão dos nós na rede (a). causas como “raízes” da rede (b). variáveis que elas influenciam (c). folhas, que não influenciam diretamente nenhuma outra variável. 3. Enquanto houver variáveis a representar: (a). escolher uma variável Xi e adicionar um nó para ela na rede (b). estabelecer Pais(Xi) dentre os nós que já estão na rede, satisfazendo a propriedade de dependência condicional (c). definir a tabela de probabilidade condicional para Xi Exemplo Alarme (AIMA) Ordem: R T A J M P(R) 0,001 P(T) Roubo Terremoto 0,002 R T P(A) Alarme A T T F F T F T F 0,95 0,94 0,29 0,001 P(J) T 0,90 F 0,05 JohnCalls A P(M) MaryCalls T 0,70 F 0,01 Exemplo de Rede Bayesiana Não Puramente Causal Vamos usar o exemplo do alarme com a seguinte ordem de inserção dos nós: MaryCalls, JohnCalls, Alarme, Roubo e Terremoto. MaryCalls JohnCalls Alarme Roubo Terremoto Exemplo de Rede Bayesiana Não Puramente Causal Problemas: A figura possui duas conexões a mais julgamento não natural e difícil das probabilidades Tendo uma rede puramente causal, teríamos um número menor de conexões Exercício Construa uma rede para o problema abaixo. Eu quero prever se minha esposa está em casa antes de eu abrir a porta. Eu sei que minha esposa liga a luz quando chega em casa, mas as vezes ela também liga ao sair se ela for retornar com alguma visita. Quando não tem ninguém em casa, ela solta o cachorro no quintal, mas às vezes ela solta o cachorro quando ele está molhado. Quando o cachorro está solto, consigo ouvir o seu latido da rua mas as vezes o confundo com o cachorro da vizinha. Tipos de Inferência em Redes Bayesianas Causal (da causa para o efeito) P(JohnCalls/Roubo) = 0,86 Roubo Alarme JohnCalls Evidência Query Diagnóstico (do efeito para a causa) P(Roubo/JohnCalls) = 0,016 JohnCalls Evidência Alarme Roubo Query Tipos de Inferência em Redes Bayesianas Intercausal (entre causas com um efeito comum) P(Roubo/Alarme) = 0,376 P(Roubo/Alarme Terremoto) = 0,373 Alarme Roubo Query Terremoto Evidência Evidência Mista (combinando duas ou mais das de cima) P(Alarme/JohnCalls Terremoto) = 0,03 Este é um uso simultâneo de inferência causal e diagnóstico. JohnCalls Evidência Alarme Query Terremoto Evidência Aplicações de Redes Bayesianas PATHFINDER: diagnóstico de doenças que atacam os nodos linfáticos. (Russel&Norvig 1995) PAINULIM: diagnóstico de doenças neuromusculares: http://snowhite.cis.uoguelph.ca/faculty_info/yxiang/r esearch.html Tutores inteligentes: www.pitt.edu/~vanlehn/andes.html Aplicações de Redes Bayesianas Mais aplicações: http://excalibur.brc.uconn.edu/~baynet/researchApps.htm Análise de proteínas Modelagem de Agentes Inteligentes Detecção de fraudes na indústria Robótica Conclusões Possibilidade de trabalhar com domínios onde não há informação suficiente Raciocínio probabilístico trata o grau de incerteza associado à maioria dos domínios. Combina conhecimento a priori com dados observados O impacto do conhecimento a priori (quando correto) é a redução da amostra de dados necessários Conclusões Redes Bayesianas são usadas em muitas aplicações do mundo real. Área de pesquisa ativa Engenharia de conhecimento Complexidade dos algoritmos para inferência Aprendizado Bibliografia Russel, S, & Norvig, P. (1995). Artificial Intelligence: a Modern Approach (AIMA) Prentice-Hall. Pages 436-458, 588-593 Mitchell, T. & (1997): Machine Learning, McGrawHill. Cap.6 Fayyad et al. (1996): Advances in knowledge discovery and data mining, AAAI Press/MIT Press. Cap.11 Pearl, J. (1988) Probabilistic Reasoning in Inteligent Systems Software http://www.ai.mit.edu/~murphyk/Bayes/bnsoft.html