베이즈망 · 2017-04-06 · 1. ‘start’ and ‘fuel’ are dependent on each other. 2....

81
베이즈망 Bayesian Networks 숭실대학교 기계학습연구실 황규백 [email protected] ; http://ml.ssu.ac.kr 한국정보과학회 인공지능소사이어티 10회 패턴인식 및 기계학습 겨울학교 딥러닝 기초, 이론 및 응용 2016121() 16:00-18:00

Upload: others

Post on 04-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

베이즈망Bayesian Networks

숭실대학교기계학습연구실

황규백[email protected]; http://ml.ssu.ac.kr

한국정보과학회인공지능소사이어티

제10회패턴인식및기계학습겨울학교딥러닝기초, 이론및응용

2016년 1월 21일 (목) 16:00-18:00

Page 2: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Basic Concepts of Bayesian Networks Inference in Bayesian Networks Learning Bayesian Networks

Parametric Learning Structural Learning

Conclusion

2

Page 3: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Our Problem Domain

Discrete random variables

V2

V5

V3

V4

V1Brand equity

Price Product features

Brand value

Other factors

3

Page 4: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Joint Probability Distribution

P(V1, V2, V3, V4, V5) can be represented as a table.

V1, V2, V3, V4, V5 P(V1, V2, V3, V4, V5)

Value 1 Probability 1

Value 2 Probability 2

… …

4

Page 5: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Probabilistic Inference

P(Brand value| Brand equity, Price)?

∑∑

=

=

543

54

,, 54321

, 54321

21

