Learning: Parameter Estimation

Presentation on theme: "Learning: Parameter Estimation"— Presentation transcript:

Learning: Parameter Estimation
Eran Segal Weizmann Institute

Learning Introduction
So far, we assumed that the networks were given Where do the networks come from? Knowledge engineering with aid of experts Automated construction of networks Learn by examples or instances

Learning Introduction
Input: dataset of instances D={d[1],...d[m]} Output: Bayesian network Measures of success How close is the learned network to the original distribution Use distance measures between distributions Often hard because we do not have the true underlying distribution Instead, evaluate performance by how well the network predicts new unseen examples (“test data”) Classification accuracy How close is the structure of the network to the true one? Use distance metric between structures Hard because we do not know the true structure Instead, ask whether independencies learned hold in test data

Prior Knowledge Prespecified structure Prespecified variables
Learn only CPDs Prespecified variables Learn network structure and CPDs Hidden variables Learn hidden variables, structure, and CPDs Complete/incomplete data Missing data Unobserved variables

Learning Bayesian Networks
X1 X2 Inducer Data Prior information Y P(Y|X1,X2) X1 X2 y0 y1 x10 x20 1 x21 0.2 0.8 x11 0.1 0.9 0.02 0.98

Known Structure, Complete Data
Goal: Parameter estimation Data does not contain missing values X1 X2 X1 X2 Inducer Initial network Y Y X1 X2 Y x10 x21 y0 x11 x20 y1 P(Y|X1,X2) X1 X2 y0 y1 x10 x20 1 x21 0.2 0.8 x11 0.1 0.9 0.02 0.98 Input Data

Unknown Structure, Complete Data
Goal: Structure learning & parameter estimation Data does not contain missing values X1 X2 X1 X2 Inducer Initial network Y Y X1 X2 Y x10 x21 y0 x11 x20 y1 P(Y|X1,X2) X1 X2 y0 y1 x10 x20 1 x21 0.2 0.8 x11 0.1 0.9 0.02 0.98 Input Data

Known Structure, Incomplete Data
Goal: Parameter estimation Data contains missing values Example: Naïve Bayes X1 X2 X1 X2 Inducer Initial network Y Y X1 X2 Y ? x21 y0 x11 x10 x20 y1 P(Y|X1,X2) X1 X2 y0 y1 x10 x20 1 x21 0.2 0.8 x11 0.1 0.9 0.02 0.98 Input Data

Unknown Structure, Incomplete Data
Goal: Structure learning & parameter estimation Data contains missing values X1 X2 X1 X2 Inducer Initial network Y Y X1 X2 Y ? x21 y0 x11 x10 x20 y1 P(Y|X1,X2) X1 X2 y0 y1 x10 x20 1 x21 0.2 0.8 x11 0.1 0.9 0.02 0.98 Input Data

Parameter Estimation Input Goal: Learn CPD parameters
Network structure Choice of parametric family for each CPD P(Xi|Pa(Xi)) Goal: Learn CPD parameters Two main approaches Maximum likelihood estimation Bayesian approaches

Biased Coin Toss Example
Coin can land in two positions: Head or Tail Estimation task Given toss examples x[1],...x[m] estimate P(H)= and P(T)=1- Assumption: i.i.d samples Tosses are controlled by an (unknown) parameter  Tosses are sampled from the same distribution Tosses are independent of each other

Biased Coin Toss Example
Goal: find [0,1] that predicts the data well “Predicts the data well” = likelihood of the data given  Example: probability of sequence H,T,T,H,H 0.2 0.4 0.6 0.8 1 L(D:)

Maximum Likelihood Estimator
Parameter  that maximizes L(D:) In our example, =0.6 maximizes the sequence H,T,T,H,H 0.2 0.4 0.6 0.8 1 L(D:)

Maximum Likelihood Estimator
General case Observations: MH heads and MT tails Find  maximizing likelihood Equivalent to maximizing log-likelihood Differentiating the log-likelihood and solving for  we get that the maximum likelihood parameter is:

Sufficient Statistics
For computing the parameter  of the coin toss example, we only needed MH and MT since  MH and MT are sufficient statistics

Sufficient Statistics
A function s(D) is a sufficient statistics from instances to a vector in k if for any two datasets D and D’ and any  we have Datasets Statistics

