Rede Bayesiana - Bayesian network

Uma rede bayesiana (também conhecida como rede Bayesiana , rede Bayesiana , rede de crença ou rede de decisão ) é um modelo gráfico probabilístico que representa um conjunto de variáveis ​​e suas dependências condicionais por meio de um gráfico acíclico direcionado (DAG). As redes bayesianas são ideais para pegar um evento que ocorreu e prever a probabilidade de que qualquer uma das várias causas conhecidas possíveis tenha sido o fator contribuinte. Por exemplo, uma rede bayesiana pode representar as relações probabilísticas entre doenças e sintomas. Dados os sintomas, a rede pode ser usada para calcular as probabilidades da presença de várias doenças.

Algoritmos eficientes podem realizar inferência e aprendizado em redes Bayesianas. As redes bayesianas que modelam sequências de variáveis ​​( por exemplo , sinais de voz ou sequências de proteínas ) são chamadas de redes Bayesianas dinâmicas . As generalizações de redes bayesianas que podem representar e resolver problemas de decisão sob incerteza são chamadas de diagramas de influência .

Modelo gráfico

Formalmente, as redes bayesianas são grafos acíclicos direcionados (DAGs) cujos nós representam variáveis ​​no sentido bayesiano : podem ser quantidades observáveis, variáveis ​​latentes , parâmetros desconhecidos ou hipóteses. As bordas representam dependências condicionais; nós que não estão conectados (nenhum caminho conecta um nó a outro) representam variáveis ​​que são condicionalmente independentes umas das outras. Cada nó está associado a uma função de probabilidade que assume, como entrada, um determinado conjunto de valores para as variáveis pai do nó , e dá (como saída) a probabilidade (ou distribuição de probabilidade, se aplicável) da variável representada pelo nó. Por exemplo, se os nós pais representam variáveis ​​booleanas , então a função de probabilidade pode ser representada por uma tabela de entradas, uma entrada para cada uma das combinações pai possíveis. Idéias semelhantes podem ser aplicadas a gráficos não direcionados e possivelmente cíclicos, como redes de Markov .

Exemplo

Uma rede bayesiana simples com tabelas de probabilidade condicional

Dois eventos podem fazer com que a grama fique molhada: um aspersor ativo ou chuva. A chuva tem um efeito direto sobre o uso do aspersor (ou seja, quando chove, o aspersor geralmente não está ativo). Esta situação pode ser modelada com uma rede Bayesiana (mostrada à direita). Cada variável tem dois valores possíveis, T (para verdadeiro) e F (para falso).

A função de probabilidade conjunta é, pela regra da cadeia de probabilidade ,

onde G = "Grama molhada (verdadeiro / falso)", S = "Aspersor ligado (verdadeiro / falso)" e R = "Chovendo (verdadeiro / falso)".

O modelo pode responder a perguntas sobre a presença de uma causa dada a presença de um efeito (a chamada probabilidade inversa) como "Qual é a probabilidade de que esteja chovendo, visto que a grama está molhada?" usando a fórmula de probabilidade condicional e somando todas as variáveis ​​incômodas :

Usando a expansão para a função de probabilidade conjunta e as probabilidades condicionais das tabelas de probabilidade condicional (CPTs) indicadas no diagrama, pode-se avaliar cada termo nas somas no numerador e denominador. Por exemplo,

Em seguida, os resultados numéricos (subscritos pelos valores das variáveis ​​associadas) são

Para responder a uma pergunta de intervenção, como "Qual é a probabilidade de chover, visto que molhamos a grama?" a resposta é governada pela função de distribuição conjunta pós-intervenção

obtido removendo o fator da distribuição pré-intervenção. O operador do força o valor de G a ser verdadeiro. A probabilidade de chuva não é afetada pela ação:

Para prever o impacto de ligar o sprinkler:

com o termo removido, mostrando que a ação afeta a grama, mas não a chuva.