321213

),,,,(

),,,,(),(

),,(),|(

VVV

VV

VVVVVP

VVVVVPVVP

VVVPVVVP

Any conditional probabilities can be calculated in principle. Exponential time complexity

Marginalization

5

Page 6: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

It is too expensive to store all joint probabilities.

Probability table size is exponential to the number of variables. If all variables are binary, the table size

amounts to (2n – 1) where n is the number of variables.

Space and time complexity for storing probabilities and marginalization is formidable in practice.

Probabilistic independence can facilitate the use of joint probability distribution.

6

Page 7: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

In the Extreme Case

Let us assume that all variables are independent from one another.

Table size comparison in binary case

)()()()()(),,,|(),,|(),|()|()(

),,,,(

54321

432153214213121

54321

VPVPVPVPVPVVVVVPVVVVPVVVPVVPVP

VVVVVP

⋅⋅⋅⋅=⋅⋅⋅⋅=

# of variables 1 2 3 4 5 6

n 1 2 3 4 5 62n – 1 1 3 7 15 31 63

by chain rule

7

Page 8: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Between the Two Extremes

Too complicated All variables are dependent on each other.

Too simple All variables are independent from each other.

A reasonable compromise Some variables are dependent on other

variables. Conditional independence

8

Page 9: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Conditional Independence

Probabilistic independence X and Y are independent from each other. P(X, Y) = P(X)∙P(Y)

Conditional (probabilistic) independence X and Y are conditionally independent from

each other given the value of Z. P(X, Y|Z) = P(X|Z)∙P(Y|Z)

How to describe dependencies among variables efficiently?

9

Page 10: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

The Bayesian Network Compact representation of joint

probability distribution Qualitative part: graph theory

Directed acyclic graph (DAG) Vertices (nodes): variables Edges: dependency or influence of a

variable on another.

Quantitative part: probability theory Set of (conditional) probabilities for all

variables

Naturally handles the problem of complexity and uncertainty.

10

Page 11: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Directed Acyclic Graph Structures

V1

V2 V3

V4 V5 V6

V7 V8

V9

A parent of V5

A child of V5

A spouse/sibling of V5

Grandparent of V5

Grandchild of V5

A partial topological order over the nodes could be

specified:

V1, [V2, V3], [V4, V5, V6], [V7, V8], V9.

A partial topological order over the nodes could be

specified:

V1, [V3, V2], [V6, V5, V4], [V8, V7], V9.

11

Page 12: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Probabilistic Graphical Models

Graphical models

directed graphundirected graph

C

E

D

BA

C

E

D

BA

Bayesian NetworksMarkov Random Fields

12

Page 13: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

DAG for EncodingConditional Independencies

Connections in DAGs

CA BC

A B C

A B

serial diverging converging

d-separation:♦Two nodes (variables) in a DAG are d-separated if for all

paths between them, there is an intermediate node Csuch that, the connection is “serial” or “diverging” and the state of C is

known or the connection is “converging” and neither C nor any of C’s

descendants have received evidence.

13

Page 14: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

d-Separation andConditional Independence

Two random variables are conditionally independent from each other if the corresponding vertices in the DAG are d-separated.

14

Page 15: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

d-Separation Example 1

CA BC

A B

A and B is marginally dependent.

CA BC

A B

A and B is conditionally independent.

C

A B

A and B is marginally independent.

C

A B

A and B is conditionally dependent.

15

Page 16: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

d-Separation Example 2

There exists a non-blocked path. Hence, two black nodes (variables) are not d-separated and dependent on each other.

16

Page 17: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

d-Separation Example 2

Every path is blocked now. Hence, the two black nodes (variables) are d-separated and independent from each other.

17

Page 18: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Definition: Bayesian Networks

The Bayesian network consists of the following.

A set of n variables X = {X1, X2, …, Xn} and a set of directed edges between the variables (vertices).

The variables with the directed edges form a directed acyclic graph (DAG) structure. Directed cycles are not modeled.

To each variable Xi and its parents Pa(Xi), there is attached a conditional probability table for P(Xi|Pa(Xi)). Modeling for continuous variables is also possible.

18

Page 19: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Ch(X5)

Ch(X5): the children of X5

Pa(X5)

Pa(X5): the parents of X5X={X1, X2, … , X10}

∏==i ii XXPXPXP ))(Pa|()X ,()( 101

De(X5)

De(X5): the descendents of X5X1

X3

X5 X6

X7 X8

X2

X9 X10

X5

Topological sort of X∈iXX1, X2, X3, X4, X5, X6, X7, X8, X9, X10

Chain rule in a reverse order

10 10 10 10 10

10 10 8

( \{ }, ) ( \{ }) ( | \{ }) ( \{ }) ( | )P X X P X P X X

P X P X X==

X X XX

9 9 9 9 9

9 9 7

( '\{ }, ) ( '\{ }) ( | '\{ }) ( '\{ }) ( | )P X X P X P X X

P X P X X==

X X XX

8 8 8 8 8

8 8 5 6

( ''\{ }, ) ( ''\{ }) ( | ''\{ }) ( ''\{ }) ( | , )P X X P X P X X

P X P X X X==

X X XX

X4

19

Page 20: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayesian Networks RepresentJoint Probability Distribution

By the d-separation property, the Bayesian network over n variables X = {X1, X2, …, Xn} represents P(X) as follows:

.))(|(),...,,(121 ∏=

=n

i iin XXPXXXP Pa

20

Page 21: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Causal Networks Node: event Arc: causal relationship between the two nodes

A B: A causes B. Causal network for the car start problem (Jensen and

Nielson, 2007)

Fuel

Fuel MeterStanding Start

Clean SparkPlugs

21

Page 22: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

d-separation: Car Start Problem1. ‘Start’ and ‘Fuel’ are dependent on each other.

2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other.

3. ‘Fuel’ and ‘Fuel Meter Standing’ are dependent on each other.

4. ‘Fuel’ and ‘Clean Spark Plugs’ are conditionally dependent on each other given the value of ‘Start’.

5. ‘Fuel Meter Standing’ and ‘Start’ are conditionally independent given the value of ‘Fuel’.

Fuel

Fuel MeterStanding Start

Clean SparkPlugs

22

Page 23: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Reasoning with Causal Networks• My car does not start. Increases the certainty of no

fuel and dirty spark plugs. Increases the certainty of fuel meter’s standing for the empty.

• Fuel meter stands for the half. Decreases the certainty of no fuel Increases the certainty of dirty spark plugs.

Fuel

Fuel MeterStanding Start

Clean SparkPlugs

23

Page 24: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayesian Networkfor the Car Start Problem [Jensen and Nielson, 2007]

Fuel

Fuel MeterStanding Start

Clean SparkPlugs

P(Fu = Yes) = 0.98 P(CSP = Yes) = 0.96

P(St|Fu, CSP)P(FMS|Fu)

0.0010.60

FMS = Half

0.9980.001Fu = No0.010.39Fu = Yes

FMS = Empty

FMS = Full

10(No, Yes)0.990.01(Yes, No)

10(No, No)

0.010.99(Yes, Yes)Start=NoStart=YES(Fu, CSP)

24

Page 25: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Basic Concepts of Bayesian Networks Inference in Bayesian Networks Learning Bayesian Networks

Parametric Learning Structural Learning

Conclusion

25

Page 26: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Inference in Bayesian Networks

Infer the probability of an event given some observations.

Fuel

Fuel MeterStanding Start

Clean SparkPlugs

Start

How probable is that the spark plugs are dirty?In other words, what’s the probability P(CSP = No| St = No)?

26

Page 27: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Inference Example

X1 X2 X3 P(X1) = (0.6, 0.4)

P(X2|X1) =

X1 == 0: (0.2, 0.8)

X1 == 1: (0.5, 0.5)

P(X3|X2) =

X2 == 0: (0.3, 0.7)

X2 == 1: (0.7, 0.3)

27

Page 28: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Initial State

P(X2) = ∑X1, X3 P(X1, X2, X3)

= ∑X1, X3 P(X1)P(X2|X1)P(X3|X2)

= ∑X1 P(X1)P(X2|X1) ∑X3 P(X3|X2)

= ∑X1P(X1)P(X2|X1)

= 0.6 * (0.2, 0.8) + 0.4 * (0.5, 0.5)

= (0.12 + 0.2, 0.48 + 0.2) = (0.32, 0.68)

P(X1) = (0.6, 0.4)

P(X2|X1) =

X1 == 0: (0.2, 0.8)

X1 == 1: (0.5, 0.5)

P(X3|X2) =

X2 == 0: (0.3, 0.7)

X2 == 1: (0.7, 0.3)

X1 X2 X3

28

Page 29: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Given that X3 == 1

P(X1|X3 = 1) = β P(X1, X3 = 1)

= β ∑X2 P(X1, X2, X3 = 1)

= β ∑X2 P(X1)P(X2|X1)P(X3 = 1|X2)

= β P(X1) ∑X2 P(X2|X1)P(X3 = 1|X2)

= β P(X1) (0.2 * 0.7 + 0.8 * 0.3, 0.5 * 0.7 + 0.5 * 0.3)

= β (0.6, 0.4) * (0.38, 0.5)

= β (0.228, 0.2) = (0.53, 0.47)

P(X1) = (0.6, 0.4)

P(X2|X1) =

X1 == 0: (0.2, 0.8)

X1 == 1: (0.5, 0.5)

P(X3|X2) =

X2 == 0: (0.3, 0.7)

X2 == 1: (0.7, 0.3)

X1 X2 X3

29

Page 30: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Factor Graph A bipartite graph with one set of vertices corresponding

to the variables in the Bayesian network and another set of vertices corresponding to the local functions (i.e., conditional probability tables).

V1 V2

V3

V4

V1 V2

V3

V4

P(V1)

P(V2|V1)

P(V3|V2,V1)

P(V4|V3)

30

Page 31: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Singly-Connected Networks

A singly-connected network has only a single path (ignoring edge directions) connecting any two vertices.

s

v w

u y z

x

fA fEfD

fC

fB

31

Page 32: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Factorization ofGlobal Distribution and Inference

Example network represents the joint probability distribution as follows:

The probability of s given the value of z is calculated as

).,(),(),(),(),,(),,,,,,( zyfyufxufwvfvusfzyxwvusP EDCBA=

]}.)',(),([)],(}{[),({),,()',(

,)',,,,,,()',(

,)',(/)',()'|(

