46
An Overview of An Overview of Learning Bayes Nets From Data Learning Bayes Nets From Data Chris Meek Microsoft Research http://research.microsoft.com/~meek http://research.microsoft.com/~meek

An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Embed Size (px)

Citation preview

Page 1: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

An Overview ofAn Overview ofLearning Bayes Nets From DataLearning Bayes Nets From Data

Chris MeekMicrosoft Research

http://research.microsoft.com/~meekhttp://research.microsoft.com/~meek

Page 2: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

What’s and Why’sWhat’s and Why’s

What is a Bayesian network?What is a Bayesian network? Why Bayesian networks are useful?Why Bayesian networks are useful? Why learn a Bayesian network?Why learn a Bayesian network?

Page 3: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

What is a Bayesian Network?What is a Bayesian Network?

Directed acyclic graphDirected acyclic graph– Nodes are variables (discrete or continuous)Nodes are variables (discrete or continuous)– Arcs indicate dependence between variables. Arcs indicate dependence between variables.

Conditional Probabilities (local distributions)Conditional Probabilities (local distributions)

Missing arcs implies conditional independenceMissing arcs implies conditional independence Independencies + local distributions => modular Independencies + local distributions => modular

specification of a joint distributionspecification of a joint distribution

X1 X2 X3

),|()|()( 213121 xxxpxxpxp

also called belief networks, and (directed acyclic) graphical models also called belief networks, and (directed acyclic) graphical models

),,( 321 xxxp

Page 4: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Why Bayesian Networks?Why Bayesian Networks?

Expressive languageExpressive language– Finite mixture models, Factor analysis, HMM, Kalman filter,…Finite mixture models, Factor analysis, HMM, Kalman filter,…

Intuitive languageIntuitive language– Can utilize causal knowledge in constructing modelsCan utilize causal knowledge in constructing models

– Domain experts comfortable building a networkDomain experts comfortable building a network

General purpose “inference” algorithmsGeneral purpose “inference” algorithms

– P(Bad Battery | Has Gas, Won’t Start)P(Bad Battery | Has Gas, Won’t Start)

– Exact: Modular specification leads to large computational Exact: Modular specification leads to large computational efficienciesefficiencies

– Approximate: “Loopy” belief propagationApproximate: “Loopy” belief propagation

Gas

Start

Battery

Page 5: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Why Learning?Why Learning?

knowledge-based(expert systems)

data-based

-Answer Wizard, Office 95, 97, & 2000-Troubleshooters, Windows 98 & 2000

-Causal discovery-Data visualization-Concise model of data-Prediction

Page 6: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

OverviewOverview

Learning Probabilities Learning Probabilities (local distributions)(local distributions)

– Introduction to Bayesian statistics: Learning a Introduction to Bayesian statistics: Learning a probabilityprobability

– Learning probabilities in a Bayes netLearning probabilities in a Bayes net

– ApplicationsApplications

Learning Bayes-net structureLearning Bayes-net structure– Bayesian model selection/averagingBayesian model selection/averaging

– ApplicationsApplications

Page 7: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Learning Probabilities: Classical ApproachLearning Probabilities: Classical Approach

Simple case: Flipping a thumbtack

tailsheads

True probability is unknown

Given iid data, estimate using an estimator with good properties: low bias, low variance, consistent (e.g., ML estimate)

Page 8: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Learning Probabilities: Bayesian ApproachLearning Probabilities: Bayesian Approach

tailsheads

True probability is unknown

Bayesian probability density for

p()

0 1

Page 9: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Bayesian Approach: use Bayes' rule to Bayesian Approach: use Bayes' rule to compute a new density for compute a new density for given data given data

datapp

atappdatap

)|d()(

)|d()()|(

prior likelihoodposterior

)|()( datapp

Page 10: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Example: Application of Bayes rule to Example: Application of Bayes rule to the observation of a single "heads"the observation of a single "heads"

p(|heads)

0 1

p()

0 1

p(heads|)=

0 1

prior likelihood posterior

Page 11: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

OverviewOverview

Learning ProbabilitiesLearning Probabilities– Introduction to Bayesian statistics: Learning a Introduction to Bayesian statistics: Learning a

probabilityprobability

– Learning probabilities in a Bayes netLearning probabilities in a Bayes net

– ApplicationsApplications

Learning Bayes-net structureLearning Bayes-net structure– Bayesian model selection/averagingBayesian model selection/averaging

– ApplicationsApplications

Page 12: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

From thumbtacks to Bayes netsFrom thumbtacks to Bayes nets

Thumbtack problem can be viewed as learningthe probability for a very simple BN:

X heads/tails

fheadsXP

X1 X2 XN...

toss 1 toss 2 toss N

Xii=1 to N

Page 13: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

The next simplest Bayes netThe next simplest Bayes net

Xheads/tails Y heads/tails

tailsheads “heads” “tails”

Page 14: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

The next simplest Bayes netThe next simplest Bayes net

Xheads/tails Y heads/tails

X

Xii=1 to N

Y

Yi

?

Page 15: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

The next simplest Bayes netThe next simplest Bayes net

Xheads/tails Y heads/tails

X

Xii=1 to N

Y

Yi

"parameterindependence"

Page 16: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

The next simplest Bayes netThe next simplest Bayes net

Xheads/tails Y heads/tails

X

Xii=1 to N

Y

Yi

"parameterindependence"

two separatethumbtack-likelearning problems

Page 17: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

In general…In general…

Learning probabilities in a BN is straightforward ifLearning probabilities in a BN is straightforward if Likelihoods from the exponential family Likelihoods from the exponential family

(multinomial, poisson, gamma, ...)(multinomial, poisson, gamma, ...) Parameter independenceParameter independence Conjugate priorsConjugate priors Complete dataComplete data

Page 18: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Incomplete data Incomplete data

Incomplete data makes parameters dependentIncomplete data makes parameters dependent

Parameter Learning for incomplete dataParameter Learning for incomplete data

Monte-Carlo integrationMonte-Carlo integration– Investigate properties of the posterior and perform predictionInvestigate properties of the posterior and perform prediction

Large-sample Approx. Large-sample Approx. (Laplace/Gaussian approx.)(Laplace/Gaussian approx.)

– Expectation-maximization (EM) algorithm and inference Expectation-maximization (EM) algorithm and inference to compute mean and variance.to compute mean and variance.

Variational methodsVariational methods

Page 19: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

OverviewOverview

Learning ProbabilitiesLearning Probabilities– Introduction to Bayesian statistics: Learning a Introduction to Bayesian statistics: Learning a

probabilityprobability

– Learning probabilities in a Bayes netLearning probabilities in a Bayes net

– ApplicationsApplications

Learning Bayes-net structureLearning Bayes-net structure– Bayesian model selection/averagingBayesian model selection/averaging

– ApplicationsApplications

Page 20: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Example: Audio-video fusionExample: Audio-video fusionBeal, Attias, & Jojic 2002Beal, Attias, & Jojic 2002

mic.1 mic.2

source at lx

camera

lx

ly

Video scenario Audio scenario

Goal: detect and track speakerSlide courtesy Beal, Attias and Jojic

Page 21: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Combined modelCombined model

audio data video dataFrame n=1,…,N

Slide courtesy Beal, Attias and Jojic

Page 22: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Tracking DemoTracking Demo

Slide courtesy Beal, Attias and Jojic

Page 23: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

OverviewOverview

Learning ProbabilitiesLearning Probabilities– Introduction to Bayesian statistics: Learning a Introduction to Bayesian statistics: Learning a

probabilityprobability

– Learning probabilities in a Bayes netLearning probabilities in a Bayes net

– ApplicationsApplications

Learning Bayes-net structureLearning Bayes-net structure– Bayesian model selection/averagingBayesian model selection/averaging

– ApplicationsApplications

Page 24: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Two Types of Methods for Learning BNsTwo Types of Methods for Learning BNs

Constraint basedConstraint based– Finds a Bayesian network structure whose impliedFinds a Bayesian network structure whose implied

independence constraints “match”independence constraints “match” those found in the those found in the data.data.

Scoring methodsScoring methods ( (BayesianBayesian, MDL, MML), MDL, MML)– Find the Bayesian network structure that can represent Find the Bayesian network structure that can represent

distributions that “match”distributions that “match” the data (i.e. could have the data (i.e. could have generated the data).generated the data).

Page 25: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Learning Bayes-net structureLearning Bayes-net structure

Given data, which model is correct?

X Ymodel 1:

X Ymodel 2:

Page 26: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Bayesian approachBayesian approach

Given data, which model is correct? more likely?

X Ymodel 1:

X Ymodel 2:

7.0)( 1 mp

3.0)( 2 mp

Data d

1.0)|( 1 dmp

9.0)|( 2 dmp

Page 27: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Bayesian approach: Model AveragingBayesian approach: Model Averaging

Given data, which model is correct? more likely?

X Ymodel 1:

X Ymodel 2:

7.0)( 1 mp

3.0)( 2 mp

Data d

1.0)|( 1 dmp

9.0)|( 2 dmp

averagepredictions

Page 28: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Bayesian approach: Model SelectionBayesian approach: Model Selection

Given data, which model is correct? more likely?

X Ymodel 1:

X Ymodel 2:

7.0)( 1 mp

3.0)( 2 mp

Data d

1.0)|( 1 dmp

9.0)|( 2 dmp

Keep the best model:- Explanation- Understanding- Tractability

Page 29: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

To score a model, use Bayes ruleTo score a model, use Bayes rule

Given data d:

)|()()|( mpmpmp dd

dmpmpmp )|(),|()|( dd

"marginallikelihood"

modelscore

likelihood

Page 30: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

The Bayesian approach and Occam’s RazorThe Bayesian approach and Occam’s Razor

mmm dmpmpmp )|(),|()|( dd

All distributions

p(m|m)

True distribution

Simple model

Complicated model

Just right

Page 31: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Computation of Marginal LikelihoodComputation of Marginal Likelihood

Efficient closed form ifEfficient closed form if Likelihoods from the exponential family (binomial, poisson, Likelihoods from the exponential family (binomial, poisson,

gamma, ...)gamma, ...) Parameter independenceParameter independence Conjugate priorsConjugate priors No missing data, including No missing data, including no hidden variablesno hidden variables

Else use approximationsElse use approximations Monte-Carlo integrationMonte-Carlo integration Large-sample approximationsLarge-sample approximations Variational methodsVariational methods

Page 32: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Practical considerationsPractical considerations

The number of possible BN structures is super The number of possible BN structures is super exponential in the number of variables.exponential in the number of variables.

How do we find the best graph(s)?How do we find the best graph(s)?

Page 33: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Model searchModel search

Finding the BN structure with the highest Finding the BN structure with the highest score among those structures with at most score among those structures with at most kk parents is NP hard for parents is NP hard for kk>1 (Chickering, 1995)>1 (Chickering, 1995)

Heuristic methodsHeuristic methods

– GreedyGreedy

– Greedy with restartsGreedy with restarts

– MCMC methodsMCMC methods

scoreall possible

single changes

anychangesbetter?

performbest

change

yes

no

returnsaved structure

initializestructure

Page 34: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Learning the correct modelLearning the correct model

True graph G and P is the generative distributionTrue graph G and P is the generative distribution

Markov Assumption: P satisfies the independencies Markov Assumption: P satisfies the independencies implied by Gimplied by G

Faithfulness Assumption: P satisfies only the Faithfulness Assumption: P satisfies only the independencies implied by Gindependencies implied by G

Theorem: Under Markov and Faithfulness, with enough Theorem: Under Markov and Faithfulness, with enough data generated from P one can recover G (up to data generated from P one can recover G (up to equivalence). Even with the greedy method!equivalence). Even with the greedy method!

Page 35: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Bayes net(s)data

X1 truefalsefalsetrue

X2 1532

X3 RedBlue

GreenRed

...

.

.

....

Learning Bayes Nets From DataLearning Bayes Nets From Data

X1

X4

X9

X3

X2

X5

X6

X7

X8

Bayes-netlearner

+prior/expert information

Page 36: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

OverviewOverview

Learning ProbabilitiesLearning Probabilities– Introduction to Bayesian statistics: Learning a Introduction to Bayesian statistics: Learning a

probabilityprobability

– Learning probabilities in a Bayes netLearning probabilities in a Bayes net

– ApplicationsApplications

Learning Bayes-net structureLearning Bayes-net structure– Bayesian model selection/averagingBayesian model selection/averaging

– ApplicationsApplications

Page 37: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Preference Prediction Preference Prediction (a.k.a. Collaborative Filtering)(a.k.a. Collaborative Filtering)

Example:Example: Predict what products a user will likely Predict what products a user will likely purchase given items in their shopping basket purchase given items in their shopping basket

Basic idea: use other people’s preferences to help Basic idea: use other people’s preferences to help predict a new user’s preferences.predict a new user’s preferences.

Numerous applicationsNumerous applications– Tell people about books or web-pages of interestTell people about books or web-pages of interest

– MoviesMovies

– TV showsTV shows

Page 38: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Example: TV viewing Example: TV viewing

Show1 Show2 Show3viewer 1 y n nviewer 2 n y y ...viewer 3 n n n

etc.

~200 shows, ~3000 viewers

Nielsen data: 2/6/95-2/19/95

Goal: For each viewer, recommend shows they haven’t watched that they are likely to watch

Page 39: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek
Page 40: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Making predictionsMaking predictions

Models Inc

Melrose place

Friends

Beverly hills 90210

Mad about you

Seinfeld

Frasier

NBC Mondaynight movies

Law & order

infer: p (watched 90210 | everything else we know about the user)

watched

watched

didn't watchwatcheddidn't watch

didn't watch

watched

watched

didn't watch

Page 41: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Making predictionsMaking predictions

Models Inc

Melrose place

Friends

Beverly hills 90210

Mad about you

Seinfeld

Frasier

NBC Mondaynight movies

Law & order

infer: p (watched 90210 | everything else we know about the user)

watched

watched

didn't watchwatcheddidn't watch

didn't watch

watched

watched

Page 42: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Making predictionsMaking predictions

Models Inc

Melrose place

Friends

Beverly hills 90210

Mad about you

Seinfeld

Frasier

NBC Mondaynight movies

Law & order

infer p (watched Melrose place | everything else we know about the user)

watched

watched

didn't watch

didn't watch

watcheddidn't watch

watched

watched

Page 43: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Recommendation listRecommendation list

p=.67 Seinfeldp=.67 Seinfeld p=.51 NBC Monday night moviesp=.51 NBC Monday night movies p=.17 Beverly hills 90210p=.17 Beverly hills 90210 p=.06 Melrose placep=.06 Melrose place

Page 44: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

Software PackagesSoftware Packages

BUGS: http://www.mrc-bsu.cam.ac.uk/bugsBUGS: http://www.mrc-bsu.cam.ac.uk/bugsparameter learning, hierarchical models, MCMCparameter learning, hierarchical models, MCMC

Hugin: Hugin: http://www.hugin.dkhttp://www.hugin.dkInference and model constructionInference and model construction

xBaies:xBaies: http://www.city.ac.uk/~rgchttp://www.city.ac.uk/~rgcchain graphs, discrete onlychain graphs, discrete only

Bayesian Knowledge Discoverer: http://kmi.open.ac.uk/projects/bkdBayesian Knowledge Discoverer: http://kmi.open.ac.uk/projects/bkdcommercialcommercial

MIM: http://inet.uni-c.dk/~edwards/miminfo.htmlMIM: http://inet.uni-c.dk/~edwards/miminfo.html BAYDA: http://www.cs.Helsinki.FI/research/coscoBAYDA: http://www.cs.Helsinki.FI/research/cosco

classificationclassification

BN Power Constructor: BN PowerConstructorBN Power Constructor: BN PowerConstructor Microsoft Research: WinMine Microsoft Research: WinMine

http://research.microsoft.com/~dmax/WinMine/Tooldoc.htmhttp://research.microsoft.com/~dmax/WinMine/Tooldoc.htm

Page 45: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek

For more information…For more information…

Tutorials:Tutorials:

K. Murphy (2001) K. Murphy (2001) http://www.cs.berkeley.edu/~murphyk/Bayes/bayes.htmlhttp://www.cs.berkeley.edu/~murphyk/Bayes/bayes.html

W. Buntine. Operations for learning with graphical models. Journal of W. Buntine. Operations for learning with graphical models. Journal of Artificial Intelligence Research, 2, 159-225 (1994).Artificial Intelligence Research, 2, 159-225 (1994).

D. Heckerman (1999). A tutorial on learning with Bayesian networks. In D. Heckerman (1999). A tutorial on learning with Bayesian networks. In Learning in Graphical Models (Ed. M. Jordan). MIT Press.Learning in Graphical Models (Ed. M. Jordan). MIT Press.

Books:Books:

R. Cowell, A. P. Dawid, S. Lauritzen, and D. Spiegelhalter. Probabilistic R. Cowell, A. P. Dawid, S. Lauritzen, and D. Spiegelhalter. Probabilistic Networks and Expert Systems. Springer-Verlag. 1999. Networks and Expert Systems. Springer-Verlag. 1999.

M. I. Jordan (ed, 1988). Learning in Graphical Models. MIT Press.M. I. Jordan (ed, 1988). Learning in Graphical Models. MIT Press.

S. Lauritzen (1996). Graphical Models. Claredon Press.S. Lauritzen (1996). Graphical Models. Claredon Press.

J. Pearl (2000). Causality: Models, Reasoning, and Inference. Cambridge J. Pearl (2000). Causality: Models, Reasoning, and Inference. Cambridge University Press.University Press.

P. Spirtes, C. Glymour, and R. Scheines (2001). Causation, Prediction, and P. Spirtes, C. Glymour, and R. Scheines (2001). Causation, Prediction, and Search, Second Edition. MIT Press.Search, Second Edition. MIT Press.

Page 46: An Overview of Learning Bayes Nets From Data Chris Meek Microsoft Researchmeek