Essas previsões podem não ser viáveis ​​dadas as variáveis ​​não observadas, como na maioria dos problemas de avaliação de políticas. O efeito da ação ainda pode ser previsto, no entanto, sempre que o critério da porta dos fundos for satisfeito. Ele afirma que, se um conjunto Z de nós pode ser observado que d separadores (ou blocos) todos os caminhos para trás de portas de X para Y , em seguida

Um caminho de volta-porta é um que termina com uma seta em X . Os conjuntos que satisfazem o critério da porta dos fundos são chamados de "suficientes" ou "admissíveis". Por exemplo, o conjunto Z  =  R é admissível para prever o efeito de S  =  T em G , porque R d separadores a (única) caminho de volta-porta S  ←  R  →  L . No entanto, se S não for observado, nenhum outro conjunto d separa esse caminho e o efeito de ligar o aspersor ( S  =  T ) na grama ( G ) não pode ser previsto a partir de observações passivas. Nesse caso, P ( G  | do ( S  =  T )) não é "identificado". Isso reflete o fato de que, na falta de dados de intervenção, a dependência observada entre S e G é devido a uma conexão causal ou é espúria (dependência aparente decorrente de uma causa comum, R ). (veja o paradoxo de Simpson )

Para determinar se uma relação causal é identificada a partir de uma rede Bayesiana arbitrária com variáveis ​​não observadas, pode-se usar as três regras de " do- cálculo" e testar se todos os termos do podem ser removidos da expressão dessa relação, confirmando assim que o desejado a quantidade é estimável a partir de dados de frequência.

Usar uma rede bayesiana pode economizar uma quantidade considerável de memória em tabelas de probabilidade exaustivas, se as dependências na distribuição conjunta forem esparsas. Por exemplo, uma maneira ingênua de armazenar as probabilidades condicionais de 10 variáveis ​​de dois valores como uma tabela requer espaço de armazenamento para valores. Se a distribuição local de nenhuma variável depende de mais de três variáveis ​​pai, a representação da rede Bayesiana armazena a maioria dos valores.

Uma vantagem das redes bayesianas é que é intuitivamente mais fácil para um ser humano entender (um conjunto esparso de) dependências diretas e distribuições locais do que distribuições conjuntas completas.

Inferência e aprendizagem

As redes bayesianas realizam três tarefas principais de inferência:

Inferindo variáveis ​​não observadas

Como uma rede bayesiana é um modelo completo para suas variáveis ​​e seus relacionamentos, ela pode ser usada para responder a perguntas probabilísticas sobre elas. Por exemplo, a rede pode ser usada para atualizar o conhecimento do estado de um subconjunto de variáveis ​​quando outras variáveis ​​(as variáveis ​​de evidência ) são observadas. Este processo de calcular a distribuição posterior de variáveis ​​dadas evidências é chamado de inferência probabilística. A posterior fornece uma estatística suficiente universal para aplicações de detecção, ao escolher valores para o subconjunto de variáveis ​​que minimizam alguma função de perda esperada, por exemplo, a probabilidade de erro de decisão. Uma rede bayesiana pode, portanto, ser considerada um mecanismo para aplicar automaticamente o teorema de Bayes a problemas complexos.

Os métodos de inferência exata mais comuns são: eliminação de variável , que elimina (por integração ou somatório) as variáveis ​​não observadas não consultadas uma a uma, distribuindo a soma sobre o produto; propagação de árvore de cliques , que armazena em cache a computação de forma que muitas variáveis ​​possam ser consultadas ao mesmo tempo e novas evidências possam ser propagadas rapidamente; e condicionamento recursivo e pesquisa AND / OR, que permitem uma compensação de espaço-tempo e correspondem à eficiência da eliminação de variável quando espaço suficiente é usado. Todos esses métodos têm uma complexidade exponencial na largura da árvore da rede . Os algoritmos de inferência aproximada mais comuns são amostragem de importância , simulação MCMC estocástica , eliminação de mini-balde, propagação de crença maluca , propagação de crença generalizada e métodos variacionais .

Aprendizagem de parâmetros

