Patent Publication Number: US-11049265-B2

Title: Balancing diversity and precision of generative models with complementary density estimators

Description:
RELATED APPLICATION INFORMATION 
     This application claims priority to U.S. Provisional Patent Application No. 62/672,571, filed on May 16, 2018, and to U.S. Provisional Patent Application No. 62/796,658, filed on Jan. 25, 2019, both incorporated herein by reference herein in their entireties. 
    
    
     BACKGROUND 
     Technical Field 
     The present invention relates to generative models of high-dimensional, continuous data and more particularly learning generative models of high-dimensional, continuous data. 
     Description of the Related Art 
     Methods for modeling continuous, high-dimensional data such as those implemented by Generative Adversarial Networks (GAN) and variational autoencoders suffer from problems including a lack of diversity in the generated samples, unrealistic samples, and very difficult training. The ability of GAN models to generalize is questionable. For example, a common (and commonly executed) failure mode of deep generative models in the GAN family is to model only a small subset of the data. Likewise, although variational autoencoders are known to generalize with a higher scope, for example including modeling more of the data, variational autoencoders generalize at the expense of generating less-precise samples. 
     SUMMARY 
     According to an aspect of the present invention, a method is provided for training and evaluating a deep generative model with an architecture consisting of two complementary density estimators are provided. The method includes receiving a probabilistic model of vehicle motion, and training, by a processing device, a first density estimator and a second density estimator jointly based on the probabilistic model of vehicle motion. The first density estimator determines a distribution of outcomes and the second density estimator estimates sample quality. The method also includes identifying by the second density estimator spurious modes in the probabilistic model of vehicle motion. The probabilistic model of vehicle motion is adjusted to eliminate the spurious modes. 
     According to another aspect of the present invention, a system is provided for training and evaluating a deep generative model with an architecture consisting of two complementary density estimators. The system includes a processor device operatively coupled to a memory device. The processor device receives a probabilistic model of vehicle motion and trains a first density estimator and a second density estimator jointly based on the probabilistic model of vehicle motion. The first density estimator determines a distribution of outcomes and the second density estimator estimates sample quality. Spurious modes are identified by the second density estimator spurious modes in the probabilistic model of vehicle motion. The processor device adjusts the probabilistic model of vehicle motion to eliminate the spurious modes. 
     These and other features and advantages will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
       The disclosure will provide details in the following description of preferred embodiments with reference to the following figures wherein: 
         FIG. 1  is a generalized diagram of a neural network, in accordance with an embodiment of the present invention; 
         FIG. 2  is a diagram of an artificial neural network (ANN) architecture, in accordance with an embodiment of the present invention; 
         FIG. 3  is a block diagram illustrating a network architecture for balancing diversity and precision of generative models with complementary density estimators, in accordance with the present invention; 
         FIG. 4  is a block diagram illustrating a process of training the model, in accordance with the present invention; 
         FIG. 5  is a block diagram illustrating mitigation of overfitting, in accordance with the present invention; 
         FIG. 6  is a block diagram illustrating a potential warning generated by the system in a hazardous situation, in accordance with the present invention; and 
         FIG. 7  is a flow diagram illustrating a method for training and evaluating a deep generative model with an architecture consisting of two complementary density estimators, in accordance with the present invention. 
     
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     In accordance with the present invention, systems and methods are provided for warning a driver of a potential collision scenario with sufficient notice to allow the driver to make a corrective action. Other approaches to this problem suffer from either of two failure modes: the system may underestimate the probability of collision or overestimate the probability of collision. The example embodiments mitigate both failure modes by learning a probabilistic model of vehicle motion that assigns high probability to most of the plausible paths in the scene while ensuring that every prediction generated by the model is also likely under the true distribution of future paths. The system then generates samples from this model to estimate the probability that the future path of the vehicle will collide with an obstacle. 
     The example embodiments can train a model of continuous, high-dimensional, structured data such as images or paths of intelligent agents and perform inferences using the trained model including synthesizing novel examples, assessing the quality of the model, and assessing the quality of samples generated from the model. This model is trained to balance dual objectives of generating diverse samples while ensuring the samples are also of high quality (e.g., likely under the true data distribution). The example embodiments thereby minimize the potential for overestimation or underestimation of collision probabilities. 
     Embodiments described herein include a deep generative model that optimizes a symmetrized Kullback-Leibler (KL) divergence via a combination of direct density estimation and variational inference. Density estimation is the construction of an estimate, based on observed data, of an unobservable underlying probability density function. The unobservable density function is thought of as the density according to which a large population is distributed; the data are usually thought of as a random sample from that population. The example embodiments ensure samples from data are likely under the model and ensure samples from the model are likely under the data distribution. The example embodiments apply density estimations to ensure samples from the data are likely under the model. 
     The example embodiments can be applied when the data density is unknown. The example embodiments overcome a lack of information regarding the data density by applying a variational inference technique based on Fenchel duality. The variational parameters consist of a Gibbs distribution, learned jointly with q, that estimates the data density over the support of the model. 
     The example embodiments, in contrast to approaches that circuitously learn a discriminator from the model and data, and then train the model based on the discriminator, exploit direct density estimation to obtain quantitatively superior coverage of the data and better-quality samples as well as stable training. 
     Referring now to  FIG. 1 , a generalized diagram of a neural network is shown. 
     An artificial neural network (ANN) is an information processing system that is inspired by biological nervous systems, such as the brain. The key element of ANNs is the structure of the information processing system, which includes many highly interconnected processing elements (called “neurons”) working in parallel to solve specific problems. ANNs are furthermore trained in-use, with learning that involves adjustments to weights that exist between the neurons. An ANN is configured for a specific application, such as pattern recognition or data classification, through such a learning process. 
     ANNs demonstrate an ability to derive meaning from complicated or imprecise data and can be used to extract patterns and detect trends that are too complex to be detected by humans or other computer-based systems. The structure of a neural network generally has input neurons  102  that provide information to one or more “hidden” neurons  104 . Connections  108  between the input neurons  102  and hidden neurons  104  are weighted and these weighted inputs are then processed by the hidden neurons  104  according to some function in the hidden neurons  104 , with weighted connections  108  between the layers. There can be any number of layers of hidden neurons  104 , and as well as neurons that perform different functions. There exist different neural network structures as well, such as convolutional neural network, maxout network, etc. Finally, a set of output neurons  106  accepts and processes weighted input from the last set of hidden neurons  104 . 
     This represents a “feed-forward” computation, where information propagates from input neurons  102  to the output neurons  106 . Upon completion of a feed-forward computation, the output is compared to a desired output available from training data. The error relative to the training data is then processed in “feed-back” computation, where the hidden neurons  104  and input neurons  102  receive information regarding the error propagating backward from the output neurons  106 . Once the backward error propagation has been completed, weight updates are performed, with the weighted connections  108  being updated to account for the received error. This represents just one variety of ANN. 
     Referring now to the drawings in which like numerals represent the same or similar elements and initially to  FIG. 2 , an artificial neural network (ANN) architecture  200  is shown. It should be understood that the present architecture is purely exemplary and that other architectures or types of neural network may be used instead. The ANN embodiment described herein is included with the intent of illustrating general principles of neural network computation at a high level of generality and should not be construed as limiting in any way. 
     Furthermore, the layers of neurons described below and the weights connecting them are described in a general manner and can be replaced by any type of neural network layers with any appropriate degree or type of interconnectivity. For example, layers can include convolutional layers, pooling layers, fully connected layers, stopmax layers, or any other appropriate type of neural network layer. Furthermore, layers can be added or removed as needed and the weights can be omitted for more complicated forms of interconnection. 
     During feed-forward operation, a set of input neurons  202  each provide an input signal in parallel to a respective row of weights  204 . In the hardware embodiment described herein, the weights  204  each have a respective settable value, such that a weight output passes from the weight  204  to a respective hidden neuron  206  to represent the weighted input to the hidden neuron  206 . In software embodiments, the weights  204  may simply be represented as coefficient values that are multiplied against the relevant signals. The signals from each weight adds column-wise and flows to a hidden neuron  206 . 
     The hidden neurons  206  use the signals from the array of weights  204  to perform some calculation. The hidden neurons  206  then output a signal of their own to another array of weights  204 . This array performs in the same way, with a column of weights  204  receiving a signal from their respective hidden neuron  206  to produce a weighted signal output that adds row-wise and is provided to the output neuron  208 . 
     It should be understood that any number of these stages may be implemented, by interposing additional layers of arrays and hidden neurons  206 . It should also be noted that some neurons may be constant neurons  209 , which provide a constant output to the array. The constant neurons  209  can be present among the input neurons  202  and/or hidden neurons  206  and are only used during feed-forward operation. 
     During back propagation, the output neurons  208  provide a signal back across the array of weights  204 . The output layer compares the generated network response to training data and computes an error. The error signal can be made proportional to the error value. In this example, a row of weights  204  receives a signal from a respective output neuron  208  in parallel and produces an output which adds column-wise to provide an input to hidden neurons  206 . The hidden neurons  206  combine the weighted feedback signal with a derivative of its feed-forward calculation and stores an error value before outputting a feedback signal to its respective column of weights  204 . This back propagation travels through the entire network  200  until all hidden neurons  206  and the input neurons  202  have stored an error value. 
     During weight updates, the stored error values are used to update the settable values of the weights  204 . In this manner the weights  204  can be trained to adapt the neural network  200  to errors in its processing. It should be noted that the three modes of operation, feed forward, back propagation, and weight update, do not overlap with one another. 
     Referring now to  FIG. 3 , a network architecture  300  for balancing diversity and precision of generative models with complementary density estimators is illustratively depicted in accordance with an embodiment of the present invention. 
     As shown in  FIG. 3 , network architecture  300  includes two density estimation networks (data likelihood density estimation network  320 , which is herein designated q or first density estimator, and interpretable model density estimation network  330 , herein designated v or second density estimator) and (in some embodiments, optionally) a network management device  310  that can provide an interface for (a user to manage) data (for example, data input and output) and manages interaction (and data flow) between the two density estimation networks ( 320  and  330 ). The first density estimator  320  can be sampled efficiently and enables efficient evaluation while the second density estimator  330  incorporates domain knowledge, evaluates sample quality, and is interpretable. The data likelihood density estimation network  320  and interpretable model density estimation network  330  can include neural networks. The density estimators are trained jointly leveraging variational interference. 
     The data likelihood density estimation network  320  produces a first model (for example, model q) that can be sampled efficiently. The first model can be used to produce data likelihood estimates. 
     The interpretable model density estimation network  330  determines an interpretable (e.g., a second) model (which is) jointly trained with the first model (determined by the data likelihood density estimation network  320 ) that provides an estimate of sample quality. The interpretable model density estimation network  330  trains the interpretable model by optimizing a variational lower bound based on Fenchel duality. 
     The interpretable model density estimation network  330  trains the network to obtain improved training efficiency, stability, and a balance of diversity and precision in generated examples, while also producing an interpretable model (for example, model v). The interpretable model density estimation network  330  improves training stability by regularizing the second model more effectively using domain knowledge, and by determining the optimal value of the second model independent of the first model. 
     Network architecture  300  is configured for learning generative models of high-dimensional, continuous data. Network architecture  300  generalizes more of the data while generating more precise samples as compared to other approaches, such as variational autoencoders. In example embodiments, network architecture  300  can be applied to vehicle motion forecasting. 
     Referring now to  FIG. 4 , a process  400  of training the interpretable model is illustrated. 
       FIG. 4  illustrates the process of training an interpretable model. The first distribution p(x)  410  is sampled (for example, samples are received, etc.)  405  to determine samples from p  415 . As can be seen from  FIG. 4 , the distributions p(x), q(x) and v(x) are measured based on a probability of events  402  (y-axis) over time  401  (x-axis). 
     Training  425  the first density estimator, q,  320  ( 430 ) alone, ( q   min H(p,q)) may result in poor samples  415  being generated. 
     For this reason, a second density estimator, v,  330  ( 460 ) is learned jointly ( 450 ) ( v   min  {tilde over (H)} v (p,q)) with q,  320  which serves to evaluate sample quality (samples from q  455 ). In this instance, v is posted towards p at samples from q. The latter estimator (v,  330 ) identifies spurious modes ( 435 ) in q. Finally, model q is adjusted again ( 475 ), ( q   min H(p,q))+ v   min {tilde over (H)} v (p,q)) thereby eliminating ( 480 ) the bad modes (at which q is penalized for high density when v≠Ø). 
     Network architecture  300  (in comparison to other systems) generalizes (more of the) data while generating (more) precise samples  425  by training the model to minimize the symmetric KL divergence between the data distribution p (for example, p(x)  410 ) and the model distribution q (for example, q(x)  430 ). Specifically, according to an embodiment, network architecture  300  assigns q as the solution to the following optimization problem: 
     
       
         
           
             
               
                 
                   
                     
                       
                         min 
                         
                           q 
                           ∈ 
                           Q 
                         
                       
                       ⁢ 
                       
                         KL 
                         ⁡ 
                         
                           ( 
                           
                             p 
                             || 
                             q 
                           
                           ) 
                         
                       
                     
                     + 
                     
                       KL 
                       ⁡ 
                       
                         ( 
                         
                           q 
                           || 
                           p 
                         
                         ) 
                       
                     
                   
                   , 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     1 
                     ) 
                   
                 
               
             
           
         
       
     
     where Q is an appropriately selected set of model distributions. Minimizing KL (p∥q), also known as the M-projection, ensures that q ( 430 ) covers all the modes of p ( 410 ), while minimizing the I-projection prevents q ( 430 ) from retaining spurious modes (for example, spurious mode  430 ) not supported in p. As this divergence is an f-divergence, network architecture  300  can optimize the divergence via applying f-gan: training generative neural samplers using variational divergence minimization, which produces q ( 430 ) in the form of a function transforming samples from a simple base distribution to samples from q. 
     This approach, despite having the advantage of not requiring the evaluation of q ( 430 ) at any point, shares the disadvantages of other methods that use GANs. These problems can arise because the optimal discriminator is a function of the likelihood ratio p=q: (and) the discriminator is burdened with the duty of representing both p ( 410 ) and q ( 430 ) in some form. This quantity (for example, the optimal discriminator) can change dramatically during the training process, and provides the only training signal for q, and there is no clear regularization principle for limiting the complexity of this quantity besides imposing generic smoothness constraints. 
     According to an example embodiment, the network architecture  300  can learn generative models of high-dimensional, continuous data by relaxing the assumption that the training method not rely on direct evaluation of the density of q, since a model with an analytic density can be relatively easily obtained. Simple mixture models can be used for the base distribution ( 520 ). In addition, flexible neural density estimators, such as real-valued non-volume preserving (RealNVP), satisfy the requirement that the training method not rely on direct evaluation of the density of q. With this assumption, KL (p∥q) can be optimized via stochastic gradient descent (SGD), since q can be directly evaluated. The network architecture  300  optimizes KL (q∥p) via Fenchel-duality-based variational inference, in similar fashion to applying f-gan: training generative neural samplers using variational divergence minimization. This results in the following approximated version of 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           
                             min 
                             θ 
                           
                           ⁢ 
                           
                             - 
                             
                               
                                 𝔼 
                                 p 
                               
                               [ 
                               
                                 log 
                                 ⁢ 
                                 
                                     
                                 
                                 ⁢ 
                                 
                                   
                                     q 
                                     θ 
                                   
                                   ⁡ 
                                   
                                     ( 
                                     x 
                                     ) 
                                   
                                 
                               
                               ) 
                             
                           
                         
                         ] 
                       
                       - 
                       
                         H 
                         ⁡ 
                         
                           ( 
                           
                             q 
                             θ 
                           
                           ) 
                         
                       
                       - 
                       
                         
                           min 
                           ϕ 
                         
                         ⁢ 
                         
                           { 
                           
                             
                               
                                 𝔼 
                                 p 
                               
                               ⁡ 
                               
                                 [ 
                                 
                                   e 
                                   
                                     
                                       lo 
                                       ⁢ 
                                       
                                           
                                       
                                       ⁢ 
                                       g 
                                       ⁢ 
                                       
                                           
                                       
                                       ⁢ 
                                       
                                         
                                           q 
                                           θ 
                                         
                                         ⁡ 
                                         
                                           ( 
                                           x 
                                           ) 
                                         
                                       
                                     
                                     - 
                                     
                                       
                                         V 
                                         ϕ 
                                       
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                   
                                 
                                 ] 
                               
                             
                             + 
                             
                               
                                 𝔼 
                                 qs 
                               
                               ⁢ 
                               
                                 
                                   V 
                                   ϕ 
                                 
                                 ⁡ 
                                 
                                   ( 
                                   x 
                                   ) 
                                 
                               
                             
                           
                           ) 
                         
                       
                     
                     } 
                   
                   . 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     2 
                     ) 
                   
                 
               
             
           
         
       
     
     Here, Vφ is a scalar-valued function of the state that is interpreted as a Gibbs energy. Although Vφ is analogous to the GAN discriminator, the optimal Vφ (as described herein below) is p ( 410 ) rather than some function of p=q. This provides a regularization principle: Vφ is to be structured to assign similar energies to similar examples and incorporate any available prior samples for p (for example,  415 ). For example, if x is an image, then a translationally-invariant Vφ (such as a CNN) may be appropriate (for example, v(x)  460 ). Energy-based methods for structured prediction can be applied. Since the optimal value of the inner optimization is independent of q, this method also confers benefits to training stability. Any available prior knowledge for p characterizes the structure of Vφ and if the network architecture  300  has information regarding which data distribution (p) the network architecture  300  is modeling, the network architecture  300  can incorporate such knowledge to design Vφ accordingly. For example, if x is an image, the network architecture  300  can parameterize Vφ using convolutional neural network (CNN). 
     Network architecture  300  determines the symmetric sum of KL-divergences between the target distribution p and the learned distribution q:
 
 J ( p,q )= KL ( p∥q )= H ( p,q )− H ( p )+ H ( q,p )− H ( q )  Equation (3).
 
     More particularly, network architecture  300  seeks to optimize q to minimize Eq. 3, which is independent of the entropy of the target distribution (H(p) is an entropy of p). 
     
       
         
           
             
               
                 
                   
                     
                       min 
                       q 
                     
                     ⁢ 
                     
                       J 
                       ⁡ 
                       
                         ( 
                         
                           p 
                           , 
                           q 
                         
                         ) 
                       
                     
                   
                   = 
                   
                     
                       
                         min 
                         q 
                       
                       ⁢ 
                       
                         H 
                         ⁡ 
                         
                           ( 
                           
                             p 
                             , 
                             q 
                           
                           ) 
                         
                       
                     
                     - 
                     
                       H 
                       ⁡ 
                       
                         ( 
                         q 
                         ) 
                       
                     
                     + 
                     
                       
                         H 
                         ⁡ 
                         
                           ( 
                           
                             q 
                             , 
                             p 
                           
                           ) 
                         
                       
                       . 
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     4 
                     ) 
                   
                 
               
             
           
         
       
     
     The first term, H(p,q), is the “forward cross-entropy,” and corresponds to a standard likelihood maximization of data sampled from p under the log-density of q. The forward cross-entropy can be optimized (in a straight forward manner) by leveraging the exact inference property of the pushforward distribution (or normalizing flow). The middle term, H(q), is simply the entropy of q. The last term, the “reverse cross-entropy,” cannot be computed without knowledge of the density p. H(q,p) can be expanded as shown below:
 
 H ( q,p )=−   r˜q  log  p ( x )=∫ v   q ( x )(−log  p ( x )) dx   Equation (5).
 
     In example embodiments, network architecture  300  can apply lower bounds to Eq. 5 to thereby remove requirement evaluation of log p(x). Consider the Fenchel conjugate of f(p)=−log(p): f*(λ)=−1−log(−λ); λ&lt;0. A Fenchel conjugate is a convex and lower semi continuous function, defined on the dual space. By the definition of Fenchel conjugacy, network architecture  300  can lower-bound the cross-entropy of Eq. 5: 
     
       
         
           
             
               
                 
                   
                       
                   
                   ⁢ 
                   
                     
                       
                         f 
                         ⁡ 
                         
                           ( 
                           p 
                           ) 
                         
                       
                       ≥ 
                       
                         
                           sup 
                           
                             λ 
                             &lt; 
                             0 
                           
                         
                         ⁢ 
                         
                           { 
                           
                             
                               λ 
                               ⁢ 
                               
                                   
                               
                               ⁢ 
                               p 
                             
                             - 
                             
                               
                                 f 
                                 * 
                               
                               ⁡ 
                               
                                 ( 
                                 λ 
                                 ) 
                               
                             
                           
                           } 
                         
                       
                     
                     = 
                     
                       
                         sup 
                         
                           λ 
                           &lt; 
                           0 
                         
                       
                       ⁢ 
                       
                         
                           { 
                           
                             
                               λ 
                               ⁢ 
                               
                                   
                               
                               ⁢ 
                               p 
                             
                             + 
                             1 
                             + 
                             
                               log 
                               ⁡ 
                               
                                 ( 
                                 
                                   - 
                                   λ 
                                 
                                 ) 
                               
                             
                           
                           } 
                         
                         . 
                       
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     6 
                     ) 
                   
                 
               
             
             
               
                 
                   
                     H 
                     ⁡ 
                     
                       ( 
                       
                         q 
                         , 
                         p 
                       
                       ) 
                     
                   
                   ≥ 
                   
                     
                       ∫ 
                       X 
                     
                     ⁢ 
                     
                       
                         q 
                         ⁡ 
                         
                           ( 
                           x 
                           ) 
                         
                       
                       ⁢ 
                       
                         ( 
                         
                           
                             
                               sup 
                               
                                 
                                   λ 
                                   ⁡ 
                                   
                                     ( 
                                     x 
                                     ) 
                                   
                                 
                                 &lt; 
                                 0 
                               
                             
                             ⁢ 
                             
                               λ 
                               ⁡ 
                               
                                 ( 
                                 x 
                                 ) 
                               
                             
                             ⁢ 
                             
                               p 
                               ⁡ 
                               
                                 ( 
                                 x 
                                 ) 
                               
                             
                           
                           + 
                           1 
                           + 
                           
                             log 
                             ⁡ 
                             
                               ( 
                               
                                 - 
                                 
                                   λ 
                                   ⁡ 
                                   
                                     ( 
                                     x 
                                     ) 
                                   
                                 
                               
                               ) 
                             
                           
                         
                         ) 
                       
                       ⁢ 
                       
                         dx 
                         . 
                       
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     7 
                     ) 
                   
                 
               
             
             
               
                 
                   
                       
                   
                   ⁢ 
                   
                     ≥ 
                     
                       
                         sup 
                         
                           
                             λ 
                             ⁡ 
                             
                               ( 
                               x 
                               ) 
                             
                           
                           &lt; 
                           0 
                         
                       
                       ⁢ 
                       
                         
                           ∫ 
                           X 
                         
                         ⁢ 
                         
                           
                             q 
                             ⁡ 
                             
                               ( 
                               x 
                               ) 
                             
                           
                           ⁢ 
                           
                             ( 
                             
                               
                                 
                                   λ 
                                   ⁡ 
                                   
                                     ( 
                                     x 
                                     ) 
                                   
                                 
                                 ⁢ 
                                 
                                   p 
                                   ⁡ 
                                   
                                     ( 
                                     x 
                                     ) 
                                   
                                 
                               
                               + 
                               1 
                               + 
                               
                                 log 
                                 ⁡ 
                                 
                                   ( 
                                   
                                     - 
                                     
                                       λ 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                   
                                   ) 
                                 
                               
                             
                             ) 
                           
                           ⁢ 
                           
                             dx 
                             . 
                           
                         
                       
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     8 
                     ) 
                   
                 
               
             
             
               
                 
                   
                       
                   
                   ⁢ 
                   
                     ≥ 
                     
                       1 
                       + 
                       
                         
                           sup 
                           
                             
                               λ 
                               ⁡ 
                               
                                 ( 
                                 x 
                                 ) 
                               
                             
                             &lt; 
                             0 
                           
                         
                         ⁢ 
                         
                           
                             ∫ 
                             X 
                           
                           ⁢ 
                           
                             
                               q 
                               ⁡ 
                               
                                 ( 
                                 x 
                                 ) 
                               
                             
                             ⁢ 
                             
                               ( 
                               
                                 
                                   
                                     λ 
                                     ⁡ 
                                     
                                       ( 
                                       x 
                                       ) 
                                     
                                   
                                   ⁢ 
                                   
                                     p 
                                     ⁡ 
                                     
                                       ( 
                                       x 
                                       ) 
                                     
                                   
                                 
                                 + 
                                 
                                   log 
                                   ⁡ 
                                   
                                     ( 
                                     
                                       - 
                                       
                                         λ 
                                         ⁡ 
                                         
                                           ( 
                                           x 
                                           ) 
                                         
                                       
                                     
                                     ) 
                                   
                                 
                               
                               ) 
                             
                             ⁢ 
                             
                               dx 
                               . 
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     9 
                     ) 
                   
                 
               
             
             
               
                 
                   
                       
                   
                   ⁢ 
                   
                     = 
                     
                       1 
                       + 
                       
                         
                           sup 
                           
                             
                               λ 
                               ⁡ 
                               
                                 ( 
                                 x 
                                 ) 
                               
                             
                             &lt; 
                             0 
                           
                         
                         ⁢ 
                         
                           
                             { 
                             
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 ⁡ 
                                 
                                   [ 
                                   
                                     
                                       λ 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                     ⁢ 
                                     
                                       q 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                   
                                   ] 
                                 
                               
                               + 
                               
                                 
                                   𝔼 
                                   q 
                                 
                                 ⁢ 
                                 
                                   log 
                                   ⁡ 
                                   
                                     ( 
                                     
                                       - 
                                       
                                         λ 
                                         ⁡ 
                                         
                                           ( 
                                           x 
                                           ) 
                                         
                                       
                                     
                                     ) 
                                   
                                 
                               
                             
                             } 
                           
                           . 
                         
                       
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     10 
                     ) 
                   
                 
               
             
           
         
       
     
     The minimization problem in Eq. 4 becomes an adversarial optimization: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           min 
                           q 
                         
                         ⁢ 
                         
                           J 
                           ⁡ 
                           
                             ( 
                             
                               μ 
                               , 
                               q 
                             
                             ) 
                           
                         
                       
                       ≥ 
                       
                         
                           
                             min 
                             q 
                           
                           ⁢ 
                           
                             ( 
                             
                               - 
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 [ 
                                 
                                   log 
                                   ⁢ 
                                   
                                       
                                   
                                   ⁢ 
                                   
                                     q 
                                     ⁡ 
                                     
                                       ( 
                                       x 
                                       ) 
                                     
                                   
                                 
                                 ) 
                               
                             
                             ] 
                           
                         
                         - 
                         
                           H 
                           ⁡ 
                           
                             ( 
                             q 
                             ) 
                           
                         
                         + 
                         
                           
                             sup 
                             
                               
                                 λ 
                                 ⁡ 
                                 
                                   ( 
                                   x 
                                   ) 
                                 
                               
                               &lt; 
                               0 
                             
                           
                           ⁢ 
                           
                             { 
                             
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 ⁡ 
                                 
                                   [ 
                                   
                                     
                                       λ 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                     ⁢ 
                                     
                                       q 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                   
                                   ] 
                                 
                               
                               + 
                               
                                 
                                   𝔼 
                                   q 
                                 
                                 ⁢ 
                                 
                                   log 
                                   ⁡ 
                                   
                                     ( 
                                     
                                       - 
                                       
                                         λ 
                                         ⁡ 
                                         
                                           ( 
                                           x 
                                           ) 
                                         
                                       
                                     
                                     ) 
                                   
                                 
                               
                             
                             } 
                           
                         
                       
                     
                     ) 
                   
                   . 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     11 
                     ) 
                   
                 
               
             
           
         
       
     
     Let λ(x)=−1=v(x); v(x)&gt;0. Then, 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           min 
                           q 
                         
                         ⁢ 
                         
                           J 
                           ⁡ 
                           
                             ( 
                             
                               p 
                               , 
                               q 
                             
                             ) 
                           
                         
                       
                       ≥ 
                       
                         
                           
                             min 
                             q 
                           
                           ⁢ 
                           
                             ( 
                             
                               - 
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 [ 
                                 
                                   log 
                                   ⁢ 
                                   
                                       
                                   
                                   ⁢ 
                                   
                                     q 
                                     ⁡ 
                                     
                                       ( 
                                       x 
                                       ) 
                                     
                                   
                                 
                                 ) 
                               
                             
                             ] 
                           
                         
                         - 
                         
                           H 
                           ⁡ 
                           
                             ( 
                             q 
                             ) 
                           
                         
                         + 
                         
                           
                             sup 
                             
                               
                                 v 
                                 ⁡ 
                                 
                                   ( 
                                   x 
                                   ) 
                                 
                               
                               &gt; 
                               0 
                             
                           
                           ⁢ 
                           
                             { 
                             
                               
                                 - 
                                 
                                   
                                     𝔼 
                                     p 
                                   
                                   ⁡ 
                                   
                                     [ 
                                     
                                       
                                         q 
                                         ⁡ 
                                         
                                           ( 
                                           x 
                                           ) 
                                         
                                       
                                       
                                         v 
                                         ⁡ 
                                         
                                           ( 
                                           x 
                                           ) 
                                         
                                       
                                     
                                     ] 
                                   
                                 
                               
                               - 
                               
                                 
                                   𝔼 
                                   q 
                                 
                                 ⁢ 
                                 log 
                                 ⁢ 
                                 
                                     
                                 
                                 ⁢ 
                                 
                                   ( 
                                   
                                     v 
                                     ⁡ 
                                     
                                       ( 
                                       x 
                                       ) 
                                     
                                   
                                   ) 
                                 
                               
                             
                             } 
                           
                         
                       
                     
                     ) 
                   
                   . 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     12 
                     ) 
                   
                 
               
             
             
               
                 
                   
                     
                       = 
                       
                         
                           
                             min 
                             q 
                           
                           ⁢ 
                           
                             ( 
                             
                               - 
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 [ 
                                 
                                   log 
                                   ⁢ 
                                   
                                       
                                   
                                   ⁢ 
                                   
                                     q 
                                     ⁡ 
                                     
                                       ( 
                                       x 
                                       ) 
                                     
                                   
                                 
                                 ) 
                               
                             
                             ] 
                           
                         
                         - 
                         
                           H 
                           ⁡ 
                           
                             ( 
                             q 
                             ) 
                           
                         
                         - 
                         
                           
                             inf 
                             
                               
                                 v 
                                 ⁡ 
                                 
                                   ( 
                                   x 
                                   ) 
                                 
                               
                               &gt; 
                               0 
                             
                           
                           ⁢ 
                           
                             { 
                             
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 ⁡ 
                                 
                                   [ 
                                   
                                     
                                       q 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                     
                                       v 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                   
                                   ] 
                                 
                               
                               + 
                               
                                 
                                   𝔼 
                                   q 
                                 
                                 ⁢ 
                                 
                                   log 
                                   ⁡ 
                                   
                                     ( 
                                     
                                       v 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                     ) 
                                   
                                 
                               
                             
                             } 
                           
                         
                       
                     
                     ) 
                   
                   . 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     13 
                     ) 
                   
                 
               
             
             
               
                 
                   
                     
                       = 
                       
                         
                           
                             min 
                             q 
                           
                           ⁢ 
                           
                             ( 
                             
                               - 
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 [ 
                                 
                                   log 
                                   ⁢ 
                                   
                                       
                                   
                                   ⁢ 
                                   
                                     q 
                                     ⁡ 
                                     
                                       ( 
                                       x 
                                       ) 
                                     
                                   
                                 
                                 ) 
                               
                             
                             ] 
                           
                         
                         - 
                         
                           H 
                           ⁡ 
                           
                             ( 
                             q 
                             ) 
                           
                         
                         - 
                         
                           
                             inf 
                             
                               
                                 v 
                                 ⁡ 
                                 
                                   ( 
                                   x 
                                   ) 
                                 
                               
                               &gt; 
                               0 
                             
                           
                           ⁢ 
                           
                             { 
                             
                               
                                 
                                   𝔼 
                                   p 
                                 
                                 ⁡ 
                                 
                                   [ 
                                   
                                     e 
                                     
                                       
                                         lo 
                                         ⁢ 
                                         
                                             
                                         
                                         ⁢ 
                                         
                                           gq 
                                           ⁡ 
                                           
                                             ( 
                                             x 
                                             ) 
                                           
                                         
                                       
                                       - 
                                       
                                         lo 
                                         ⁢ 
                                         
                                             
                                         
                                         ⁢ 
                                         
                                           gv 
                                           ⁡ 
                                           
                                             ( 
                                             v 
                                             ) 
                                           
                                         
                                       
                                     
                                   
                                   ] 
                                 
                               
                               + 
                               
                                 
                                   𝔼 
                                   q 
                                 
                                 ⁢ 
                                 
                                   log 
                                   ⁡ 
                                   
                                     ( 
                                     
                                       v 
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                     ) 
                                   
                                 
                               
                             
                             } 
                           
                         
                       
                     
                     ) 
                   
                   . 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     14 
                     ) 
                   
                 
               
             
           
         
       
     
     Network architecture  300  imposes a specific form on v to interpret it as an unnormalized Gibbs energy. Network architecture  300  uses v(x)=exp(Vφ(x)), where Vφ(x): □ d →□ is a learned function (e.g., a neural-network) that “scores” samples, such as shown in  FIG. 5 . Finally, network architecture  300  formulates the optimization problem in terms of this parameterized energy function Vφ and parameterized qθ: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           
                             min 
                             θ 
                           
                           ⁢ 
                           
                             - 
                             
                               
                                 𝔼 
                                 p 
                               
                               [ 
                               
                                 log 
                                 ⁢ 
                                 
                                     
                                 
                                 ⁢ 
                                 
                                   
                                     q 
                                     θ 
                                   
                                   ⁡ 
                                   
                                     ( 
                                     x 
                                     ) 
                                   
                                 
                               
                               ) 
                             
                           
                         
                         ] 
                       
                       - 
                       
                         H 
                         ⁡ 
                         
                           ( 
                           
                             q 
                             θ 
                           
                           ) 
                         
                       
                       - 
                       
                         
                           min 
                           ϕ 
                         
                         ⁢ 
                         
                           { 
                           
                             
                               
                                 𝔼 
                                 p 
                               
                               ⁡ 
                               
                                 [ 
                                 
                                   e 
                                   
                                     
                                       lo 
                                       ⁢ 
                                       
                                           
                                       
                                       ⁢ 
                                       g 
                                       ⁢ 
                                       
                                           
                                       
                                       ⁢ 
                                       
                                         
                                           q 
                                           θ 
                                         
                                         ⁡ 
                                         
                                           ( 
                                           x 
                                           ) 
                                         
                                       
                                     
                                     - 
                                     
                                       
                                         V 
                                         ϕ 
                                       
                                       ⁡ 
                                       
                                         ( 
                                         x 
                                         ) 
                                       
                                     
                                   
                                 
                                 ] 
                               
                             
                             + 
                             
                               
                                 𝔼 
                                 
                                   q 
                                   θ 
                                 
                               
                               ⁢ 
                               
                                 
                                   V 
                                   ϕ 
                                 
                                 ⁡ 
                                 
                                   ( 
                                   x 
                                   ) 
                                 
                               
                             
                           
                           ) 
                         
                       
                     
                     } 
                   
                   . 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     ( 
                     15 
                     ) 
                   
                 
               
             
           
         
       
     
       FIG. 5  illustrates a system for mitigation of overfitting of samples  500  that can be implemented by network architecture  300 . 
     Network architecture  300  structures the model v to conform to the symmetries present in the data. Network architecture  300  thereby allows bad modes to be identified and pruned from q without pruning good modes. 
     As shown in  FIG. 5 , samples can include unobserved data  510 , observed data  515  and generated samples  455 . The samples are observed (in a two-dimensional (2D) configuration) around a first axis  501  and a second axis  502 . 
     The base distribution generator  520  generates samples  455  of unobserved data. As shown with regard to distribution  505 , high v regions  530  can be formed in which v overfits if not regularized (for example, in instances of high-quality samples for a small subset of the data). Base distribution is a latent distribution (Gaussian or Gaussian mixture) where the data lies in an high dimensional space. The density of data points is estimated in this latent space following the base distribution by mapping data points through q. As shown with regard to distribution  540 , high-q regions  545  can be formed in which v overfits if under-regularized (for example, in instances of less precise samples). Minimization of penalty from v refers to the second min of Equation (2). Minimization of penalty from v assigns similar energy with q for samples from p ( 540 ). Moreover, the structured V allows preventing overfitting to q and modeling unobserved data as well ( 570 ). 
     As shown in  550 ,  q   min H(p,q) tends to overestimate support of p. In this instance, there are a larger number of generated samples  455  than appropriate, indicating a higher probability of events than realistic. This is a manifestation of the spurious mode. The example embodiments suppress the spurious mode. 
     A Gibbs structured v (for example, as shown in  560 ) mitigates overfitting by correlating energies of similar points. In  570 , the Gibbs structured v prevents penalization of samples similar to training data under Gibbs energy. In this instance there is a minimization of penalty from v and the v is properly regularized in a manner that prevents q overfitting. 
       FIG. 6  illustrates a potential warning generated by a system in a vehicle using the network architecture  300  in a hazardous scenario (for example, situation)  600 . 
     As shown in  FIG. 6 , a motor vehicle (for example, a car, truck, etc.) windscreen  605  with a messaging section  610  is illustrated. The messaging section can receive and display messages from an associated system in the vehicle. 
     The system detects that the vehicle may either turn right ( 625 ) or continue through the intersection (path: 1 safe  620 ). If the vehicle turns right  630 , (path: 2 danger  625 ) the vehicle may collide with a pedestrian ( 640 ) crossing the street ( 650 ) (partially obscured by tree  645 ). A warning is therefore issued to alert the driver of this potentiality (displayed in the messaging section  610 , Warning! Right turn conflicts with pedestrian). In the lower portion of  FIG. 6 , larger arrows  615  (with striped stippling) show the two potential modes of future behavior detected by the system. Smaller arrows (in background of arrows  615 ) show samples  655  drawn from the predicted future trajectory distribution. 
     According to example embodiments, the system mitigates failure modes by learning a probabilistic model of vehicle motion that assigns high probability to most of the plausible paths in the scene while ensuring that every prediction generated by the model is also likely under the true distribution of future paths. The system then generates samples from this model to estimate the probability that the future path of the vehicle will collide with an obstacle. The predicted future trajectory distribution can be determined to a greater accuracy based on analyzing the distribution in a similar manner as described with respect to first distribution p(x)  410  to ensure unobserved modes are properly accounted for. 
     The system provides a warning  610  a driver of a potential collision with sufficient notice to allow the driver to make a corrective action. The system determines a proper estimate of the probability of collision. The system mitigates failure modes (for example, underestimation or overestimation of the probability of collision) by learning a probabilistic model of vehicle motion that assigns high probability to most of the plausible paths in the scene while ensuring that every prediction generated by the model is also likely under the true distribution of future paths. The system then generates samples from this model to estimate the probability that the future path of the vehicle will collide with an obstacle. 
     Referring now to  FIG. 7 , a method  700  for training and evaluating a deep generative model with an architecture consisting of two complementary density estimators is illustratively depicted in accordance with an embodiment of the present invention. 
     At block  710 , network architecture  300  receives a probabilistic model of vehicle motion. 
     At block  720 , network architecture  300  trains a first density estimator, q, and a second density estimator, v, jointly. The first density estimator and the second density estimator access the probabilistic model of vehicle motion. The first density estimator determines a distribution of outcomes (for example, a probability of collision). The network architecture  300  also evaluates sample quality based on the second density estimator. 
     At block  730 , the second density estimator identifies spurious modes in q. 
     At block  740 , network architecture  300  adjusts the model q, eliminating the substantially implausible (for example, bad, incorrect) modes and generating a model (of the vehicle motion) that assigns high probability to plausible paths in a scene while ensuring that every prediction generated by the model is also likely under the true distribution of future paths. 
     The foregoing is to be understood as being in every respect illustrative and exemplary, but not restrictive, and the scope of the invention disclosed herein is not to be determined from the Detailed Description, but rather from the claims as interpreted according to the full breadth permitted by the patent laws. It is to be understood that the embodiments shown and described herein are only illustrative of the present invention and that those skilled in the art may implement various modifications without departing from the scope and spirit of the invention. Those skilled in the art could implement various other feature combinations without departing from the scope and spirit of the invention. Having thus described aspects of the invention, with the details and particularity required by the patent laws, what is claimed and desired protected by Letters Patent is set forth in the appended claims.