X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 1
UM MÉTODO PARA A CONSTRUÇÃO DE FUNÇÕES DE
PROBABILIDADE DE REDES BAYESIANAS BASEADA EM NÓS
RANQUEADOS
RESUMO: Recentemente, redes Bayesianas estão se tornando populares para auxiliar tomada 1
de decisões. No entanto, ainda há desafios para sua aplicação prática em problemas de larga 2
escala. Um dos desafios refere-se à definição das funções de probabilidade. Em uma das 3
soluções apresentadas na literatura, utiliza-se o conceito de nós ranqueados baseado em 4
distribuição Normal truncada para simplificar a definição de funções de probabilidade a partir 5
de conhecimento de especialistas. Por outro lado, não há detalhes para, na prática, 6
implementar a solução proposta para nós ranqueados. Atualmente, esta solução está 7
disponível apenas em uma ferramenta comercial. A contribuição principal deste trabalho 8
refere-se à demonstração detalhada de um método para definição de funções de probabilidade 9
para nós ranqueados, apresentando os passos necessários para misturar distribuições Normal 10
truncadas e converter a distribuição resultante para uma tabela de probabilidade dos nós. Para 11
validação, os resultados da nossa solução foram comparados com a solução comercial 12
disponível no mercado. Os resultados foram promissores, pois foram equivalentes, dentro de 13
uma margem de diferença aceitável. Além disto, de acordo com os testes realizados, a solução 14
proposta alcançou performance melhor que a solução comercial existente. 15
Palavras–chave: distribuição Normal truncada, modelo probabilístico, nós ranqueados, Rede 16
Bayesiana, tabela de probabilidade dos nós 17
18
A METHOD FOR THE CONSTRUCTION OF BAYESIAN NETWORK
19PROBABILITY FUNCTIONS BASED ON RANKED NODES
2021
ABSTRACT: Recently, Bayesian networks are increasingly being used to assist on decision 22
making. However, there are obstacles to its practical application in real world scenarios. In the 23
literature, there is one solution that uses the concept of ranked nodes, which is based on the 24
concept of truncated Normal distribution, to simplify the definition of probability functions 25
through the elicitation of knowledge from experts. On the other hand, there are no details to, 26
in practice, implement the proposed solution. Nowadays, the solution is only available 27
through a commercial tool. Our contribution is to present a method to define probability 28
functions for ranked nodes by showing the steps to mix truncated Normal distributions and 29
convert the resulting distribution into a node probability table. For validation purposes, we 30
compared the results calculated using our method with a solution from a commercial tool. The 31
results were promising, because the calculated data were equivalent, given an acceptable 32
range. Furthermore, according to our tests, our solution has better performance than the 33
existing available commercial tool. 34
KEYWORDS: Bayesian network, node probability table, probabilistic model, ranked nodes, 35
X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 2 37
INTRODUÇÃO 38
Rede Bayesiana trata-se de um modelo matemático que representa as relações 39
probabilísticas de variáveis aleatórias de forma gráfica e numérica por meio do teorema de 40
Bayes. Atualmente, devido a evolução da capacidade computacional que possibilita o cálculo 41
de redes Bayesianas complexas, esta técnica está se tornando popular para auxílio na tomada 42
de decisões (FENTON, NEIL e CABALLERO, 2007). Alguns exemplos de área de aplicação 43
de Redes Bayesianas são: gerenciamento de projetos de desenvolvimento de software 44
(PERKUSICH, ALMEIDA e PERKUSICH, 2013), projetos de engenharia de larga escala 45
(LEE et al., 2009) e previsão de sucesso de projetos de inovação (DE MELO e SANCHEZ, 46
2008). 47
Por outro lado, há desafios relacionadas à construção de redes bayesianas. O problema 48
de construir redes bayesianas pode ser subdividido em: (i) definir o grafo acíclico direcionado 49
e (ii) construir as Tabelas de Probabilidade dos Nós (TPN). Nesta pesquisa, foca-se no 50
segundo subproblema. Nos casos nos quais há um banco de dados com informações o 51
suficiente para o problema em questão, é possível automatizar o processo de construção da 52
Rede Bayesiana utilizando batch learning (HECKERMAN, 1995). Infelizmente, na prática, 53
na maioria dos casos, não há dados o suficiente. Ou seja, é necessário coletar dados de 54
especialistas e, manualmente, definir as TPN. Dado que a complexidade para definição de 55
TPN cresce exponencialmente, para Redes Bayesianas de larga escala, torna-se impraticável a 56
definição manual de todas as combinações possíveis das TPN (FENTON, NEIL e 57
CABALLERO, 2007). 58
Em FENTON, NEIL e CABALLERO (2007), foi apresentada uma solução para reduzir 59
a complexidade de manualmente definir TPN. O método apresentado limita-se a nós (i.e., 60
variáveis) com estados ordinais (e.g., “Bom”, “Médio”, “Ruim”) ordenados monotonamente 61
no intervalo [0, 1], nominalmente, nós ranqueados. A solução baseia-se na distribuição 62
Normal duplamente truncada no interval [0, 1] (i.e., TNormal) para representar as TPN. Desta 63
forma, a TPN (i.e., TNormal) de um nó-filho é calculada a partir da mistura das TNormal dos 64
nós-pai. Para flexibilizar a modelagem, são apresentadas quatro funções ponderadas para 65
mistura: média ponderada (WMEAN), mínimo ponderado (WMIN), máximo ponderado 66
(WMAX) e uma mistura de WMIN e WMAX (MIXMINMAX). Esta solução foi 67
implementada no AgenaRisk1, que se trata de uma ferramenta paga para modelar Redes 68
Bayesianas. 69
Por outro lado, em FENTON, NEIL e CABALLERO (2007), os detalhes necessários 70
para, na prática, implementar a solução não foram apresentados. Apesar de apresentar funções 71
para mistura de distribuições probabilística, não há informações acerca do algoritmo utilizado 72
para gerar e misturar TNormal, tamanho das amostras e iterações de simulações necessárias 73
para ter resultados aceitáveis. Além disso, não é apresentado como converter de TNormal para 74
uma TPN tradicional. Este passo possibilita a integração de nós ranqueados com outros tipos 75
de nós (e.g., booleanos e contínuos) garantindo maior flexibilidade de modelagem. Nesta 76
X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 3 pesquisa, buscou-se explorar estes problemas com o intuito de descobrir como, na prática, 77
implementar a solução de FENTON, NEIL e CABALLERO (2007) e demonstrar como a 78
TPN é gerada. 79
Neste artigo, é apresentado um método para definir TPN para nós ranqueados usando 80
a função WMEAN apresentada por FENTON, NEIL e CABALLERO (2007). Para tal, 81
implementou-se funções em C++ e experimentos foram realizados para validar os resultados 82
em termos de eficácia e eficiência em comparação com o AgenaRisk. Os resultados foram 83
satisfatórios e demonstram a viabilidade do método apresentado. 84
85
REDES BAYESIANAS 86
Redes Bayesianas pertencem à família de modelos gráficos probabilísticos e são 87
utilizadas para representar o conhecimento acerca de um domínio com. A rede Bayesiana, B, 88
trata-se de um grafo acíclico direcionado que representa a distribuição conjunta de 89
probabilidade sobre um conjunto de variáveis aleatórias V. A rede é definida pelo par B = {G, 90
ϴ}. No grafo acíclico direcionado, G, as variáveis aleatórias são representadas pelos nós
91
X1,...,Xn e as dependências diretas entre as variáveis são representadas pelos arcos. As funções
92
de probabilidade (i.e., tabelas de probabilidade dos nós) são representadas por ϴ. Esse 93
conjunto contém o parâmetro θxi|πi = PB(xi|πi) para cada xi em Xi condicionado por πi, o
94
conjunto de parâmetros de Xi em G. A distribuição conjunta de probabilidade definida por B
95
em V é apresentada na Equação 1. Um exemplo de Rede Bayesiana é apresentado na Figura 1. 96
(Equação 1) 97
98
99
Figura 1. Exemplo de Rede Bayesiana. IFPB, 2015. 100
101
TRABALHOS RELACIONADOS 102
O problema de definir TPN para redes bayesianas de larga escala a partir de 103
conhecimento de especialistas já foi discutido no passado. Noisy-OR (HUANG e HENRION, 104
1996) e Noisy-MAX (DÍEZ, 1993), são dois métodos populares para codificar conhecimento 105
em TPN. A desvantagem do Noisy-OR é que apenas aplica-se a nós booleanos. De acordo 106
com FENTON, NEIL e CABALLERO (2007), a desvantagem do Noisy-MAX é que não 107
X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 4 Uma solução para este problema foi apresentada por FENTON, NEIL e 109
CABALLERO (2007). Neste trabalho, apresenta-se o conceito de nós ranqueados, variáveis 110
aleatórias ordinais representadas em uma escala contínua ordenada monotonamente no 111
intervalo [0, 1]. Por exemplo, para a escala ordinal [“Ruim”, “Moderado”, “Bom”], “Ruim” é 112
representado pelo intervalo [0, 1/3]; “Moderado”, pelo (1/3, 2/3]; e, “Bom”, pelo (2/3, 1]. 113
Este conceito é baseado na distribuição Normal duplamente truncada (TNormal). Esta 114
distribuição é composta de quatro parâmetros: µ, média (i.e., tendência central); σ2, variância
115
(i.e., confiança nos resultados); a, limite inferior (i.e., 0); e, b, limite superior (i.e., 1).Com 116
esta distribuição, flexibiliza-se a modelagem ao permitir a representação de uma variedade de 117
curvas (i.e., relacionamentos entre variáveis) tais como a distribuição uniforme, quando σ2=
118
∞, e curvas enviesadas, quando σ2= 0.
119
Na solução apresentada por FENTON, NEIL e CABALLERO (2007), µ é definida por 120
uma função ponderada dos nós-pai. Há quatro tipos de função: média ponderada (WMEAN), 121
mínimo ponderado (WMIN), máximo ponderado (WMAX) e uma mistura de WMIN e 122
WMAX (MIXMINMAX). Na prática, estas expressões definem apenas a tendência central do 123
nó-filho para a combinação de estados dos nós-pais. Em FENTON, NEIL e CABALLERO 124
(2007), não são apresentados detalhes acerca da utilização das combinações nas funções. O 125
peso de cada pai, que denota a influência exercida do nó-pai sobre o nó-filho, deve ser 126
definido por uma constante w, na qual w ∈ . De acordo com experimentos realizados pelos 127
autores, concluiu-se que com estas funções atende-se a necessidade de modelagem para 128
definir TPN. Exemplos utilizando as funções são apresentadas na Figura 2. 129
Por outro lado, em FENTON, NEIL e CABALLERO (2007), os detalhes necessários 130
para, na prática, implementar a solução não foram apresentados. Na próxima seção, é 131
apresentado um método para aplicar a definir TPN de nós ranqueados seguindo a solução 132
proposta por FENTON, NEIL e CABALLERO (2007). 133
134
X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 5 Figura 2. Exemplos utilizando as quatro funções apresentadas for FENTON, NEIL e 136
CABALLERO (2007). IFPB, 2015. 137
138
MÉTODO PARA CONSTRUÇÃO DE FUNÇÕES DE PROBABILIDADE PARA NÓS 139
RANQUEADOS 140
Para construir a função de probabilidade (i.e., TPN) de um nó qualquer, 141
independentemente do tipo, é necessário definir valores para todas as combinações possíveis 142
de estados dos nós-pai. Com nós ranqueados a diferença é que, ao invés de necessitar do 143
esforço manual de um especialista, automatiza-se este esforço utilizando as funções definidas 144
por FENTON, NEIL e CABALLERO (2007). 145
Dada a complexidade exponencial do problema de definir TPN, para redes Bayesianas 146
de larga escala, mesmo de forma automática, necessita-se aplicar estratégias de otimização. 147
Para tal, primeiramente, registrou-se em memória as distribuições de amostras que 148
representam os estados-base (i.e., 100% de probabilidade) possíveis dos nós-pais. Por 149
exemplo, para um nó ranqueado composto dos estados [“Ruim”, “Moderado”, “Bom”], os 150
estados-base são: 100% “Ruim”, 100% “Moderado” ou 100% “Bom”. Para tal, coletou-se 151
amostras de uma distribuição uniforme com limites em função dos limiares da configuração 152
em questão. Por exemplo, para a configuração 100% “Bom”, coletou-se amostras de uma 153
distribuição uniforme limitada no intervalo (2/3, 1]. Empiricamente, foi definido que amostras 154
com 100.000 elementos eram o suficiente para uma margem de erro menor que 0,1%. Cada 155
amostra é registrada com meta informações acerca da sua configuração (i.e., número de 156
estados e µ). 157
O próximo passo consiste em, para cada combinação de estados dos nós-pai, misturar as 158
distribuições probabilísticas utilizando amostras equidistantes, coletadas aleatoriamente, de 159
cada nó-pai. Foi definido empiricamente que 10.000 amostras equidistantes é o suficiente para 160
uma margem de erro menor que 0,1%. As amostras são misturadas utilizando-se a função 161
WMEAN apresentada por FENTON, NEIL e CABALLERO (2007) e a variância definida. A 162
distribuição resultante é convertida para a escala ordinal representando uma coluna da TPN do 163
nó-filho. Ao final deste passo, ao misturar todas as combinações possíveis, a TPN completa 164
do nó-filho estará construída. O algoritmo do método é apresentado na Figura 3. 165
X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 6 167
Figura 3. Algoritmo do método de definição de TPN para nós ranqueados. IFPB, 2015. 168
169
RESULTADOS E VALIDAÇÃO 170
O método foi implementado utilizando a linguagem de programação C++. C++ foi 171
escolhida devido a sua eficiência e a existência da biblioteca TRUNCATED_NORMAL2. 172
Para validá-lo, cenários de teste foram definidos e os resultados calculados foram comparados 173
com os do AgenaRisk. 174
Devido as diferenças na implementação da geração de amostras TNormal nos 175
algoritmos da TRUNCATED_NORMAL e do AgenaRisk, observou-se a necessidade de 176
calibrar σ2 para um valor equivalente (i.e., não necessariamente iguais) entre as soluções.
177
Dado que ambos os algoritmos são capazes de gerar todos os tipos possíveis de curvas 178
TNormal, isto não é considerado um problema. A calibração foi realizada apenas com o 179
propósito de viabilizar a comparação dos resultados em cenários de teste equivalentes. 180
Os resultados obtidos na distribuição probabilística com nós independentes 181
apresentaram uma diferença percentual média de 0,6% entre o C++ e o AgenaRisk. A 182
distribuição probabilística de nós com 3 nós-pais apresentou uma diferença percentual maior, 183
o que pode indicar necessidade de refinar a calibragem da variância ou repensar algum dos 184
passos do processo de cálculo da distribuição. No entanto, a diferença manteve-se na margem 185
de diferença aceitável (i.e., abaixo de 5%). Considerou-se abaixo de 5% como margem de 186
diferença aceitável, pois o objetivo da TPN é guiar um especialista na tomada de decisões e, 187
na prática, como observado por FENTON, NEIL e CABALLERO (2007), esta diferença 188
percentual é irrelevante. 189
Com relação a eficiência, verificou-se diferença insignificante entre as soluções e tempo 190
de cálculo inferior ao do AgenaRisk. Por outro lado, nossa implementação é dedicada única e 191
somente a geração da TPN enquanto o AgenaRisk possui outros processos em segundo plano 192
sendo executados, que podem influenciar no tempo de cálculo da TPN. Para uma TPN de um 193
X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 7 nó com três pais, o tempo de cálculo médio no AgenaRisk foi 1,962 segundos; no C++, foi 194
0,336 segundos. Os dados coletados nos experimentos são apresentados no site de apoio3. 195
196
CONCLUSÕES 197
Apesar da recente popularidade, a construção de Redes Bayesianas ainda apresenta 198
alguns desafios. Um deles se refere a definição de TPN para Redes Bayesianas de larga 199
escala. A automatização deste processo é possível com o batch learning. Por outro lado, o 200
mesmo necessita de um banco de dados com informações o suficiente e, na prática, isto não é 201
comum. A outra opção trata-se de coletar conhecimento de especialistas, a qual é inviável 202
para construção de redes de larga escala manualmente. Em FENTON, NEIL e CABALLERO 203
(2007), apresentou-se uma solução para nós ranqueados, mas os detalhes necessários para 204
aplicá-la na prática sem a utilização do AgenaRisk, que se trata de uma ferramenta paga, não 205
foram apresentados. 206
Neste artigo, apresentou-se um método para implementar a solução de FENTON, NEIL 207
e CABALLERO (2007) com detalhes acerca do tamanho das amostras das distribuições 208
probabilísticas e número iterações e simulação necessárias para ter resultados aceitáveis. Os 209
resultados foram promissores. A diferença nos resultados do nosso método em comparação 210
com o AgenaRisk se manteve dentro da margem de erro aceitável (i.e., abaixo de 5%). A 211
maior diferença entre a solução proposta e o AgenaRisk foi causada pelo uso diferenciado da 212
variância no cálculo da TNormal, porém, em termos práticos isso é irrelevante. 213
Futuramente, planeja-se dar suporte às outras funções apresentadas em FENTON, NEIL 214
e CABALLERO (2007): WMIN, WMAX e MIXMINMAX. Além disto, uma ferramenta livre 215
de construção de Redes Bayesianas com suporte para nós ranqueados baseada no SMILE e 216
GENIE4 e um processo automatizado para configuração da expressão ponderada serão 217 implementados. 218 219 REFERÊNCIAS 220 221
DE MELO, A. C. V.; SANCHEZ, A. J. Software maintenance project delays prediction using 222
Bayesian Networks. Expert Systems with Applications: An International Journal, v. 34, n. 223
2, p. 908-919, 2008. 224
225
DÍEZ, F.J. “Parameter adjustment in Bayes networks: the generalized noisy or-gate”. 226
Proc. Ninth Conference on Uncertainty in Artificial Intelligence, D. Heckerman and A. 227
Mamdani, eds, p. 99-105, Washington D.C, 1993. 228
229
X Congresso Norte Nordeste de Pesquisa e Inovação, 2015 Página 8 FENTON, N. E.; KRAUSE, P.; NEIL, M. "Software Measurement: Uncertainty and Causal 230
Modelling", IEEE Software, v. 10, n. 4, p. 116-122, 2002. 231
232
FENTON, N.; NEIL, M.; CABALLERO J. Using Ranked Nodes to Model Qualitative 233
Judgements in Bayesian Networks. IEEE Transactions on Knowledge and Data 234
Engineering, v. 19, n. 10, p. 1420-1432, 2007. 235
236
HECKERMAN, D. A tutorial on learning with Bayesian networks. Report MSR-TR-95-06,
237
Microsoft Advanced Technology Division, Microsoft Corporation, Seattle, Washington,
238
1995.
239 240
HUANG, K.; HENRION, M. “Efficient Search-Based Inference for Noisy-OR Belief 241
Networks”, Twelfth Conference on Uncertainty in Artificial Intelligence, Portland, OR, p. 242
325-331. 1996. 243
244
LEE, E.; PARK. Y.; SHIN, J. G. Large engineering project risk management using a 245
Bayesian belief network. Journal of Expert Systems and Applications: An International 246
Journal, v. 36, n. 3, p. 5880-5887, 2009. 247
248
NEIL, M.; FENTON, N.E.; Nielsen, L. ''Building Large-scale Bayesian Networks'', The 249
Knowledge Engineering Review, v. 15, n. 3, p. 257-284, 2000. 250
251
NEIL, M. et al. "Using Bayesian Belief Networks to Predict the Reliability of Military 252
Vehicles", IEEE Computing and Control Engineering Journal, v. 12, n. 1, p. 11-20, 2001. 253
254
PERKUSICH, M.; ALMEIDA, H.; PERKUSICH, A. A Model to Detect Problems on 255
Scrum-Based Software Development Project. Proc. of The 28th Annual ACM Symposium 256