Para especificar completamente a rede bayesiana e, assim, representar totalmente a distribuição de probabilidade conjunta , é necessário especificar para cada nó X a distribuição de probabilidade de X condicional aos pais de X. A distribuição de X condicionada a seus pais pode ter qualquer forma. É comum trabalhar com distribuições discretas ou gaussianas, pois isso simplifica os cálculos. Às vezes, apenas as restrições à distribuição são conhecidas; pode-se então usar o princípio da entropia máxima para determinar uma única distribuição, aquela com a maior entropia, dadas as restrições. (Analogamente, no contexto específico de uma rede Bayesiana dinâmica , a distribuição condicional para a evolução temporal do estado oculto é comumente especificada para maximizar a taxa de entropia do processo estocástico implícito.)

Freqüentemente, essas distribuições condicionais incluem parâmetros que são desconhecidos e devem ser estimados a partir de dados, por exemplo, por meio da abordagem de máxima verossimilhança . A maximização direta da probabilidade (ou da probabilidade posterior ) é freqüentemente complexa, dadas as variáveis ​​não observadas. Uma abordagem clássica para este problema é o algoritmo de maximização da expectativa , que alterna o cálculo dos valores esperados das variáveis ​​não observadas condicionais aos dados observados, com a maximização da probabilidade completa (ou posterior) assumindo que os valores esperados calculados anteriormente estão corretos. Em condições de regularidade moderada, esse processo converge em valores de máxima verossimilhança (ou posterior máximo) para os parâmetros.

Uma abordagem mais totalmente bayesiana para os parâmetros é tratá-los como variáveis ​​não observadas adicionais e calcular uma distribuição posterior completa sobre todos os nós condicionais aos dados observados e, em seguida, integrar os parâmetros. Essa abordagem pode ser cara e levar a modelos de grande dimensão, tornando as abordagens clássicas de definição de parâmetros mais tratáveis.

Aprendizagem de estrutura

No caso mais simples, uma rede bayesiana é especificada por um especialista e então usada para realizar inferências. Em outras aplicações, a tarefa de definir a rede é muito complexa para humanos. Nesse caso, a estrutura da rede e os parâmetros das distribuições locais devem ser aprendidos a partir dos dados.

Aprender automaticamente a estrutura de grafos de uma rede Bayesiana (BN) é um desafio perseguido no aprendizado de máquina . A ideia básica remonta a um algoritmo de recuperação desenvolvido por Rebane e Pearl e se baseia na distinção entre os três padrões possíveis permitidos em um DAG de 3 nós:

Padrões de junção
Padrão Modelo
Cadeia
Garfo
Collider

Os 2 primeiros representam as mesmas dependências ( e são dados independentes ) e são, portanto, indistinguíveis. O colisor, no entanto, pode ser identificado de forma única, uma vez que e são marginalmente independentes e todos os outros pares são dependentes. Assim, embora os esqueletos (os gráficos sem setas) desses três trigêmeos sejam idênticos, a direcionalidade das setas é parcialmente identificável. A mesma distinção se aplica quando e tem pais em comum, exceto que se deve primeiro condicionar a esses pais. Algoritmos foram desenvolvidos para determinar sistematicamente o esqueleto do gráfico subjacente e, então, orientar todas as setas cuja direcionalidade é ditada pelas independências condicionais observadas.

Um método alternativo de aprendizagem estrutural usa pesquisa baseada em otimização. Requer uma função de pontuação e uma estratégia de busca. Uma função de pontuação comum é a probabilidade posterior da estrutura dada os dados de treinamento, como o BIC ou o BDeu. A exigência de tempo de uma busca exaustiva retornando uma estrutura que maximize a pontuação é superexponencial no número de variáveis. Uma estratégia de busca local faz mudanças incrementais com o objetivo de melhorar a pontuação da estrutura. Um algoritmo de busca global como a cadeia de Markov Monte Carlo pode evitar ficar preso em mínimos locais . Friedman et al. discutir o uso de informações mútuas entre variáveis ​​e encontrar uma estrutura que maximize isso. Eles fazem isso restringindo o conjunto de candidatos pai a k nós e pesquisando exaustivamente neles.