,

,,,,

∑∑∑∑

∑∑

==

=

===

====

y EDx Cw Bvu A

yxwvu

s

zzyfyufxufwvfvusfzzsP

zzyxwvusPzzsP

zzsPzzsPzzsP

32

Page 33: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Cost of Marginalization

# of states of the variables: nu, nv, nw, nx, ny, nz

∑ ===yxwvu

zzyxwvusPzzsP,,,,

)',,,,,,()',(

yxwvu nnnnn ××××

]})',(),([)],(}{[),({),,()',(

, ∑∑∑∑ ==

=

y EDx Cw Bvu A zzyfyufxufwvfvusfzzsP

yxwvu nnnnn +++×

33

Page 34: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

The GeneralizedForward-Backward Algorithm

The generalized forward-backward algorithm is one flavor of the probability propagation.

The generalized forward-backward algorithm:1. Convert a Bayesian network into the factor graph.2. The factor graph is arranged as a horizontal tree

with an arbitrary chosen “root” vertex.3. Beginning at the left-most level, messages are

passed level by level forward to the root.4. Messages are passed level by level backward

from root to the leaves. Messages represent the propagated

probability through edges of the graphical model.

34

Page 35: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Convert a Bayesian Networkinto the Factor Graph

z1

z8

z5 z6

z9 z10

z7

z4z3

z2 z1

z8

z5 z6

z9 z10

z7

z4z3z2

z1

z8

z5

z6

z9

z10

z7 z4

z3

z2

35

Page 36: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Message Passingin Graphical Models

Two types of messages: Variable-to-function messages Function-to-variable messages

x

z

y

µx→A

µA → x

fA

fC

fB

36

Page 37: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Calculation of Messages

Variable-to-function message: If x is unobserved, then

If x is observed as x’, then

Function-to-variable message:

).()()( xxx xCxBAx →→→ = µµµ

es).other valu(for 0)( ,1)'( == →→ xx AxAx µµ