Sufficient Statistics for Multinomial
A sufficient statistics for a dataset D over a variable Y with k values is the tuple of counts <M1,...Mk> such that Mi is the number of times that the Y=yi in D Sufficient statistic Define s(x[i]) as a tuple of dimension k s(x[i])=(0,...0,1,0,...,0) (1,...,i-1) (i+1,...,k)

Sufficient Statistic for Gaussian
Gaussian distribution: Rewrite as  sufficient statistics for Gaussian: s(x[i])=<1,x,x2>

Maximum Likelihood Estimation
MLE Principle: Choose  that maximize L(D:) Multinomial MLE: Gaussian MLE:

MLE for Bayesian Networks
Parameters x0, x1 y0|x0, y1|x0, y0|x1, y1|x1 Data instance tuple: <x[m],y[m]> Likelihood X x0 x1 0.7 0.3 X Y Y X y0 y1 x0 0.95 0.05 x1 0.2 0.8  Likelihood decomposes into two separate terms, one for each variable

MLE for Bayesian Networks
Terms further decompose by CPDs: By sufficient statistics where M[x0,y0] is the number of data instances in which X takes the value x0 and Y takes the value y0 MLE

MLE for Bayesian Networks
Likelihood for Bayesian network  if Xi|Pa(Xi) are disjoint then MLE can be computed by maximizing each local likelihood separately

MLE for Table CPD BayesNets
Multinomial CPD For each value xX we get an independent multinomial problem where the MLE is

MLE for Tree CPDs Assume tree CPD with known tree structure Y Z X
Terms for <y0,z0> and <y0,z1> can be combined Y y0 y1 Z x0|y0,x1|y0 z0 z1 Optimization can be done by leaves x0|y1,z1,x1|y1,z1 x0|y1,z1,x1|y1,z1

MLE for Tree CPD BayesNets
Tree CPD T, leaves l For each value lLeaves(T) we get an independent multinomial problem where the MLE is

Limitations of MLE Two teams play 10 times, and the first wins 7 of the 10 matches  Probability of first team winning = 0.7 A coin is tosses 10 times, and comes out ‘head’ 7 of the 10 tosses  Probability of head = 0.7 Would you place the same bet on the next game as you would on the next coin toss? We need to incorporate prior knowledge Prior knowledge should only be used as a guide

Bayesian Inference … Assumptions
Given a fixed  tosses are independent If  is unknown tosses are not marginally independent – each toss tells us something about  The following network captures our assumptions X[1] X[M] X[2]

For a uniform prior, posterior is the normalized likelihood
Bayesian Inference Joint probabilistic model Posterior probability over  X[1] X[2] X[M] Likelihood Prior For a uniform prior, posterior is the normalized likelihood Normalizing factor

Bayesian Prediction Predict the data instance from the previous ones
Solve for uniform prior P()=1 and binomial variable

Example: Binomial Data
Prior: uniform for  in [0,1] P() = 1  P( |D) is proportional to the likelihood L(D:) MLE for P(X=H) is 4/5 = 0.8 Bayesian prediction is 5/7 0.2 0.4 0.6 0.8 1 (MH,MT ) = (4,1)

Dirichlet Priors A Dirichlet prior is specified by a set of (non-negative) hyperparameters 1,...k so that  ~ Dirichlet(1,...k) if where and Intuitively, hyperparameters correspond to the number of imaginary examples we saw before starting the experiment

Dirichlet Priors – Example
5 Dirichlet(1,1) Dirichlet(2,2) 4.5 Dirichlet(0.5,0.5) Dirichlet(5,5) 4 3.5 3 2.5 2 1.5 1 0.5 0.2 0.4 0.6 0.8 1

Dirichlet Priors Dirichlet priors have the property that the posterior is also Dirichlet Data counts are M1,...,Mk Prior is Dir(1,...k)  Posterior is Dir(1+M1,...k+Mk) The hyperparameters 1,…,K can be thought of as “imaginary” counts from our prior experience Equivalent sample size = 1+…+K The larger the equivalent sample size the more confident we are in our prior

Effect of Priors Prediction of P(X=H) after seeing data with MH=1/4MT as a function of the sample size 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 20 40 60 80 100 0.1 0.6 Different strength H + T Fixed ratio H / T Fixed strength H + T Different ratio H / T