Um método particularmente rápido para o aprendizado exato de BN é lançar o problema como um problema de otimização e resolvê-lo usando programação inteira . Restrições de aciclicidade são adicionadas ao programa de inteiros (IP) durante a resolução na forma de planos de corte . Esse método pode lidar com problemas com até 100 variáveis.

Para lidar com problemas com milhares de variáveis, uma abordagem diferente é necessária. Um é primeiro amostrar um pedido e, em seguida, encontrar a estrutura BN ótima com relação a esse pedido. Isso implica trabalhar no espaço de busca das ordenações possíveis, o que é conveniente por ser menor que o espaço das estruturas da rede. Vários pedidos são então amostrados e avaliados. Este método tem se mostrado o melhor disponível na literatura quando o número de variáveis ​​é enorme.

Outro método consiste em focar na subclasse de modelos decomponíveis, para os quais o MLE possui uma forma fechada. Então, é possível descobrir uma estrutura consistente para centenas de variáveis.

O aprendizado de redes bayesianas com largura de árvore limitada é necessário para permitir inferência exata e tratável, uma vez que a complexidade de inferência de pior caso é exponencial na largura de árvore k (sob a hipótese de tempo exponencial). Ainda, como uma propriedade global do gráfico, aumenta consideravelmente a dificuldade do processo de aprendizagem. Neste contexto, é possível usar K-tree para uma aprendizagem eficaz.

Introdução estatística

Dados e parâmetros dados , uma análise bayesiana simples começa com uma probabilidade anterior ( anterior ) e probabilidade de calcular uma probabilidade posterior .

Freqüentemente, o anterior depende, por sua vez, de outros parâmetros que não são mencionados na probabilidade. Portanto, o anterior deve ser substituído por uma verossimilhança , e um anterior nos parâmetros recém-introduzidos é necessário, resultando em uma probabilidade posterior

Este é o exemplo mais simples de um modelo Bayes hierárquico .

O processo pode ser repetido; por exemplo, os parâmetros podem depender, por sua vez , de parâmetros adicionais , que exigem sua própria priorização. Eventualmente, o processo deve ser encerrado, com antecedentes que não dependem de parâmetros não mencionados.

Exemplos introdutórios

Dadas as quantidades medidas, cada uma com erros normalmente distribuídos de desvio padrão conhecido ,

Suponha que estejamos interessados ​​em estimar o . Uma abordagem seria estimar o uso de uma abordagem de máxima verossimilhança ; uma vez que as observações são independentes, a probabilidade fatoriza e a estimativa de máxima verossimilhança é simplesmente

No entanto, se as quantidades estão relacionadas, de modo que, por exemplo, o próprio indivíduo foi retirado de uma distribuição subjacente, então esta relação destrói a independência e sugere um modelo mais complexo, por exemplo,

com antecedentes impróprios , . Quando , este é um modelo identificado (ou seja, existe uma solução única para os parâmetros do modelo), e as distribuições posteriores do indivíduo tendem a se mover ou diminuir das estimativas de máxima verossimilhança em direção à sua média comum. Essa redução é um comportamento típico em modelos Bayes hierárquicos.

Restrições a anteriores

Algum cuidado é necessário ao escolher anteriores em um modelo hierárquico, particularmente em variáveis ​​de escala em níveis mais altos da hierarquia, como a variável no exemplo. Os priors usuais, como o prior de Jeffreys, muitas vezes não funcionam, porque a distribuição posterior não será normalizável e as estimativas feitas minimizando a perda esperada serão inadmissíveis .

Definições e conceitos

Várias definições equivalentes de uma rede bayesiana foram oferecidas. Para o seguinte, deixou G = ( V , E ) ser um gráfico acíclico dirigido (DAG) e deixe que X = ( X v ), vV ser um conjunto de variáveis aleatórias indexados por V .

Definição de fatoração

X é uma rede bayesiana em relação a G se sua função de densidade de probabilidade conjunta (em relação a uma medida de produto ) pode ser escrita como um produto das funções de densidade individuais, condicional às suas variáveis ​​pai:

