A Figura 6.19 mostra uma rede bayesiana simples para os dados meteorolgicos. Possui
um n para cada um dos quatro atributos perspectiva, temperatura, umidade e vento e
um para o jogo de atributos de classe. Uma borda leva do n de reproduo para cada
um dos outros ns. No entanto, em redes bayesianas a estrutura do grfico apenas
metade da histria. A Figura 6.19 mostra uma tabela dentro de cada n. As informaes
nas tabelas definem uma distribuio de probabilidade que usada para prever as
probabilidades de classe para qualquer instncia.
FIGURA 6.19
Uma rede bayesiana simples para os dados meteorolgicos.
A Figura 6.20 mostra uma rede mais complexa para o mesmo problema, onde trs ns
(vento, temperatura e umidade) tm dois pais. Novamente, h uma coluna esquerda
para cada pai e como muitas colunas direita como o atributo tem valores. Considere a
primeira linha da tabela associada com o n de temperatura.
O lado esquerdo d um valor para cada atributo pai, play e outlook; O direito d uma
probabilidade para cada valor de temperatura. Por exemplo, o primeiro nmero (0,143)
a probabilidade de a temperatura assumir o valor quente, dado que o jogo e a
perspectiva tm valores sim e ensolarado, respectivamente.
Como as tabelas so usadas para prever a probabilidade de cada valor de classe para
uma determinada instncia? Isso acaba por ser muito fcil porque estamos assumindo
que no h valores faltantes. A instncia especifica um valor para cada atributo. Para
cada n da rede, procure a probabilidade do valor do atributo do n com base na linha
determinada pelos valores dos seus atributos dos pais. Em seguida, basta multiplicar
todas essas probabilidades juntos.
Por exemplo, considere uma instncia com valores outlook = chuvoso, temperature =
cool, humidity = high e windy = true. Para calcular a probabilidade de jogo = no,
observe que a rede na Figura 6.20 fornece probabilidade de 0.367 a partir do jogo do n,
0.385 do outlook, 0.429 da temperatura, 0.250 da umidade e 0.167 do windy. O produto
0,0025. O mesmo clculo para play = yes rende 0,0077.
No entanto, estas no so claramente as respostas finais: As probabilidades finais devem
somar 1, enquanto que 0,0025 e 0,0077 no. Na verdade, elas so as probabilidades
conjuntas Pr [play = no, E] e Pr [play = yes, E], onde E denota todas as evidncias dadas
pelos valores do atributo da instncia. As probabilidades conjuntas medem a
probabilidade de observar uma instncia que exibe os valores de atributo em E, bem
como o respectivo valor de classe. Eles apenas somam 1 se esgotarem o espao de todas
as possveis combinaes de valor de atributo, incluindo o atributo de classe. Este no
certamente o caso no nosso exemplo.
A soluo bastante simples (j a encontrmos na seco 4.2). Para obter as
probabilidades condicionais Pr [play = no | E] e Pr [play = yes | E], normalizar as
probabilidades conjuntas dividindo-os pela sua soma. Isto d a probabilidade 0.245 para
o jogo = no e 0.755 para o jogo = sim.
Apenas um mistrio permanece: Por que multiplicar todas essas probabilidades juntos?
Acontece que a validade do passo de multiplicao depende de uma nica suposio - a
saber, que, dados valores para cada um dos pais de um n, conhecer os valores de
qualquer outro conjunto de no-descendentes no altera a probabilidade associada a
cada um dos possveis valores do n . Por outras palavras, outros conjuntos de no-
descendentes no fornecem qualquer informao sobre a probabilidade dos valores do
n para alm das informaes fornecidas pelos pais. Isso pode ser escrito como
Google Tradutor para empresas: Google Toolkit de traduo para apps Tradutor de sites
Global Market Finder
que deve manter para todos os valores dos ns e atributos envolvidos. Na estatstica esta
propriedade chamada de independncia condicional. A multiplicao vlida desde
que cada n seja condicionalmente independente de seus avs, bisavs e
FIGURA 6.20
Outra rede bayesiana para os dados meteorolgicos.
A decomposio vlida para qualquer ordem dos atributos. Como a nossa rede
bayesiana um grfico acclico, seus ns podem ser ordenados para dar a todos os
antepassados de um n ai ndices menores que i. Ento, por causa da suposio de
independncia condicional,
Uma terceira possibilidade atribuir uma distribuio prvia sobre estruturas de rede e
encontrar a rede mais provvel combinando sua probabilidade prvia com a
probabilidade concedida rede pelos dados. Esta a abordagem "Bayesiana" para a
pontuao da rede. Dependendo da distribuio anterior utilizada, ela pode assumir
vrias formas. No entanto, os verdadeiros Bayesianos teriam uma mdia de todas as
estruturas de rede possveis, em vez de distinguirem uma rede particular de previso.
Infelizmente, isso geralmente requer uma grande quantidade de computao. Uma
abordagem simplificada a mdia de todas as estruturas de rede que so subestruturas
de uma determinada rede. Acontece que isto pode ser implementado muito
eficientemente alterando o mtodo para calcular as tabelas de probabilidades
condicionais de modo que as estimativas de probabilidade resultantes contenham
implicitamente informaes de todas as sub-redes. Os detalhes dessa abordagem so
bastante complexos e no sero descritos aqui.
A tarefa de procurar uma boa estrutura de rede pode ser grandemente simplificada se a
mtrica correta for usada para pontuao. Lembre-se que a probabilidade de uma nica
instncia baseada em uma rede o produto de todas as probabilidades individuais das
vrias tabelas de probabilidade condicional. A probabilidade geral do conjunto de dados
o produto desses produtos para todas as instncias. Como os termos de um produto
so intercambiveis, o produto pode ser reescrito para agrupar todos os fatores
relacionados mesma tabela.
O mesmo vale para o log-verossimilhana, usando somas em vez de produtos. Isso
significa que a probabilidade pode ser otimizada separadamente para cada n da rede.
Isso pode ser feito adicionando ou removendo bordas de outros ns para o n que est
sendo otimizado - a nica restrio que os ciclos no devem ser introduzidos. O
mesmo truque tambm funciona se uma mtrica de pontuao local, como AIC ou
MDL, for usada em vez de log-likelihood simples, porque o termo de penalidade se
divide em vrios componentes, um para cada n e cada n pode ser otimizado
independentemente.
Algoritmos Especficos
Agora passamos a algoritmos reais para o aprendizado de redes bayesianas. Um
algoritmo de aprendizado simples e muito rpido, chamado K2, comea com um
determinado ordenamento dos atributos (isto , ns). Em seguida, ele processa cada n
por sua vez e avidamente considera adicionar bordas de ns previamente processados ao
atual. Em cada etapa adiciona a borda que maximiza a pontuao da rede. Quando no
h mais melhoria, a ateno se volta para o prximo n. Como um mecanismo adicional
para evitar overfitting, o nmero de pais para cada n pode ser restrito a um mximo
predefinido.
Como somente bordas de ns processados previamente so consideradas e h uma
ordem fixa, este procedimento no pode introduzir ciclos. No entanto, o resultado
depende da ordenao inicial, ento faz sentido executar o algoritmo vrias vezes com
diferentes ordenaes aleatrias.
O Naive Bayes classificador uma rede com uma borda que leva do atributo de classe
para cada um dos outros atributos. Ao construir redes para classificao, s vezes ajuda
a usar esta rede como um ponto de partida para a pesquisa. Isso pode ser feito em K2
forando a varivel de classe a ser a primeira na ordenao e inicializando o conjunto de
arestas adequadamente.
Outro truque potencialmente til garantir que cada atributo nos dados est no cobertor
de Markov do n que representa o atributo de classe. O cobertor Markov de um n
inclui todos os pais, filhos e pais das crianas. Pode-se mostrar que um n
condicionalmente independente de todos os outros ns dados valores para os ns em sua
manta de Markov. Assim, se um n estiver ausente da manta de Markov do atributo de
classe, seu valor completamente irrelevante para a classificao. Inversamente, se o
K2 encontrar uma rede que no inclua um atributo relevante no cobertor de Markov do
n de classe, pode ajudar a adicionar uma borda que corrija essa falha. Uma maneira
simples de fazer isso adicionar uma borda do n do atributo para o n da classe ou do
n da classe para o n do atributo, dependendo de qual opo evita um ciclo.
Uma verso mais sofisticada, mas mais lenta do K2 no para ordenar os ns, mas para
greedily considerar adicionar ou excluir bordas entre pares arbitrrios de ns (todos ao
mesmo tempo garantindo acyclicity, claro). Um passo adicional considerar inverter a
direo de bordas existentes tambm. Como com qualquer algoritmo ganancioso, a rede
resultante representa apenas um mximo local da funo de pontuao: sempre
aconselhvel executar tais algoritmos vrias vezes com diferentes configuraes iniciais
aleatrias. Podem tambm ser utilizadas estratgias de optimizao mais sofisticadas,
tais como recozimento simulado, pesquisa de tabu ou algoritmos genticos.
Outro bom algoritmo de aprendizagem para classificadores bayesianos da rede
chamado rvore aumentada Naive Bayes (TAN). Como o nome indica, ele toma o
classificador Naive Bayes e acrescenta bordas a ele. O atributo de classe o nico pai
de cada n de uma rede Naive Bayes. O TAN considera adicionar um segundo pai a
cada n. Se o n de classe e todas as arestas correspondentes forem excludos da
considerao e assumindo que exista exatamente um n para o qual um segundo pai no
seja adicionado, o classificador resultante tem uma estrutura de rvore enraizada no n
sem pai - isto de onde o nome vem. Para este tipo restrito de rede existe um algoritmo
eficiente para encontrar o conjunto de arestas que maximiza a probabilidade da rede
com base na computao da rvore de cobertura mxima ponderada da rede. Este
algoritmo linear no nmero de instncias e quadrtico no nmero de atributos.
O tipo de rede aprendido pelo algoritmo TAN chamado de um estimador de
dependncia. Um tipo de rede ainda mais simples o superparente one-dependence
estimator. Aqui, exatamente um outro n, alm do n de classe, elevado ao status de
pai e torna-se pai de todos os outros ns no-classes. Acontece que um conjunto simples
desses estimadores de uma dependncia produz classificadores muito precisos: Em cada
um desses estimadores, um atributo diferente se torna o n pai extra. Ento, no tempo de
predio, as estimativas de probabilidade de classe dos diferentes estimadores de
dependncia nica so simplesmente mdias. Este esquema conhecido como AODE,
para a mdia de um estimador de dependncia. Normalmente, apenas os estimadores
com certos suportes nos dados so usados no conjunto, mas esquemas de seleo mais
sofisticados so possveis. Como nenhuma estrutura de aprendizagem est envolvida
para cada superparente one-dependncia estimador, AODE um classificador muito
eficiente.
Todas as mtricas de pontuao que descrevemos at agora so baseadas na
verossimilhana no sentido de que so projetadas para maximizar a probabilidade
conjunta Pr [a1, a2, ..., an] para cada instncia. No entanto, na classificao, o que
realmente queremos maximizar o probabilidade condicional da classe dada os valores
dos outros atributos - em outras palavras, a probabilidade condicional. Infelizmente, no
existe uma soluo de forma fechada para as estimativas de probabilidade mxima de
probabilidade condicional que so necessrias para as tabelas em uma rede Bayesiana.
Por outro lado, calcular a probabilidade condicional para uma determinada rede e
conjunto de dados simples - afinal, isso o que a regresso logstica faz. Assim,
props-se o uso da mxima verossimilhana padro
Probabilidade na rede, mas usar a probabilidade condicional para avaliar uma estrutura
de rede particular.
Outra maneira de usar redes bayesianas para classificao construir uma rede separada
para cada valor de classe, com base nos dados pertencentes a essa classe, e combinar
suas previses usando a regra de Bayes. O conjunto de redes chamado multinet
bayesiano.
Para obter uma previso para um valor de classe particular, pegue a probabilidade da
rede correspondente e multiplique-a pela probabilidade prvia da classe. Faa isso para
cada classe e normalize o resultado como fizemos anteriormente. Neste caso, no
usaramos a probabilidade condicional para aprender a rede para cada valor de classe.
Todos os algoritmos de aprendizagem de rede que introduzimos so baseados em
pontuao. Uma estratgia diferente, que no vamos explicar aqui, dividir uma rede
juntos testando afirmaes de independncia condicional individuais baseadas em
subconjuntos dos atributos. Isto conhecido como aprendizagem de estrutura por testes
de independncia condicional.