Effect of Priors (cont.)
In real data, Bayesian estimates are less sensitive to noise in the data 0.7 MLE Dirichlet(.5,.5) Dirichlet(1,1) Dirichlet(5,5) Dirichlet(10,10) 0.6 0.5 P(X = 1|D) 0.4 0.3 0.2 N 0.1 5 10 15 20 25 30 35 40 45 50 1 Toss Result N

General Formulation Joint distribution over D,
Posterior distribution over parameters P(D) is the marginal likelihood of the data As we saw, likelihood can be described compactly using sufficient statistics We want conditions in which posterior is also compact

Conjugate Families A family of priors P(:) is conjugate to a model P(|) if for any possible dataset D of i.i.d samples from P(|) and choice of hyperparameters  for the prior over , there are hyperparameters ’ that describe the posterior, i.e., P(:’) P(D|)P(:) Posterior has the same parametric form as the prior Dirichlet prior is a conjugate family for the multinomial likelihood Conjugate families are useful since: Many distributions can be represented with hyperparameters They allow for sequential update within the same representation In many cases we have closed-form solutions for prediction

Bayesian Estimation in BayesNets
Bayesian network for parameter estimation Bayesian network X X X[1] X[2] X[M] Y Y[1] Y[2] Y[M] Y|X Instances are independent given the parameters (x[m’],y[m’]) are d-separated from (x[m],y[m]) given  Priors for individual variables are a priori independent Global independence of parameters

Bayesian Estimation in BayesNets
Bayesian network for parameter estimation Bayesian network X X X[1] X[2] X[M] Y Y[1] Y[2] Y[M] Y|X Posteriors of  are independent given complete data Complete data d-separates parameters for different CPDs As in MLE, we can solve each estimation problem separately

Bayesian Estimation in BayesNets
Bayesian network for parameter estimation Bayesian network X X X[1] X[2] X[M] Y Y[1] Y[2] Y[M] Y|X=0 Y|X=1 Posteriors of  are independent given complete data Also holds for parameters within families Note context specific independence between Y|X=0 and Y|X=1 when given both X and Y

Bayesian Estimation in BayesNets
Bayesian network for parameter estimation Bayesian network X X X[1] X[2] X[M] Y Y[1] Y[2] Y[M] Y|X=0 Y|X=1 Posteriors of  can be computed independently For multinomial Xi|pai posterior is Dirichlet with parameters Xi=1|pai+M[Xi=1|pai],..., Xi=k|pai+M[Xi=k|pai]

Assessing Priors for BayesNets
We need the (xi,pai) for each node xi We can use initial parameters 0 as prior information Need also an equivalent sample size parameter M’ Then, we let (xi,pai) = M’  P(xi,pai|0) This allows to update a network using new data Example network for priors P(X=0)=P(X=1)=0.5 P(Y=0)=P(Y=1)=0.5 M’=1 Note: (x0)=0.5 (x0,y0)=0.25 X Y

Case Study: ICU Alarm Network
The “Alarm” network 37 variables Experiment Sample instances Learn parameters MLE Bayesian PCWP CO HRBP HREKG HRSAT ERRCAUTER HR HISTORY CATECHOL SAO2 EXPCO2 ARTCO2 VENTALV VENTLUNG VENITUBE DISCONNECT MINVOLSET VENTMACH KINKEDTUBE INTUBATION PULMEMBOLUS PAP SHUNT ANAPHYLAXIS MINOVL PVSAT FIO2 PRESS INSUFFANESTH TPR LVFAILURE ERRBLOWOUTPUT STROEVOLUME LVEDVOLUME HYPOVOLEMIA CVP BP

Case Study: ICU Alarm Network
MLE 1.4 Bayes w/ Uniform Prior, M'=5 Bayes w/ Uniform Prior, M'=10 1.2 Bayes w/ Uniform Prior, M'=20 Bayes w/ Uniform Prior, M'=50 1 0.8 KL Divergence 0.6 0.4 0.2 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 M MLE performs worst Prior M’=5 provides best smoothing

Parameter Estimation Summary
Estimation relies on sufficient statistics For multinomials these are of the form M[xi,pai] Parameter estimation Bayesian methods also require choice of priors MLE and Bayesian are asymptotically equivalent Both can be implemented in an online manner by accumulating sufficient statistics MLE Bayesian (Dirichlet)