onde pa ( v ) é o conjunto de pais de v (ou seja, aqueles vértices apontando diretamente para v através de uma única aresta).

Para qualquer conjunto de variáveis ​​aleatórias, a probabilidade de qualquer membro de uma distribuição conjunta pode ser calculada a partir de probabilidades condicionais usando a regra da cadeia (dada uma ordem topológica de X ) da seguinte forma:

Usando a definição acima, isso pode ser escrito como:

A diferença entre as duas expressões é a independência condicional das variáveis ​​de qualquer uma de suas não descendentes, dados os valores de suas variáveis ​​pai.

Propriedade local de Markov

X é uma rede bayesiana em relação a G se ela satisfaz a propriedade Markov local : cada variável é condicionalmente independente de suas não descendentes, dadas suas variáveis ​​pai:

onde de ( v ) é o conjunto de descendentes e V  \ de ( v ) é o conjunto de não descendentes de v .

Isso pode ser expresso em termos semelhantes à primeira definição, como

O conjunto de pais é um subconjunto do conjunto de não descendentes porque o gráfico é acíclico .

Desenvolvimento de redes bayesianas

Desenvolvimento de uma rede Bayesiana muitas vezes começa com a criação de um DAG G tal que X satisfaz a propriedade local de Markov em relação ao G . Às vezes, este é um DAG causal . As distribuições de probabilidade condicional de cada variável, dados seus pais em G, são avaliadas. Em muitos casos, em particular no caso em que as variáveis são discretas, se a distribuição conjunta de X é o produto destas distribuições condicionais, então X é uma rede Bayesiana com respeito a G .

Manta de markov

O cobertor Markov de um nó é o conjunto de nós que consiste em seus pais, seus filhos e quaisquer outros pais de seus filhos. O cobertor de Markov torna o nó independente do resto da rede; a distribuição conjunta das variáveis ​​na manta de Markov de um nó é conhecimento suficiente para calcular a distribuição do nó. X é uma rede bayesiana com respeito a G se cada nó for condicionalmente independente de todos os outros nós da rede, dada sua manta de Markov .

d -separação

Esta definição pode ser tornada mais geral definindo a separação "d" de dois nós, onde d significa direcional. Primeiro definimos a separação "d" de uma trilha e então definiremos a separação "d" de dois nós em termos disso.

Seja P uma trilha do nó u para v . Uma trilha é um caminho sem loop e não direcionado (ou seja, todas as direções das bordas são ignoradas) entre dois nós. Então P é dito ser d -separado por um conjunto de nós Z se qualquer uma das seguintes condições se mantiver:

  • P contém (mas não precisa ser inteiramente) uma cadeia direcionada, ou , de modo que o nó do meio m está em Z ,
  • P contém uma bifurcação, de modo que o nó do meio m está em Z , ou
  • P contém um garfo invertido (ou colisor), de tal modo que o meio nó m não é em Z e nenhum descendente de m está em Z .

Os nós de u e v são d -separated por Z se todas as fugas entre eles são d -separated. Se u e v não são d-separados, eles são d-ligado.

X é uma rede bayesiana em relação a G se, para quaisquer dois nós u , v :

onde Z é um conjunto que d -separa u e v . (O cobertor de Markov é o conjunto mínimo de nodos que d separadores nó v a partir de todos os outros nós.)

Redes causais

Embora as redes Bayesian são muitas vezes utilizados para representar causais relacionamentos, isso não precisa ser o caso: a aresta direcionada de u para v não exige que X v ser causalmente dependente X u . Isso é demonstrado pelo fato de que as redes Bayesianas nos gráficos:

são equivalentes: isto é, impõem exatamente os mesmos requisitos de independência condicional.

Uma rede causal é uma rede bayesiana com o requisito de que as relações sejam causais. A semântica adicional de redes causais especifica que se um nó X é ativado ativamente para estar em um determinado estado x (uma ação escrita como fazer ( X  =  x )), então a função de densidade de probabilidade muda para aquela da rede obtida cortando o links dos pais de X a X , e definindo X para o valor causado x . Usando essa semântica, o impacto das intervenções externas de dados obtidos antes da intervenção pode ser previsto.

