Bayesian Algorithm for learning structure of dynamic bayesian networks from incomplete data
- 格式:pdf
- 大小:450.82 KB
- 文档页数:6
2088 978-1-4244-1734-6/08/$25.00 c 2008 IEEE∏∏=→∏− =→++ξξ =→ξ+∏∏ π=π π+π×∏ξππππ∏π=χ π∏χ ππππχχ πξ2008 Chinese Control and Decision Conference (CCDC 2008)20893.1 Representation of the ProblemThe algorithms for learning DBNs must deal with two different but highly related tasks: learning the structure (the DAG G) and learning the parameters (the conditional probabilities ). In this paper, we are only interested in algorithms for learning the structure of DBNs. Therefore the problem of learning a DBN is stated as follows. Given a training set D of instances of X, find a network B=(B0,B ) that best matches D. The notion of “best match” is defined using a scoring function. Several different scoring functions have been proposed in the literature [10]. Then we can search for the best network according to selected score. Different Bayesian and non-Bayesian scoring metrics can be used. The most frequently used are the Bayesian Information Criterion (BIC) and the BDe score.3.2 AlgorithmBOA-DBNfor Learning DBNs Using BOA:In [4], the authors report their investigation of DBN structure learning with combined existing metrics (either BDe or BIC) with a version of EM algorithm. Many other authors followed such a decomposition scheme in the context of learning models from data. To reduce the computational complexity, they tend to share the idea that, by the decomposition of the metric function, dynamic Bayesian networks can be learned by using two Bayesian networks, prior network and transition network from complete data sequences. However, the data for modeling in a stochastic process always can not be all observed, we should also consider on learning Dynamic Bayesian networks structure from incomplete data sequences. Friedman et al. proposed Structure EM method to covert incomplete data into complete data using EM algorithm [4]. Being a deterministic search method, EM tends to converge at local optima. Meanwhile, evolution algorithm is a promising method for search problem [11]. Conventional evolutionary algorithms such as simple GAs are vulnerable to loose linkage in encoding strings; their performances degrade when tight encoding is not preserved, that is, a set of loci related each other are not encoded tightly on a string, because classical genetic operators such as one-point crossover could easily disrupt promising sub-solutions called building blocks. Tight encoding can only be ensured by using problem-specific knowledge given by the users. It is, however, sometimes difficult to obtain such knowledge, especially when the users try to solve challenging problems. BOA which builds a probabilistic model as a Bayesian network based on distribution of alleles in a population of strings after selections sounds promising for searching problem. According to the network, BOA generates a population of strings for the next generation, which tends to develop according to the optimization direction under the fitness function. We proposed BOA-DBN Algorithm to learn the structure of DBNs using BOA. 1) BOA-DBN Algorithm: To learn the structure of DBNs using BOA, we proposed BOA-DBN Algorithm, whose expression is: Input:1. A data set D = { X 0 , , X T } , X t = { X 1t , , X tI } , 2. (Optional:) Maximum evolution generation: Gen Output: A network B=(B n +1 , B n +1 ) 0 → Procedure: 1. Initialization: (a) Set t = 0 (b) Choose B = (B0, B ) randomly (c) Initialize population P(t) randomly 2. Loop for t=0, 1, … until convergence or t==Gen (a) If Xt is incomplete, mend it into “complete” one using inference in B (b) Improve the metric (BD metric) of B: (i) From population P(t), select a set of promising strings S(t) whose fitness score is higher than the average (ii) Construct a DBN based on the metric(BD metric) (iii) Generate a set of offspring O(t) based on the joint probabilities specified by the network B (iv) Create a population P(t+1) for the next generation by replacing strings from P(t) with O(t) (v) Set t= t+1 3. Return (B n +1 , B n +1 ) 0 → 2) Initial Population Selection: Initial population can generate randomly or by prior knowledge about a given problem. With prior knowledge, the search space for solution is narrowed efficiently. 3) Encoding: A DBN defined by a pair (B0, B ) where B0 is called prior network, and B is called transition network. We use two chromosomes C0 and C to represent the B0 and B . The combination of C0 and C encodes an entire DBN. Figure 3 and Figure 4 show the examples for encoding, if B0: 1 | 01 1 | 11 1 | 00 , which can beX1 [ 0 ] X 2 [ 0] X 3 [0]simplifiedwith01 11 00X1 [0] X 2 [ 0] X 3 [0 ]011100 ; B :6 bit1 | 00100 1 | 10001 1 | 01100 , which can be simplifiedX 1 [t ] X 2 [t ] X 3 [t ]with: 00100 10001 01100X 1[t ] X 2 [t ] X 3 [t ]001001000101100 ,15 bitthen the combinationB0 21bit B→encoding of B0 011100001001000101100 .Bis:4) Operators: In addition to these, operators in BOA-DBN are reproduction, crossover and mutation. In our case, the representation of the problem is a graph where the states of the problem are dags with n nodes. Thus, a state Gh will be a graph with n nodes and exactly h arcs and no directed cycle. The incremental construction of the solution starts from the empty graph G0 (or arcs-less dag) and proceeds by adding an arc x j → xi to the current20902008 Chinese Control and Decision Conference (CCDC 2008)state Gh , i.e., Gh +1 = Gh{ x j → xi } . The final solutionFitness B:B*, Di j' k'will be the state Gh .N0i,j',k' logθ 0i,j',k'logMnum o πx i Xi 1 2 → → ( j k Ni,j,k logθ i,j,k i logM → πxi ( Xi 1) 2 → o where π x i π xi epresent Xi parent nodes in B0 and B→ M Ml N0 i,j',k'θ i,j',k' = NNFig 3. Encoding for B0.0 i,j',k'0 i,j',k'/0(j') Xik' l=lMnum j=1p(x ,πk' i* y [0],θB ,B* ) 00where y [0] represents the 0 intance of lth observation sequence in train set D xik' represents valk' (Xi ),0( πX j') represents val j' (π (Xi [0]));ith(3)0( * p(xk' , π Xi j') yl [0],θB ,B* ) i 000( 1, π = π Xi j') 0 Xi 0 0( = 0, π Xi ≠ π Xi j') 0( p(xik' ,π Xi j') ) → θ i,j',k' = Ni,j',k' /Xi = xik' yl [0] Xi ≠ xik'* B* θB 00yl[0]N→ k' i,j',k'Ml j=1 → * (p(xik ,π Xi ( j) yl [t],θB ,B* )), →→Fig 4. Encoding for B .The fore part of a chromosome represents the structure of B0 while the rear part represents B . But unlike other evolution algorithm, here the operators (reproduction, crossover and mutation) only happen in the fore part and rear one respectively, id., the gene of B0 won’t interchange any information with the gene of B . And this also decreases the search space dramatically. To assure that each resulting structure during the evolution is a valid DAG, and do not violate the prior knowledge, is-cyclic-not algorithm and constraint condition judgment are introduced which gives low fitness score to these structures in this algorithm. Figure 5 shows DBN structure change by the crossover operations. Note that crossovers of two chromosomes may improve the average of population quality. Meanwhile, the mutation in 011100001001000101100 illustratesB0 21bit B→→ Ni,j',k' =Mnum j=1where yl[t] represents the t tht ≠ 0 intanceof lth observation sequence in train set D→ πX ( j) presents valj (π (Xi [t])).i→ * p(xk , πXi ( j) yl [t],θB ,B* ) i →→→ 1, π = π Xi ( j) → → = 0, π Xi ≠ π Xi ( j) → p(xik , π Xi ( j) )→ XiXi = xik Xi ≠ xik* B* θB →→yl[t] yl [0]adding or deleting arcs to nodes. 5) Fitness Function and Dealing with Incomplete Data Given the training data set D and learned DBN B*=(B0*, B *), the fitness function is described as (3).For incomplete data, we manage to covert them data into “complete” data to use the score function’s decomposition property [6].We introduce fitness function based on expectation and converted incomplete data into “complete” data utilizing current “best” dynamic Bayesian network in evolutionary process.2008 Chinese Control and Decision Conference (CCDC 2008)20910-2-4-6-8-10-12010020030040050060070080090010001 0 -1 -2 -3 -4 -5 -6 -7 -8 -9 0 100 200 300 400 500 600 700 800 900 1000Table1. Comparison of Evolution Methods20922008 Chinese Control and Decision Conference (CCDC 2008)2008 Chinese Control and Decision Conference (CCDC 2008)2093。