.)()(),,()( ∑∑ →→→ =y z

AzAyAxA zyzyxfx µµµ

37

Page 38: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Computation ofConditional Probability

After the generalized forward-backward algorithm ends, each edge in the factor graph has its calculated message values.

The probability of x given the observations v is as follows:

where β is a normalizing constant.

),()()()|( xxxxP xCxBxA →→→= µµβµv

38

Page 39: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

The Burglar Alarm Problem

b e

a

P(b = 1) = 0.1 P(e = 1) = 0.1

0.3680.632(1, 0)0.1350.865(0, 1)

0.6070.393(1, 1)

0.0010.999(0, 0) P(a = 1| b, e)P(a = 0| b, e)(b, e)

39

Page 40: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Alarm Alert

Calculate P(b, e|a = 1) Because the network structure is simple,

.)','|()'()'(

),|()()()(

),,()|,(','∑

==eb

ebaPePbPebaPePbP

aPaebPaebP

P(b=0, e=0| a=1) = 0.016

P(b=0, e=1| a=1) = 0.233

P(b=1, e=0| a=1) = 0.635

P(b=1, e=1| a=1) = 0.116

40

Page 41: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Applying the Generalized Forward-Backward Algorithm

b e

a

fB(b) = P(b) fE(e) = P(e)

fA(a, b, e) = P(a| b, e)

41

Page 42: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Forward Pass I

b

e

a

fB(b)

fE(e)

fA(a, b, e)

µB→b

µb→A

µa→A

µA→e

µE→e

µB→b = fB(b) = (0.9, 0.1)

µB→b

µb→A = µB→b = (0.9, 0.1)

µb→A

µa→A = (0, 1)

µa→A

42

Page 43: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Forward Pass II

(0.9, 0.1) b

e

a

fB(b)

fE(e)

fA(a, b, e)

µA→e

µE→e(0.9, 0.1)

(0, 1)

)1822.0,0377.0()1.0607.09.0135.0,1.0368.09.0001.0(

)(),|1(

)()(),,()(,

=×+××+×=

==

=

→→→

∑∑

bebaP

abebafe

Abb

AaAbab AeA

µ

µµµ

µA→e

µE→e = fE(e) = (0.9, 0.1)

µE→e

43

Page 44: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Backward Pass I

(0.9, 0.1) b

e

a

fB(b)

fE(e)

fA(a, b, e)

(0.0377, 0.1822)

(0.9, 0.1)

(0, 1)

µe→E

µe→A

µA→b

µA→a

µb→B

(0.9, 0.1)

µe→A = µE→e = (0.9, 0.1)

µe→A

44

Page 45: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Backward Pass II

(0.9, 0.1) b

e

a

fB(b)

fE(e)

fA(a, b, e)

(0.0377, 0.1822)

(0.9, 0.1)

(0.9, 0.1)

(0, 1)

µe→E

µA→b

µA→a

µb→B

)3919.0,0144.0()1.0607.09.0368.0,1.0135.09.0001.0(

)(),|1(

)()(),,()(,

=×+××+×=

==

=

→→→

∑∑

eebaP

abebafb

Aee

AaAeae AbA

µ

µµµ

µA→b

(0.9, 0.1)

45

Page 46: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Finale

(0.9, 0.1) b

e

a

fB(b)

fE(e)

fA(a, b, e)

(0.0377, 0.1822)

(0.9, 0.1)

(0.9, 0.1)

(0, 1)

(0.0144, 0.3919)

µA→a

µb→B

)751.0,249.0())1()1(),0()0(())1|1(),1|0((( ====== →→→→ bAbBbAbBabPabP µµµµβ

(0.9, 0.1)

(0.0144, 0.3919)

µe→E

(0.9, 0.1)

)349.0,651.0())1()1(),0()0(())1|1(),1|0((( ====== →→→→ eAeEeAeEaePaeP µµµµβ

(0.9, 0.1)

(0.0377, 0.1822)

46

Page 47: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Inferencein Multiply-Connected Networks

Probabilistic inference in Bayesian networks (also in Markov random fields and factor graphs) in general is very hard. (NP-hardness’s been proved.)

Approximate inference Use probability propagation in multiply-connected

networks. Loopy belief propagation. Monte Carlo methods Sampling Variational inference Helmholtz machines

47

Page 48: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Grouping and Duplicating Variables

V1 V2

V3

V4V4

V1, V2, V3

Singly-connected

The new variable {V1, V2, V3} has values exponential to the number of included variables.

48

Page 49: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Initial State

P(Fu), P(CSP), P(St), and P(FMS)

49

Page 50: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

No Start

P(Fu|St = No), P(CSP|St = No), and P(FMS|St = No)

50

Page 51: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Fuel Meter Stands for Half

P(Fu|St = No, FMS = Half) and P(CSP|St = No, FMS = Half)

51

Page 52: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Basic Concepts of Bayesian Networks Inference in Bayesian Networks Learning Bayesian Networks

Parametric Learning Structural Learning

Conclusion

52

Page 53: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Learning Bayesian Networks

Bayesian network learning

* Structure Search* Score Metric* Parameter Learning

Data Acquisition Preprocessing

BN = Structure + Local probability distribution

Prior knowledg

e

53

Page 54: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Learning Bayesian Networks (cont’d)

Bayesian network learning consists of Structure learning (DAG structure), Parameter learning (for local probability distribution).

Situations Known structure and complete data. Unknown structure and complete data. Known structure and incomplete data. Unknown structure and incomplete data.

54

Page 55: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Parameter Learning Task: Given a network structure, estimate the parameters

of the model from data.

SM

S2

S1

LHHL

……..…

HHHH

LLLH

DCBA

A B

C D

P(A)

0.010.99

LH

P(B)

0.070.93

LH

0.60.4(H, H)

0.80.2(H, L)

0.70.3(L, H)

(L, L)

(A, B)

P(C|A, B)

0.20.8

LH

0.10.9H

0.90.1L

B

P(D|B)

LH

55

Page 56: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Key point: independence of parameter estimation

D={s1, s2, …, sM}, where si=(ai, bi, ci, di) is an instance of a random vector variable S=(A, B, C, D).

Assumption: samples si are independent and identically distributed (i.i.d.).

[ ]

Θ

Θ

Θ

Θ=

ΘΘΘΘ=

Θ=Θ=Θ

∏∏∏∏

====

=

=

M

iiiG

M

iiiiG

M

iiG

M

iiG

M

iiiGiiiGiGiG

M

iiGGG

,|bdP,,b|acP|bP|aP

,|bdP,,b|acP|bP|aP

PDPDL

1111

1

1

)( )( )( )(

)()()()(

)|()|();( s A B

C D

G

Independent parameter estimation for each node (variable)

56

Page 57: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

One can estimate the parameters for P(A), P(B), P(C|A, B), and P(D|B) in an independent manner. If A, B, C, and D are all binary-valued, the number of parameters

are reduced from 15 (24-1) to 8 (1+1+4+2).

A

)(AP

B

)(BP

A B C D

s1

s2

sM

),|( BACP

A B

C

)|( BDP

B

D

P(A,B,C,D)=P(A)xP(B)xP(C|A,B)xP(D|B)

MMMM dcba

dcbadcba

2222

1111

57

Page 58: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Methods for Parameter Estimation Maximum Likelihood Estimation

Choose the value of Θ which maximizes the likelihood for the observed data D.

Bayesian Estimation Represent uncertainty about parameters using a probability

distribution over Θ. Θ is also a random variable rather than a parameter value.

)|(maxarg);(maxargˆ Θ=Θ=Θ ΘΘ DPDLG

)|()()(

)|()()|( ΘΘ∝ΘΘ

=Θ DPPDPDPPDP

posterior prior likelihood

58

Page 59: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayes Rule, MAP and ML

Bayes’ rule

)()()|()|(

DPhPhDPDhP =

)|(maxarg* hDPh h=

)|(maxarg* DhPh h=

)|( DhP

h: hypothesis (models or parameters)D: data

ML (maximum likelihood) estimation

MAP (maximum a posteriori) estimation

Bayesian Learning Not a point estimate, but the posterior

distributionFrom NIPS’99 tutorial by Z.

Ghahramani

59

Page 60: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayesian estimation (for multinomial distribution)

∏ −+∝

kN

kkk

DPPDP1

)|()()|(αθ

θθθ

[ ]∑

∫∫

++

==

=

==+

l ll

kkkDP

k

M

NNE

dDP

dDPkPDkSP

)(

)|(

)|()|()|(

)|(

1

ααθ

θ

θ

θθ

θθθ

Smoothed version of MLE

s1 s2 s3 sM

θ

Prior P(ө)

Likelihood P(D| ө)

θSufficient statistics

Prior knowledge or pseudo counts

),,,(~ 21 KDir αααθ

60

Page 61: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

H H T H

θ

H H

( ) ( ), 5, 1H TN N =

( )1 ,1~ Dir15)|()()|( THDPPDP θθθθθ =×∝

75.043

)11()51(51)|( ==+++

+=DP H

)11()11()( −−∝ THP θθθ

15

)|(

TH

HHHHTHDPθθ

θθθθθθ

=

H H T HH H

15 )|( THHHHHTHDP θθθθθθθθ ==θ

65

155 )|(maxargˆ =+

== θθ θ DP

833.0ˆ)( ≈== HHSP θ

Maximum likelihood estimation

Bayesian inference

An Example: Coin toss

61

Page 62: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

P(H)H HH HHT HHTH HHTHH HHTHH

HHHTHHHTTHH (100, 50)

MLE 1.00 1.00 0.67 0.75 0.80 0.83 0.70 0.67B(0.5, 0.5) 0.75 0.83 0.63 0.70 0.75 0.79 0.68 0.67B(1, 1) 0.67 0.75 0.60 0.67 0.71 0.75 0.67 0.66B(2, 2) 0.60 0.67 0.57 0.63 0.67 0.70 0.64 0.66B(5, 5) 0.55 0.58 0.54 0.57 0.60 0.63 0.60 0.65

Dirichlet prior

62

Page 63: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

B(1, 1)

B(2, 2) B(5, 5)

B(0.5, 0.5)

Variation of posterior distribution for the parameter

63

Page 64: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Structure Learning

Task: Given a data set, search a most plausible network structure underlying the generation of the data set.Metric-based approachUse a scoring metric to measure how well a particular structure fits the observed set of cases.

A B C DS1 H L L LS2 H H H H

… … … …SM L H H L

DC

A B

DC

A B

DC

A B

Score

Scoring

metric

Search strateg

y

64

Page 65: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Scoring Metric

)|()()(

)|()()|( GDPGPDP

GDPGPDGP ∝=

Prior for network structure

Marginal likelihood

Likelihood Score

Nodes of high mutual information (dependency) with their parents get higher score.

Since, I(X;Y) ≤ I(X; {Y, Z}), the fully connected network is obtained in an unrestricted case.

Prone to overfitting.

( )MLEGDPDGScore Θ= ,|log);( ∑∑==

−∝N

ii

N

iii XHXI

11)( );( Pa

65

Page 66: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

∑∑∑

∑∑∑

= = =

= = =

=

=

N

i j

X

k ij

ijkijk

N

i j

X

k ij

ijkijk

i i

i i

NN

MN

M

NN

NL

1 1 1

1 1 1

log

logD);Θ̂(log

Pa

Pa

( )∑=

−=N

iiiXHM

1| Pa

( )

−−= ∑ ∑

= =

N

i

N

iiiii XHXHXHM

1 1)()|()( Pa

∑∑==

−∝N

ii

N

iii XHXI

11)( );( Pa

H(X) H(Y)

H(X|Y) H(Y|X)I(X;Y)

A B

C D

A B

C D

Empty network

Likelihood Score in Relation with Information Theory

66

Page 67: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayesian Score Consider the uncertainty in parameter estimation in

Bayesian network

Assuming a complete data and parameter independence, the marginal likelihood can be rewritten as

( )( )( ) ( )[ ]∏ ∫=

=N

iiiiii dGPGXXDPGDP

1

|, ;)|( θθθPa

∫ ΘΘΘ= dGPGDPGPDGScore )|(),|()();(

Marginal likelihood for each pair of (Xi;Pa(Xi))

67

Page 68: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayesian Dirichlet Score For a multinomial case, if we assume a Dirichlet

prior for each parameter (Heckerman, 1995),

( )( )( ) ( ) ∏ ∏∫= = Γ

Γ=

i i

j

X

k ijk

ijkijk

ijij

ijiiiii

NN

dGPGXXDPPa

θθθPa1 1 )(

)()(

)(|, ;

αα

αα

( )iXijijijij Dir αααθ ,,, ~ 21 ∑ =

= iX

k ijkij 1αα

∑ == iX

k ijkij NN1( )j

iikiiijk paXxXN === )(, of # Pa

∫∞ −−=Γ

0

1)( dtetx tx

!)()1( nnnn ==Γ=+Γ

1)1( =Γ

68

Page 69: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayesian Dirichlet Score (cont’d)

H H T H

TH

HHPαα

αφ+

=)|(

TH

HHHPαα

α+++)1(

)1()|(

TH

THHTPαα

α++

=)2(

)|(

)1()2()2()|(+++

+=

TH

HHHTHPαα

α

[ ])3()1()2()1(

+×+××+×+×

ααααααα

THHH

)()4(

ααΓ

)()3(

H

H

ααΓ

+Γ)(

)1(

T

T

ααΓ

Γ

+Γ×

Γ+Γ

+ΓΓ

)()1(

)()3(

)4()(

T

T

H

H

αα

αα

αα

~ ( , ) H T H TDirθ α α α α α= +

69

Page 70: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayesian Dirichlet Score (cont’d)

∏∏ ∏= = = Γ

Γ=

N

i j

X

k ijk

ijkijk

ijij

iji i N

N1 1 1 )()(

)()(Pa

αα

αα

( )( )( ) ( )[ ]∏ ∫=

=N

iiiiii dGPGXXDPGDP

1

|, ;)|( θθθPa

log P(D|G) in Bayesian score is asymptotically equivalent to BIC and minus the MDL criterion.

MGGDPDGBICGDP log2

)dim(),ˆ|(log);()|(log −Θ=≈

dim( ) # of parameters in G G=

70

Page 71: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Structure Search Given a data set, a score metric, and a set of

possible structures, Find the network structure with maximal score. Discrete optimization

One can utilize the property of independent score for each pair of (Xi, Pa(Xi)).

( )∏=

=N

iii GXXDPGDP

1

|))(;()|( Pa

∑=

==N

iii XPaXScoreGDPDGScore

1))(;()|(log);(

71

Page 72: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Tree-Structured Networks Definition: Each node has at most one parent.

An effective search algorithm exists.

[ ] ∑∑∑ +−==i

ii

iiii

ii XScoreXScorePaXScorePaXScoreDGScore )()()|( )|()|(Improvement over empty network

Score for empty network

Chow and Liu (1968)Construct the undirected complete graph with the weights of edge E(Xi, Xj) being I(Xi; Xj).

Build a maximum weighted spanning tree.

Transform to a directed tree with an arbitrary root node.

A

B C

D

72

Page 73: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

A

B C

D

A

B C

I(A;B) = 0.0652 I(A;D)=

0.0834

I(A;C)= 0.0880

I(B;C)= 0.1913

I(C;D)= 0.1980

I(B;D)= 0.1967 D

A

B C

D

SM

S2

S1

LHHL

……..…

HHHH

LLLH

DCBA

Complete undirected graph

Maximum spanning

tree

Directed tree

73

Page 74: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Search Strategiesfor General Bayesian Networks

With more than one parents per node NP-hard(Chickering et al., 1996)

Heuristic search methods are usually employed. Greedy hill-climbing (local search) Greedy hill-climbing with random restart Simulated annealing Tabu search …

74

Page 75: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Greedy Local Search AlgorithmINPUT: Data set, Scoring Metric,

Possible Structures

Initialize the structure• empty network, random network,

tree-structured network, etc.

Do a local edge operation resulting in the largest improvement in scoreamong all possible operations

Score(Gt+1;D)>Score(Gt;D)YES

NO

Gfinal = Gt

A B

C D

DELETE

A B

C D

REVERSE

A B

C D

INSERT

A B

C D

75

Page 76: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Enhanced Search Greedy local search can get stuck in local maxima or plateaux. Standard heuristics to escape the two includes

Search with random restarts, simulated annealing, tabu search. Genetic algorithm: a population-based search.

scor

e

Greedy search

Local maximum

scor

e

Greedy search with random restarts

Random restart

scor

e

Simulated annealing

P() scor

e

Population-based search (GA)76

Page 77: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Basic Concepts of Bayesian Networks Inference in Bayesian Networks Learning Bayesian Networks

Parametric Learning Structural Learning

Conclusion

77

Page 78: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Conclusion

Bayesian networks provide an efficient/effective framework for organizing the body of knowledge by encoding the probabilistic relationships among variables of interest. Graph theory + probability theory: DAG + local probability

distribution. Conditional independence and conditional probability are keystones. A compact way to express complex systems by simpler probabilistic

modules and thus a natural framework for dealing with complexity and uncertainty.

Two problems in the learning of Bayesian networks from data Parameter estimation: MLE, MAP, Bayesian estimation Structural learning: tree-structured network, heuristic search for

general Bayesian network.

78

Page 79: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

참고 문헌

베이즈망 소개 F. V. Jensen and T. D. Nielson, Bayesian Networks and Decision

Graphs, 2nd Edition, Springer, 2007. (2장)

베이즈망 추론 B. J. Frey, Graphical Models for Machine Learning and Digital

Communication, MIT Press, 1998. (2장)

베이즈망 학습 D. Heckerman, “A Tutorial on Learning with Bayesian Networks,”

Learning in Graphical Models, M. I. Jordan (Ed.), pp. 301-354, Kluwer Academic Publishers, 1998.

79

Page 80: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Bayes Net Toolbox (by Kevin Murphy) https://code.google.com/p/bnt/ A variety of algorithms for learning and inference in graphical models

(written in MATLAB). WEKA

http://www.cs.waikato.ac.nz/~ml/weka/ Bayesian network learning and classification modules are included among a

collection of machine learning algorithms (written in JAVA). A number of Bayesian network packages in R

http://www.bnlearn.com/ bnlearn, gRbase, and others.

A detailed list and comparison are referred to http://www.cs.ubc.ca/~murphyk/Bayes/bnsoft.html

Bayesian NetworkSoftware Packages

80

Page 81: 베이즈망 · 2017-04-06 · 1. ‘Start’ and ‘Fuel’ are dependent on each other. 2. ‘Start’ and ‘Clean Spark Plugs’ are dependent on each other. 3. ‘Fuel’ and

Source: Writing and reading a book with DNA, IEEE Spectrum (August 2012)

Thank You

81