Complexidade de inferência e algoritmos de aproximação

Em 1990, enquanto trabalhava na Universidade de Stanford em grandes aplicações de bioinformática, Cooper provou que a inferência exata em redes bayesianas é NP-difícil . Este resultado motivou pesquisas sobre algoritmos de aproximação com o objetivo de desenvolver uma aproximação tratável para inferência probabilística. Em 1993, Paul Dagum e Michael Luby provaram dois resultados surpreendentes sobre a complexidade da aproximação da inferência probabilística em redes bayesianas. Primeiro, eles provaram que nenhum algoritmo determinístico tratável pode aproximar a inferência probabilística dentro de um erro absoluto ɛ  <1/2. Em segundo lugar, eles provaram que nenhum algoritmo randomizado tratável pode aproximar a inferência probabilística dentro de um erro absoluto ɛ  <1/2 com probabilidade de confiança maior que 1/2.

Quase ao mesmo tempo, Roth provou que a inferência exata em redes bayesianas é de fato # P-completa (e, portanto, tão difícil quanto contar o número de atribuições satisfatórias de uma fórmula de forma normal conjuntiva (CNF) e que inferência aproximada dentro de um fator 2 n 1− ɛ para todo ɛ > 0, mesmo para redes bayesianas com arquitetura restrita, é NP-difícil.

Em termos práticos, esses resultados de complexidade sugeriram que, embora as redes bayesianas fossem representações ricas para aplicativos de IA e aprendizado de máquina, seu uso em grandes aplicativos do mundo real precisaria ser moderado por restrições estruturais topológicas, como redes Bayes ingênuas, ou por restrições nas probabilidades condicionais. O algoritmo de variância limitada desenvolvido por Dagum e Luby foi o primeiro algoritmo de aproximação rápida comprovável a aproximar eficientemente a inferência probabilística em redes Bayesianas com garantias na aproximação do erro. Esse poderoso algoritmo exigia que a restrição menor nas probabilidades condicionais da rede bayesiana fosse limitada a zero e um por 1 / p ( n ), onde p ( n ) era qualquer polinômio no número de nós na rede  n .

Programas

Softwares notáveis ​​para redes Bayesianas incluem:

  • Apenas outro sampler Gibbs (JAGS) - Alternativa de código aberto para WinBUGS. Usa amostragem de Gibbs.
  • OpenBUGS - Desenvolvimento de código aberto de WinBUGS.
  • SPSS Modeler - Software comercial que inclui uma implementação para redes Bayesianas.
  • Stan (software) - Stan é um pacote de código aberto para obter inferência Bayesiana usando o No-U-Turn sampler (NUTS), uma variante do Hamiltoniano Monte Carlo.
  • PyMC3 - Uma biblioteca Python que implementa uma linguagem específica de domínio incorporada para representar redes bayesianas e uma variedade de amostradores (incluindo NUTS)
  • BNLearn - Uma biblioteca Python com mais recursos e permite a expansão de uma rede bayesiana regular.
  • WinBUGS - uma das primeiras implementações computacionais de amostradores MCMC. Não é mais mantido.

História

O termo rede bayesiana foi cunhado por Judea Pearl em 1985 para enfatizar:

  • a natureza frequentemente subjetiva das informações de entrada
  • a confiança no condicionamento de Bayes como base para a atualização das informações
  • a distinção entre modos causais e evidenciais de raciocínio

No final da década de 1980, Pearl's Probabilistic Reasoning in Intelligent Systems e Neapolitan 's Probabilistic Reasoning in Expert Systems resumiram suas propriedades e as estabeleceram como um campo de estudo.

Veja também

Notas

Referências

Uma versão anterior aparece como Microsoft Research , 1 de março de 1995. O artigo trata da aprendizagem de parâmetros e estruturas em redes Bayesianas.

Leitura adicional

links externos