Embodiments relate generally to parameter optimization, and, more particularly, to computer systems, devices, methods and computer readable media for optimizing model parameters using partition function bounding.
Estimating probability density functions over sets of random variables can be a central problem in machine learning. For some problems, such as conditional random fields (CRFs) and log-linear models, estimation often requires minimizing a partition function.
Conventional bound-majorization methods were once used to optimize parameters and train models, but were overtaken by faster first-order and then second order methods.
An embodiment optimizes partition functions by computing a quadratic variational upper bound. Embodiments include methods for computing a bound of the partition function for structured prediction (e.g., conditional random fields), conditional likelihood problems, graphical models and latent likelihood problems. Structured prediction applications can include, but are not limited to, pattern recognition, shallow parsing, named entity recognition, gene finding, object recognition and image segmentation systems.
Embodiments can include methods for tuning parameters for deep belief networks, automated labeling of data, web page parsing, named entity recognition, logistic regression, machine translation and web page annotation.
The partition function can play a key role in probabilistic modeling including conditional random fields (CRFs), maximum entropy methods, graphical models and maximum likelihood estimation. An embodiment can include upper bounding a partition function using a quadratic function and optimizing parameters using the bounding.
At 108, the system computes a quadratic upper bound on a partition function as described below.
At 110, the system tests a loop index. If the end of the index has been reached, processing continues to 112, otherwise processing continues to 108.
At 112, the quadratic parameters of the partition function bound are provided for downstream processing.
The mathematical basis for partition function bounding (e.g., as shown in
Consider a log-linear density model over discrete yεΩ
which is parameterized by a vector θεd of dimensionality dεZ. Here, ƒ:Ωd is any vector-valued function mapping an input y to some arbitrary vector. The prior h:Ω+ is a fixed non-negative measure. The partition function Z(θ) is a scalar that ensures that p(y|θ) normalizes, i.e. Z(θ)=Σyh(y)exp(θTƒ(y)). Assume that the number of configurations of y is |Ω|=n and is finite. The partition function is clearly log-convex in θ and a linear lower-bound is given via Jensen's inequality. As mentioned above, an embodiment can include computing a quadratic upper-bound on the partition function. Algorithm 1, below, provides a mathematical computation for the bound's parameters. Theorem 1, below, shows the precise guarantee it provides.
Algorithm 1 finds z, μ, Σ such that zexp(½(θ−{tilde over (θ)})TΣ(θ−{tilde over (θ)})+(θ−{tilde over (θ)})Tμ) upper-bounds Z(θ)=Σyh(y)exp(θTƒ(y)) for any θ, {tilde over (θ)}, ƒ(y)εd and h(y)ε+ for all yεΩ.
The bound can improve previous inequalities and its proof is in the Appendix. For example, the bound can be computed using Algorithm 1 by iterating over the y variables (“for each yΣΩ”) according to an arbitrary ordering via the bijective function π:Ω{1, . . . , n} which defines i=π(y). The order in which we enumerate over Ω slightly varies the Σ in the bound (but not the μ and z) when |Ω|>2. Recall that choosing Σ=Σyh(y)exp({tilde over (θ)}Tƒ(y))(ƒ(y)−μ)(ƒ(y)−μ)T with μ and z as in Algorithm 1 yields the second-order Taylor approximation (the Hessian) of the log-partition function. Algorithm 1 replaces a sum of log-linear models with a single log-quadratic model which makes monotonic majorization straightforward.
At 202, initial parameters are provided to a system.
At 204, the system computes or updates partition functions bounds. For example, the partition function bounds can be computed according to Algorithm 1 discussed above.
At 206, parameters are selected that minimize the sum of the bounds.
At 208, the current parameters are updated based on the selected parameters.
At 210, the system determines if a termination condition has been reached. The termination condition can include one or more of a predetermined number of iterations, a predetermined amount of elapsed time, and a difference between current parameters and subsequent parameters of less than a predetermined threshold. If the termination condition has been reached, the parameters can be provided for use in a downstream process. Otherwise, if the termination condition has not been reached, processing can continue back to 204, where the bounding and minimizing can be performed again. In general, the bounding and minimizing can be repeated until the parameters converge.
Partition functions arise naturally in maximum entropy estimation or minimum relative entropy
estimation as follows
Therein, yεΩ, ƒ:Ωd and g:Ω are arbitrary (non-constant) vector-valued functions over the sample space. The solution distribution p(y)=h(y)exp(θTƒ(y)+θTg(y))/Z(θ, θ) is recovered by the dual optimization
where θεd and θεd′. These are obtained by minimizing Z(θ, θ) or equivalently by maximizing its negative logarithm. Algorithm 1 permits variational maximization of the dual via the quadratic program
where βT=[θTθT]. In fact, any general convex hull of constraints βεΛ⊂d+d′ could be imposed without loss of generality. In the case where there are no inequality constraints in the maximum entropy problem, only θεd is to be recovered and a simple closed-form iterative update rule emerges: {tilde over (θ)}←{tilde over (θ)}−Σ−1μ. This rule is interleaved with the bound computation to solve the dual optimization and obtain θ.
The partition function also arises in conditional extensions of the maximum entropy paradigm where the model is conditioned on an observed input. Such models are known as conditional random fields and have been useful for structured prediction problems. CRFs are given a data-set {(x1, y1), . . . , (xt, yt)} of independent identically-distributed (iid) input-output pairs where yj is the observed sample in a (discrete) space Ωj conditioned on the observed input xj. A CRF defines a distribution over all yεΩj (of which yj is a single element) as the log-linear model
where Zx
where λε+ is a regularizer set using prior knowledge or cross-validation. Rewriting gives the objective of interest
If prior knowledge (or constraints) restrict the solution vector to a convex hull A, the maximization problem becomes argmaxθεΛJ(θ). The maximization of Equation 1 thus subsumes the minimum relative entropy problem.
Algorithm 3 proposes a method for maximizing the regularized conditional likelihood J(θ) or, equivalently minimizing the partition function Z(θ). It solves the problem in Equation 1 subject to convex constraints by interleaving the quadratic bound with a quadratic programming procedure. Theorem 2 establishes the convergence of the algorithm and the proof is in the Supplement.
For any θ0εΛ, all ∥ƒx
The series
is the logarithmic integral which is
asymptotically.
Maximum conditional likelihood is extended to the setting where some variables are latent. We are given t iid samples x1, . . . , xt from some unknown distribution
Here mεΩm represents a discrete hidden variable, xεΩx is an input and yεΩy is a discrete output variable. The parameter Θ contains all parameters that explore the function class of such conditional distributions. The latent likelihood of the data L(Θ)=p(D|Θ) subsumes Equation 1 and is the new objective of interest
A good choice of the parameters is one that achieves a large conditional likelihood value (or posterior) on the data set D. Next, assume that each p(x|y, m, Θ) is an exponential family distribution
p(x|y,m,Θ)=hy,m(x)exp(θy,mTφy,m(x)−ay,m(θy,m))
where each conditional is specified by a function hy,m:Ωx+ and a feature mapping φy,m:Ωxd
This is parametrized by an unknown parameter π={πy,m}∀y,m where πy,mε[0, ∞). Finally, the collection of all parameters is Θ={θy,m, πy,m}∀y,m. Thus, we have the complete likelihood
where, without loss of generality, we dropped the index y, m indexing h(x), φ(x), and a(θ), making each conditional belong to the same exponential family form. Insert this expression into Equation 2 and remove constant factors that appear in both denominator and numerator. Apply the change of variables exp(vy,m)=πy,mexp(−a(θy,m)) and rewrite as
The objective as a function (it is now easy to regularize L(θ) by adding
of a vector θ is simply
after arranging parameters Θ in θε|Ω
[θ1,1Tv1,1θ1,2Tv1,2 . . . θ|Ω
Similarly, introduce vectors ƒj,ŷ,{circumflex over (m)}ε|Ω
[[φ(xj)T1]δ[(ŷ,{circumflex over (m)})=(1,1)] . . . [φ(xj)T1]δ[(ŷ,{circumflex over (m)})=(|Ωy|,|Ωm|)]]T.
In other words, the feature vector [φ(xj)T1]T is positioned appropriately in the longer ƒj,ŷ,{circumflex over (m)} vector which is otherwise equal to zero. Consider finding a variational lower bound on L(θ)≧Q(θ, {tilde over (θ)}) which is tight when θ={tilde over (θ)} such that L({tilde over (θ)})=Q({tilde over (θ)}, {tilde over (θ)}). We proceed by bounding each numerator and each denominator in the product over j=1, . . . , t as follows. Apply Jensen's inequality to lower bound each numerator term as
Algorithm 1 then bounds the denominator
The overall lower bound on the likelihood is then
where {tilde over (Σ)}=Σj=1tΣj and {tilde over (μ)}=Σj=1tμj−Σmηj,mƒj,y
At 302, a graphical model is provided to a system. The graphical model can be in the form of a junction tree, for example, or converted from a first form into a junction tree.
At 304, the system can set indexes to begin at a leaf node level of the graphical model.
At 306, bounds at the current node level can be computed and/or updated. The bound computation includes collecting pre-computed bounds from child nodes, as described below with respect to Algorithm 3.
At 308, the system traverses up one level in the graphical model.
At 310, the system determines if it has reached a root node level (e.g., reached the node level associated with index m as discussed below). If the system has not reached the root node level, then processing continues to 306. If the system has reached the root node level, then processing continues to 312 where parameters of a quadratic partition function bound are provided as output.
The bounds discussed above (e.g., Algorithms 1 and 2) are straightforward to compute when Ω is small. However, for graphical models, enumerating over Ω can be daunting. The method described in
where Z is a normalizing partition function (the dependence on parameters is suppressed here) and Yc is a subset of the random variables that are associated with the neighbors of node c. In other words, Yc={yi|iεNe(c)} where Ne(c) is the set of vertices that are neighbors of c.
Inference in graphical models requires the evaluation and the optimization of Z. These computations can be NP-hard in general yet are efficient when G satisfies certain properties. Consider the function class p(Y|θ) indexed by a parameter θεΛ where Λ⊂d is a convex hull. More specifically, consider the log-linear model
where Z(θ)=ΣYΠcεWhc(Yc)exp(θTƒc(Yc)). The model is defined by a set of vector-valued functions ƒc(Yc)εd and scalar-valued functions hc(Yc)ε+. Choosing a function from the function class hinges on estimating θ by optimizing Z(θ). However, Algorithm 1 may be inapplicable due to the large number of configurations in Y. Instead, consider a more efficient surrogate algorithm which computes the same bound parameters by efficiently exploiting the factorization of the graphical model. This is possible since exponentiated quadratics are closed under multiplication and the required bound computations distribute nicely across decomposable graphical models.
Begin by assuming that the graphical model in question is a junction tree and satisfies the running intersection property. It is known that any graphical model can be converted into such a form at the expense of growing the cardinality of the factors cεW. Starting with a general graph G, convert it into a junction tree T as follows. First, triangulate it by adding as few edges as possible (this does not change p(Y|θ)). Once triangulated, form a junction tree T by connecting overlapping cliques to maximize the sum of the cardinalities of clique intersections. Then, using the junction tree T, compute the bound parameters via Algorithm 3. This algorithm only requires enumerating over each configuration of pairs of adjacent cliques which is clearly more efficient than enumerating over all configurations of Y. Algorithm 3 can be used interchangeably with Algorithm 1 when the partition function involves a graphical model.
In Algorithm 3, take ch(c) to be the set of children-cliques of clique c and pa(c) to be the parent of c. Note that the algorithm enumerates over uεYpa(c)∩Yc and vεYc\Ypa(c). The algorithm stores a quadratic bound for each configuration of u (where u is the set of variables in common across both clique c and its parent). It then forms the bound by summing over vεYc\Ypa(c), each configuration of each variable a clique c has that is not shared with its parent clique. The algorithm also collects precomputed bounds from children of c. Also define w=uvεYc as the conjunction of both indexing variables u and v. Thus, the two inner for loops enumerate over all configurations wεYc of each clique. Note that w is used to query the children bεch(c) of a clique c to report their bound parameters zb|w, μb|w, Σb|w. This is done for each configuration w of the clique c. Note, however, that not every variable in clique c is present in each child b so only the variables in w that intersect Yb are relevant in indexing the parameters zb|w, μb|w, Σb|w, and the remaining variables do not change the values of zb|w, μb|w, Σb|w.
Algorithm 3 is efficient in the sense that computations involve enumerating over all configurations of each clique in the junction tree rather than over all configurations of Y. This shows that the computation involved is O(Σc|Yc|) rather than O(|Ω|) as in Algorithm 1. Thus, for estimating the computational efficiency of various algorithms in this article, take n=Σc|Yc| for the graphical model case rather than n=|Ω|. Algorithm 3 is a simple extension of the known recursions that are used to compute the partition function and its gradient vector. Thus, in addition to the Σ matrix which represents the curvature of the bound, Algorithm 3 is recovering the partition function value z and the gradient since
At 402 a system is provided with initial parameters and/or data having one or more large dimensions.
At 404, the quadratic bound of the partition function is updated by representing the curvature of the quadratic with a group of matrices of relatively low rank compared to a dimension of one or more of the inputs.
At 406, the system finds parameters that minimize a sum of the bounds.
At 408, the system updates stored parameters.
At 410, the system test for a termination condition. The termination condition can include one or more of the conditions described above with respect to 210 of
At 412, the system provides parameters as output.
Consider the situation where d is large and Algorithm 2 cannot store and invert the matrix Σ=tλI+Σj=1tΣj. Each loop of the algorithm requires O(tnd2+d3) time since step 2 requires computes each Σjεd×d and step 3 performs inversion. Algorithm 4 provides a low-rank version of the bound which majorizes the log-partition function but requires only O˜(tnd) complexity (on par with LBFGS). Below is a description of the mathematical algorithm changes to Algorithm 3 in order to efficiently handle high dimension inputs.
We first replace step 3 in Algorithm 2 with {tilde over (θ)}={tilde over (θ)}−Mu with M=Σ−1 and u=tλ{tilde over (θ)}+Σj=1tμj−ƒx
and use Sherman-Morrison to incrementally invert it via
Here, the index i ranges over all rank 1 updates to the matrix Σ for all elements of Ω as well as j=1, . . . , t. Third, we store M using a low-rank representation VSV̂T+D where VεR̂(k×d) is orthonormal, SεR̂(k×k) is non-positive diagonal and DεR̂(n×n) is non-negative diagonal. To decrement the matrix by a rank one update of the form Mi=Mi−1−ririT, simply project ri onto each eigenvector in V and update the appropriate singular value in S. After k such projections, the remaining residual from ri is a new candidate eigenvector e(k+1) and its magnitude is a candidate singular value. The resulting rank (k+1) system is orthonormal with (k+1) singular values. We discard the smallest singular value and its corresponding eigenvector to revert back to an order k eigensystem. However, instead of discarding it we absorb the smallest singular value and eigenvector into the D component by bounding the remaining outer-product with a diagonal term. This provides a guaranteed overall upper bound in O˜(tnd) (k is set be logarithmic with dimension d).
In operation, the processor 502 may execute the parameter optimizer 510 stored in the memory 506. The parameter optimizer 510 can include software instructions that, when executed by the processor, cause the processor to perform operations for optimizing parameters in accordance with the present disclosure (e.g., performing one or more of steps 102-112, 202-212, steps 302-312 and/or steps 402-412 described above).
The parameter optimizer 510 can operate in conjunction with the operating system 504 and utilize the parameter data 512 as described above.
In operation, the machine learning system 602 receives feature vectors 608 derived from input data (e.g., image data, audio data, text files, web pages or the like). The machine learning system can determine an optimized parameter set based on the input feature vectors. The parameters can be learned or tuned using one or more of the partition function bounding techniques described above.
The tuned or optimized parameters can be supplied by the machine learning system 602 to the prediction system 604. The prediction system 604 can receive a feature vector 612 derived from new input data 610. Using the parameters received from the machine learning system 602, the prediction system 604 can make a prediction about the feature vector 612 and produce an output 614. The output can include a likelihood, an expected label, a predicted result or the like.
In operation, the machine learning system 702 receives feature vectors 708 derived from input data (e.g., image data, audio data, text files, web pages or the like). As part of supervised learning, the machine learning system 702 can also receive information (e.g., labels 716) corresponding to the feature vectors 708. The machine learning system can determine an optimized parameter set based on the input feature vectors 708 and the labels 716. The parameters can be learned or tuned using one or more of the partition function bounding techniques described above.
The tuned or optimized parameters can be supplied by the machine learning system 702 to the prediction system 704. The prediction system 704 can receive a feature vector 712 derived from new input data 710. Using the parameters received from the machine learning system 602, the prediction system 604 can make a prediction about the feature vector 612 and produce an output 614. The output can include an expected label 714, for example.
Any system described above can include, but is not limited to, a single processor system, a multi-processor system (co-located or distributed), a cloud computing system, or a combination of the above.
Any client device described above can include, but is not limited to, a desktop computer, a laptop computer, a portable computer, a tablet computing device, a smartphone, a feature phone, a personal digital assistant, a media player, an electronic book reader, an entertainment system of a vehicle or the like.
Networks described herein can be wired or wireless networks, and can include, but are not limited to, WiFi networks, local area networks, wide area networks, the Internet, or a combination of the above.
Data storage, memory and/or computer readable media can include a nontransitory storage device such as a magnetic storage device (hard disk drive or the like), optical storage device (CD, DVD or the like), electronic storage device (RAM, ROM, flash, or the like). The software instructions can also be contained in, and provided as, an electronic signal.
Moreover, embodiments of the disclosed method, system, and computer readable media can be implemented in software executed on a programmed general purpose computer, a special purpose computer, a microprocessor, or the like.
It is, therefore, apparent that there is provided in accordance with the presently disclosed subject matter, a method, system, a computer program product and a computer readable media with software for parameter optimization. While this disclosed subject matter has been described in conjunction with a number of embodiments, it is evident that many alternatives, modifications and variations would be or are apparent to those of ordinary skill in the applicable arts. Accordingly, applicants intend to embrace all such alternatives, modifications, equivalents and variations that are within the spirit and scope of the disclosed subject matter.
Maximum Entropy Problem
Partition functions arise naturally in maximum entropy estimation or minimum relative entropy
estimation as follows
minRE(p∥h)s.t.Σyp(y)ƒ(y)=0, Σyp(y)g(y)≧0.
Therein, yεΩ, ƒ:Ωd and g:Ωd′ are arbitrary (non-constant) vector-valued functions over the sample space. The solution distribution p(y)=h(y)exp(θTƒ(y)+θTg(y))/Z(θ, θ) is recovered by the dual optimization
where θεd and θεd′. These are obtained by minimizing Z(θ, θ) or equivalently by maximizing its negative logarithm. Algorithm 1 permits variational maximization of the dual via the quadratic program
where βT=[θTθT]. Note that any general convex hull of constraints βεΛ⊂d+d′ could be imposed without loss of generality.
Proof 1
Rewrite the partition function as a sum over the integer index j=1, . . . , n under the random ordering π:Ω{1, . . . , n}. This defines j=π(y) and associates h and ƒ with hj=h(π−1(j)) and ƒj=ƒ(π−1(j)). Next, write Z(θ)=Σj=1nαjexp(λTƒj) by introducing λ=θ−{tilde over (θ)} and αj=hjexp(θTƒj). Define the partition function over only the first i components as Zi(θ)=Σj=1iαjexp(λTƒj). When i=0, a trivial quadratic upper bound holds
Z
0(θ)≦z0exp(½λTΣ0λ+λTμ0)
with the parameters z0→0+, μ0=0, and Σ0=z0I. Next, add one term to the current partition function Z1(θ)=Z0(θ)+α1exp(λTƒ1). Apply the current bound Z0(θ) to obtain
Z
1(θ)≦z0exp(½λTΣ0λ+λTμ0)+α1exp(λTƒ1).
Consider the following change of variables
and rewrite the logarithm of the bound as
ln Z1(θ)≦ln z0−½(ƒ1−μ0)TΣ0−1(ƒ1−μ0)+λTƒ1+ln(exp(½∥u∥2)+γ).
Apply the technique described in (T. Jebara, “Multitask sparsity via maximum entropy discrimination,” JMLR, 12:75-110, 2011) to the last term to get
Note that
The bound is tight when u=v. To achieve tightness when θ={tilde over (θ)} or, equivalently, λ=0, choose v=E0−1/2(μ0−ƒ1) yielding
Z
1(θ)≦z1exp(½λTΣ1λ+λTμ1)
where we have
This rule updates the bound parameters z0, μ0, Σ0 to incorporate an extra term in the sum over i in Z(θ). The process is iterated n times (replacing 1 with i and 0 with i−1) to produce an overall bound on all terms.
Proof 2
Begin by upper-bounding (in the Loewner ordering sense) the matrices Σj in Algorithm 3. Since ∥ƒx
(ƒx
Thus, Σj°F(α1, . . . , αn)4rI holds where
using the definition of α1, . . . , αn in the proof of Theorem 1. The formula for F starts at i=2 since z0→0+. Assume permutation π is sampled uniformly at random. The expected value of F is then
We claim that the expectation is maximized when all αi=1 or any positive constant. Also, F is invariant under uniform scaling of its arguments. Write the expected value of F as E for short. Next, consider
at the setting αi=1, ∀i. Due to the expectation over π, we have
for any l, o. Therefore, the gradient vector is constant when all αi=1. Since F(α1, . . . , αn) is invariant to scaling, the gradient vector must therefore be the all zeros vector. Thus, the point when all αi=1 is an extremum or a saddle. Next, consider
for any l, o. At the setting
for some non-negative constant function c(n). Thus, the αi=1 extremum is locally concave and is a maximum. This establishes that Eπ[F(α1, . . . , αn)]≦Eπ[F(1, . . . , 1)] and yields the Loewner bound
Apply this bound to each Σj in the lower bound on J(θ) and also note a corresponding upper bound
which follows from Jensen's inequality. Define the current {tilde over (θ)} at time τ as θτ, and denote by Lτ(θ) the above lower bound and by Uτ(θ) the above upper bound at time τ. Clearly, Lτ(θ)≦J(θ)≦Uτ(θ) with equality when θ=θτ. Algorithm 3 maximizes J(θ) after initializing at θ0 and performing an update by maximizing a lower bound based on Σj. Since Lτ(θ) replaces the definition of Σj with ωI±Σj, Lτ(θ) is a looser bound than the one used by Algorithm 3. Thus, performing θτ+1=arg maxθεΛLτ(θ) makes less progress than a step of Algorithm 1. Consider computing the slower update at each iteration τ and returning θτ+1=arg maxθεΛLτ(θ). Setting Φ=(tω+tλ)I, Ψ=tλI and
allows us to apply Theorem 3 as follows
Since Lτ(θτ)=J(θτ)=Uτ(θτ), J(θτ+1)≧supθεΛLτ(θ) and supθεΛUτ(θ)≧J(θ*), we obtain
Iterate the above inequality starting at t=0 to obtain
A solution within a multiplicative factor of ε implies that
Inserting the definition for κ shows that the number of iterations τ is at most
Inserting the definition for ω gives the bound.
If κΨ±Φ>0 for Φ, Ψεd×d, then
L(θ)=−½(θ−{tilde over (θ)})TΦ(θ−{tilde over (θ)})−(θ−{tilde over (θ)})TμU(θ)=−½(θ−{tilde over (θ)})TΨ(θ−{tilde over (θ)})−(θ−{tilde over (θ)})Tμ
satisfy
for any convex Λ⊂d, {tilde over (θ)}εΛ, μεd and κε+.
Proof 3
Define the primal problems of interest as PL=supθεΛL(θ) and PU=supθεΛU(θ). The constraints θεΛ can be summarized by a set of linear inequalities Aθ≦b where Aεkd and bεk for some (possibly infinite) kε. Apply the change of variables z=θ−{tilde over (θ)}. The constraint A(z+{tilde over (θ)})≦b simplifies into Az≦b where b=b−A{tilde over (θ)}. Since {tilde over (θ)}εΛ, it is easy to show that b≧0. We obtain the equivalent primal problems PL=supAz≦b−½zTΦz−zTμ and PU=supAz≦b−½zTΨz−zTμ. The corresponding dual problems are
Due to strong duality, PL=DL and PU=DU. Apply the inequalities Φ°κΨ and yTb>0 as
This proves that
For all uεd, ln
when the scalar term
The bound holds for any γ≧0 and vεd. Strict equality is achieved when u=v.
Proof of Correctness of Algorithm 3
Consider a simple junction tree of depth 2 (see, e.g.,
refers to the sum over all configurations of variables in
refers to the sum over all configurations of variables that are in Yc
where the upperbound comes from applying Theorem 1 to each of the terms:
To explain the notation that will be further used, ma,b denotes the number of children of bth node situated on depth a+1.
Finally, by simply rearranging terms we get:
One can prove that this expression can be upperbounded by the expression of the form: zexp(½(θ−{circumflex over (θ)})TΣ(θ−{circumflex over (θ)})+(θ−{circumflex over (θ)})Tμ) where z, Σ and μ can be computed using Algorithm 5 (notice it is nothing more than just Algorithm 3 for this simple junction tree that we consider). We will call this result Lemma 1. The proof is a mirror analogy of Proof 1 and so we do not provide it.
Consider enlarging the previously discussed example tree to a tree of depth 3 (See, e.g.,
By Lemma 1 we can upper bound each of the terms of the form:
by the expressions of the form: zc
Z(θ)≦ΣY
This process can be viewed as collapsing the subtrees S12,1, S22,1, . . . , Sm
The partition function of a general junction tree of depth p can be expressed as:
It should now be clear that for this ‘general’ tree, one can follow exactly the same steps as described before, start from leaves and collapse nodes to supernodes, each represented by bound parameters. It yields Algorithm 5. We do not provide a formal induction proof to avoid using complex notation.
Proof of Correctness of Algorithm 4
We begin by proving a theorem that will be useful later.
For all xεd and for all lεd:
Proof 5
By Jensen's inequality:
At ith iteration we store Mi using a low-rank representation ViTSiVi+Di where Viεk×d is orthonormal, Siεk×k is non-positive diagonal and Diεd×d is non-negative diagonal (each diagonal term of D1 (initialization) is set to 1/tλ where λ is the regularization term). We consider decrementing the matrix by a rank one update of the form Mi=Mi−1−ririT. By projecting ri onto each eigenvector in V, we can decompose ri as: ri=Σj=1kVi−1(j,•)riVi−1(j,•)T+res=Vi−1TVi−1ri+res. Thus the update rule can be rewritten as:
By discarding the smallest singular value and its corresponding eigenvector, one ends up with matrix Mi′ of one of the following form:
1) If res was discarded:
M
i
′=V
i−1
T
S
i−1
′V
i−1
+D
i−1
=M
i+resresT=Mi+cvvT
where c=1 and v=res
2) Otherwise, if mth eigenvector was discarded:
where c=−S′(m, m) and v=V(m,•)
Notice that both cases can be combined using the notation: Mi′=Mi+cvvT where c≧0 (since c=−S′(m, m) can only be nonnegative).
By discarding the smallest singular value and its corresponding eigenvector we violate the bound. Alternatively, instead of discarding, we can absorb those terms into a diagonal component, satisfying the bound. Formally, we look for diagonal matrix F such that Mi″=Mi′−F and for all xεd: xTΣi″x≧xTΣix where Σi=Mi−1 and Σi″=Mi″−1. Thus, we want to satisfy:
x
TΣi″x≧xTΣixxTMi″−1x≧xTMi−1xxT(Mi′−F)−1x≧xTMi−1x
x
T(Mi+cvvT−F)−1x≧xTMi−1x
From positive definiteness (throughout all iterations positive definiteness can be satisfied by the proper choice of λ while initializing D1, notice that to break positive definiteness in any iteration one would have to set λ to a very large value in the initialization, i.e. 1e23, which obviously is unreasonable in practice) it is equivalent to satisfy:
x
T(Mi+cvvT−F)x≧xTMixxTcvvTx≧xTFxc(Σi=1dx(i)v(i))2≦Σi=1dx(i)2F(i)
where for the ease of notation F(i)=F(i, i).
Let
Let also for now assume that ∀i=1, . . . , dv(i)≧0. We will very soon get rid of this assumption. Thus we look for F such that: Σi=1dx(i)2F(i)≧c(Σi=1dx(i)Wv(i)′)2Σi=1dx(i)2F(i)≧cW2(Σi=1dx(i)v(i)′)2
Thus we look for F′ such that: Σi=1dx(i)2F(i)′≧(Σi=1dx(i)v(i)′)2. By Theorem 5 one can easily show that the solution is F′=v(i)′ (simply substitute l(i)=sqrt(v(i)′) and keep in mind Σj=1dv(j)′=1). Thus:
Thus for all xεd and for all xεd such that ∀i=1, . . . , d:v(i)≧0 and for F(i)=cv(i)Σj=1dv(j) the following inequality holds:
Σi=1dx(i)2F(i)≧c(Σi=1dx(i)v(i))2 (3)
To generalize the inequality to hold for all vectors vεd (also with negative entrances), it is sufficient to set F(i)=c|v(i)|Σj=1d|v(j)|. To see it consider flipping the sign of any v(i), the left side of the Inequality 3 does not change. For the right side of this inequality, flipping the sign of v(i) is equivalent to flipping the sign of x(i) and not changing the sign of v(i), but in this case the inequality holds as proven before (it holds for any xεd). Thus for all xεd and for all vεd and for F(i)=c|v(i)|Σj=1d|v(j)|, Inequality 3 holds.
This application claims the benefit of U.S. Provisional Application No. 61/494,281, entitled “Data Learning Using Probability Models and Conditional Random Fields” filed on 7 Jun. 2011, which is hereby incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61494281 | Jun 2011 | US |