# Patent

## Title
Neural networks for transforming signals

## Abstract

A method for transforms input signals, by first defining a model for transforming the input signals, wherein the model is specified by constraints and a set of model parameters. An iterative inference procedure is derived from the model and the set of model parameters and unfolded into a set of layers, wherein there is one layer for each iteration of the procedure, and wherein a same set of network parameters is used by all layers. A neural network is formed by untying the set of network parameters such that there is one set of network parameters for each layer and each set of network parameters is separately maintainable and separately applicable to the corresponding layer. The neural network is trined to obtain a trained neural network, and then input signals are transformed using the trained neural network to obtain output signals.

## Background
FIELD OF THE INVENTION
This invention relates generally to transforming signals, and more particularly to transforming signals using neural networks.
BACKGROUND OF THE INVENTION
Machine Learning
Two of the most successful general approaches to transforming signals, such as speech, image and video signals, are model-based methods and neural networks. Each offers important advantages and disadvantages.
Model-Based Methods
A main advantage of the model-based methods, such as probabilistic graphical models, is that models can incorporate prior knowledge and intuition to reason at the problem level in devising inference procedures. Important assumptions about problem constraints can often be incorporated into the model-based approach. Examples include constraints such as the linear additivity of audio signals, e.g. speech signals, and visual occlusion in image processing, as well as more subtle statistical assumptions such as conditional independence, latent variable structure, sparsity, low-rank covariances, and so on. By hypothesizing and testing different problem-level constraints, insight into the nature of the problem can be gained and used to improve the modeling assumptions.
Unfortunately, inference in probabilistic models can be computationally intractable. Approximate methods, such as loopy belief propagation (BP) and variational approximations can derive iterative procedures to infer the latent variables of interest. However, despite greatly improving the situation, such iterative methods are often still too slow for time-sensitive applications, such as real time speech or video processing. In such cases, rigorous discriminative optimization of the models can be challenging because they may involve hi-level optimization, where optimization of the parameters of the model depends on an iterative inference procedure.
FIG. 2A shows a prior art model-lased method. An inference procedure f 200 iterates 202 K times on input signals xi 201 using parameters 203 to infer intermediate variables φi. Then, an estimation model g 204 is applied to obtain output yi 205.
Neural Networks
Neural networks are formulated such that the inference is defined as a finite closed-form expression, organized into layers, which are typically executed in sequence. Typically, a neural network includes an input layer, one or more hidden layers, and an output layer. If the number of hidden layers is large, then the neural network is called a deep neural network, and the layers are learned incrementally. Discriminative training of the networks can be used to optimize speed versus accuracy trade-offs.
One well-known disadvantage is that conventional neural networks are closer to mechanisms than problem-level formulations, and can be considered essentially “black-box” methods. Therefore, it is very difficult to incorporate prior knowledge about the real world signals and the goal of the transformation into the network. Moreover, even with a working neural networks, it is often not clear how it actually achieves its results. Therefore, discovering how to modify the network to achieve better results is not straightforward. Another example of this disadvantage is that only a limited set of activation functions that perform the computation of each layer have been investigated, and it is not clear how to choose the best activation function to solve a particular problem, or how to design a new activation function that is best suited to solve a particular problem.
SUMMARY OF THE INVENTION
Model-based methods and neural networks have both been used for transforming real world signals, e.g., transforming a speech signal to text, transforming a noisy speech signal to an enhanced speech signal, transforming a noisy image to a clean image, transforming a set of input images from different view points into a depth map, etc. The transformations can be more complex, for example, the transforming can produce a class characterizing the input signals, or recognize a pattern inherent in video signals.
In model-based methods, the knowledge about the problem domain can be expressed in the model formulae, the model parameters and variables, and the constraints on the model parameters and variables. However, inference in such methods can be difficult. Typically, the inference is performed by an iterative inference procedure that uses the model constraints, the model parameters and procedure parameters. In contrast, deterministic neural networks are constructed in such a way that the inference is straightforward, but at the expense of difficulties in incorporating the knowledge about the problem domain.
Therefore, the embodiments of the invention provide a method for processing input signals that has the advantages of model-based methods and neural networks, while avoiding many of their disadvantages. The general idea of the invention can be summarized as follows. Given a model-based approach that requires an iterative inference procedure, the iterations are unfolded into a layer-wise structure analogous to a neural network, where all layers are associated with the same set of parameters. Then, the parameters are untied by associating a different set of parameters to each layer and allowing them to be different from each other. This leads to novel neural-network-like architectures with novel activation functions, that can easily be trained discriminatively using gradient-based methods.
The resulting method combines the expressive power of the neural network with the internal structure of the model-based approach, while allowing inference to be performed in a number of layers whose parameters can be optimized for best performance.
This framework can be applied to a number of model-based methods. In particular, it can be applied to non-negative matrix factorization (NMF) to obtain a novel non-negative neural network architecture, that can be trained with a multiplicative back-propagation-style update procedure. The method can also be applied to loopy belief propagation (BP) for Markov random fields, or variational inference procedures for intractable generative models.
A specific embodiment is for solving a real world speech enhancement problem, where the resulting neural network outperforms a conventional neural network while only requiring a fraction of the number of the parameters. We believe this is due to the ability to incorporate problem level assumptions into the architecture of our neural network with novel activation functions.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a flow diagram of a method for transforming input signals using a neural network according to embodiments of the invention;
FIG. 2A is a flow diagram of a prior art model-based method;
FIG. 2B is a block diagram of the neural network of FIG. 1 according to embodiments of the invention;
FIG. 3 is a block diagram of a neural network, according to embodiments of the invention, for a non-negative matrix factorization (NW) model;
FIG. 4 is a block diagram of a recurrent neural network derived from the neural network of FIG. 3 according to embodiments of the invention;
FIG. 5 is a flow diagram of a method for training and testing with the neural network of FIG. 2B; and
FIG. 6 is a flow diagram of a method for training and testing with the neural networks of FIG. 3 and FIG. 4.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
As shown in FIG. 1, the embodiments of our invention provide a method for transforming an input signal using a neural network obtained from an iterative inference procedure.
A model 101 with constraints and model parameters is used to derive an iterative inference procedure 102, which makes use of corresponding procedure parameters, as well as the model parameters. The iterative inference procedure and parameters are unfolded 110. The unfolding converts each iteration of the iterative inference procedure into a layer-vase structure analogous to a neural network with a set of layers Lk 111, k=0, . . . , K where K is a number of iterations in the iterative inference procedure, and a set of network parameters θ 112. It is understood that the same set of network parameters is used by each layer, i.e., modifying the set of parameters modifies the operations of all layers in the same way. Equivalently, each layer can be considered to have its own set of parameters, but these sets of parameters are tied to each other. Using the conventional approach, the layers L0, . . . , Lk are shown in a bottom to top manner, from the input layer, to the hidden layers, to the output layer.
The invention is based in part on the realization that having the network layers 111 share the same set of parameters 112 is a severe restriction on the flexibility of the network to solve a given problem.
Therefore, in step 120, the sets of parameters are untied so that the sets of parameters can be different for each layer, and each layer 121 is now associated with a separately maintainable set of parameters 122, therefore leading to the novel neural network 130. It is understood that the dimensions, ordering and meaning of the sets of parameters are the same. For example, each set is a vector of N variables.
By untying the sets parameters from each other, the sets of parameters can be individually tuned for each layer. This can improve the quality of the model, and as a result improve speed vs. accuracy trade-offs during operation. The untying and maintenance of the untied parameters is non-trivial as described in greater detail below.
The neural network 130 can now be trained 140 discriminatively using, e.g., gradient-based methods and training data 510, by individually adjusting the sets of parameters 122.
The trained neural network 150 can now transform 160 input signal xi 501 to obtain an output is yi 502, as shown in FIG. 5. The input signals can be obtained by various sensors, e.g., microphones, cameras, motion sensors, and the like.
The steps can be performed in one or more processors connected to memory and input/output interfaces as known in the art. It is understood that signals, such as audio and video, processed by a processor are typically acquired by sensors and converted to digital data by an analog-to digital converter.
Example Iterative Models
We consider models for which the inference is an optimization problem. One example is variational inference, where a lower bound on a likelihood of the input is optimized to estimate approximate posterior probabilities, which can be used to determine conditional expected values of hidden quantities.
As another example, loopy belief propagation (BP) is also an iterative procedure that enforces local consistency constraints on marginal posterior probabilities. When the procedure converges, fixed points correspond to stationary points of the Bethe variational free energy.
In another example, non-negative matrix factorization (NMF) is a non-negative basis function expansion model, whose objective function can be optimized by simple multiplicative update rules.
All of these models, as well as many others, can be used by the invention to generate corresponding novel deep unfolding neural networks.
Unfolding and Untying
As shown in FIG. 2B, we describe a general formulation based on a model, determined by the sets of parameters θ 122 that specify relationships between hidden quantities of interest (output) yi 502 and the observed variables (input) xi 501 for each data instance i.
During the transformation 160 of the input xi, estimating the output yi 502 involves optimizing an inference objective function θ(xi,φi), where φi are intermediate variables, considered as vectors, from which the output yi can be determined as




  
    
      
        
          
            
              
                φ
                ^
              
              i
            
            ⁡
            
              (
              
                
                  x
                  i
                
                |
                θ
              
              )
            
          
          =
          
            arg
            ⁢
            
              
            
            ⁢
            
              
                min
                
                  φ
                  i
                
              
              ⁢
              
                
              
              ⁢
              
                
                  F
                  θ
                
                ⁡
                
                  (
                  
                    
                      x
                      i
                    
                    ,
                    
                      φ
                      i
                    
                  
                  )
                
              
            
          
        
        ,
        
          
            
              
                y
                ^
              
              i
            
            ⁡
            
              (
              
                
                  x
                  i
                
                |
                θ
              
              )
            
          
          =
          
            
              g
              θ
            
            ⁡
            
              (
              
                
                  x
                  i
                
                ,
                
                  
                    
                      φ
                      ^
                    
                    i
                  
                  ⁡
                  
                    (
                    
                      
                        x
                        i
                      
                      |
                      θ
                    
                    )
                  
                
              
              )
            
          
        
        ,
      
    
    
      
        (
        1
        )
      
    
  




where gθ, a top or output layer of the neural network, is an estimator or reconstruction model for yi. We can arbitrarily formulate the optimization as a minimization, as in the case of energy minimization, but equivalently the optimization can be a maximization as in the case of probabilities. For many interesting cases, this optimization is difficult and leads to an iterative inference procedure.

In probabilistic generative models, the objective function  can be an approximation to the negative log likelihood, yi can represent hidden quantities, and φi represent an estimate of the posterior distribution of the hidden quantities. For example, in variational inference procedures, φi can be variational parameters. in sum-product loopy belief propagation, φi are posterior marginal probabilities. In another example for a non-probabilistic formulation of NMF, φi can be activation coefficients of basis functions that are updated at inference time. The xi,yi can be sequences or have other underlying structures, which are ignored in this description for simplicity.
The model parameters in the model-based approach could be trained using a discriminative objective function

εθΣi(yi*,ŷi(xi|θ)),  (2)

where  is a loss function, and yi* a reference value. In some settings, a discriminative objective {tilde over (ε)}θΣi(yi*,{circumflex over (φ)}i(xi|θ)), which determines an expected loss, could also be considered.

In the general case, equation (2) is a bi-level optimization problem because ŷi(xi|θ) is determined by the optimization problem in equation (1), which depends on the parameters θ. The intermediate variables φi in equation (1) can be optimized iteratively using update steps k∈{1 . . . K} of the form

φik=fθ(xi,φik−1),  (3)

beginning with φi0. Indices k in superscripts refer to iteration indices, and are not to be interpreted as exponents.

Although all steps are assumed to use the same fθ, the steps can be composed of different smaller steps. This can occur in loopy belief propagation when different subsets of messages are passed in each step, or in variational inference, when different subsets of variational parameters are updated in each step.
Unfolding
Rather than considering the iterations as a procedure, we unfold 110 the procedure 102 as a sequence of layers 111 in a neural network-like architecture, where the iteration index is now interpreted as an index to the neural network layer. The intermediate variables φ1, . . . , φK are the nodes of layers 1 to K and equation (3) determines the transformation and activation function between the layers. The hidden quantities yiK are the nodes of the output layer, which are obtained by

yiK=gθ(xi,φiK),

where g is the reconstruction function.

Untying
We realize that using the same parameters 112 for all layers is not necessary in the context of discriminative training, and can even be detrimental to performance.
Therefore, we explicitly untie 120 the parameters 122 from each other across the layers 121 to form the much improved neural network 130. In addition to allowing: the network to fit more complex functions, we believe the untying can also reduce the susceptibility to local minima.
To formulate this untying, we define sets of parameters θ{θk}k=0K 122, where each θk is a set of parameters for the layer k 121, so that φik=fθk−1(xi,φik−1), and yiK=gθK(xi,φiK) in the top layer.
During the training 140, we can individually and separately optimize one or more of the sets of parameters θk in θ 122 using the discriminative objective function εθ in (2) above, or the discriminative objective function {tilde over (ε)}θ determining an expected loss.
We can determine the derivatives recursively using back-propagation




  
    
      
        
          
            
              ∂
              ɛ
            
            
              ∂
              
                φ
                i
                K
              
            
          
          =
          
            
              
                ∂
                D
              
              
                ∂
                
                  y
                  i
                  K
                
              
            
            ⁢
            
              
                ∂
                
                  y
                  i
                  K
                
              
              
                ∂
                
                  φ
                  i
                  K
                
              
            
          
        
        ,
        
          
            
              ∂
              ɛ
            
            
              ∂
              
                θ
                K
              
            
          
          =
          
            
              ∑
              i
            
            ⁢
            
              
                
                  ∂
                  D
                
                
                  ∂
                  
                    y
                    i
                    K
                  
                
              
              ⁢
              
                
                  ∂
                  
                    y
                    i
                    K
                  
                
                
                  ∂
                  
                    θ
                    K
                  
                
              
            
          
        
        ,
      
    
    
      
        (
        4
        )
      
    
  
  
    
      
        
          
            
              ∂
              ɛ
            
            
              ∂
              
                φ
                i
                k
              
            
          
          =
          
            
              
                ∂
                ɛ
              
              
                ∂
                
                  φ
                  i
                  
                    k
                    +
                    1
                  
                
              
            
            ⁢
            
              
                ∂
                
                  φ
                  i
                  
                    k
                    +
                    1
                  
                
              
              
                ∂
                
                  φ
                  i
                  k
                
              
            
          
        
        ,
        
          
            
              ∂
              ɛ
            
            
              ∂
              
                θ
                k
              
            
          
          =
          
            
              ∑
              i
            
            ⁢
            
              
                
                  ∂
                  ɛ
                
                
                  ∂
                  
                    φ
                    i
                    
                      k
                      +
                      1
                    
                  
                
              
              ⁢
              
                
                  ∂
                  
                    φ
                    i
                    
                      k
                      +
                      1
                    
                  
                
                
                  ∂
                  
                    θ
                    k
                  
                
              
            
          
        
        ,
      
    
    
      
        (
        5
        )
      
    
  




where k<K. We sum over all the intermediate indices of the derivatives. The specific derivations depend on the form of f, g and , for which we give examples below.

Note that we can optionally place some constraints on the sets of parameters θk across layers. In particular, we can assume that some subsets of parameters are coupled, either through a hard tying, i.e., their values are assumed to be equal across layers inside each subset, or through a smooth coupling, for example by using a penalty function ensuring that their values across layers inside each subset are close to each other.
Initial values for the parameters may be obtained by a variety of means, such as by randomization, by setting the values to some predefined values, or by using a training procedure for the original model-based approach with tied parameters. After initialization, some subsets of the parameters may be trained, and other parameters held to their initial value.
Neural Network Discriminative Non-Negative Matrix Factorization
In one embodiment as shown in FIG. 3, we create a novel neural network from a non-negative matrix factorization (NMF) model. This novel neural network can be applied to any real world non-negative signal. Although NMF can be applied in many domains, here we focus on the real world task of single-channel source separation, which aims to recover source signals from mixtures of signals, e.g., audio (speech) signals. In this context, the model encompasses the problem-level assumptions that power or magnitude spectra of different source signals approximately add up to the mixture, and that, at each time instance, the features of each source can be described as a linear combination of non-negative basis functions.
NMF operates on a matrix of F-dimensional non-negative spectral features, usually the power or magnitude spectrogram of the mixture M=[m1 . . . mT], where T is the number of frames and mt∈+F, t=1, . . . , T are obtained by short-time Fourier transformation of the time-domain signal. With L sources, a set of Rl non-negative basis vectors w1l, . . . , wRll is assumed for each source l∈{1, . . . , L}. Indices l in superscripts refer to the source index, and are not to be interpreted as exponents. The basis vectors are concatenated into matrices Wl=[w1l . . . wRll]. A column-wise normalized




  
    
      W
      ~
    
    l
  
  =
  
    [
    
      
        
          w
          1
          l
        
        
          
          
            w
            1
            l
          
          
        
      
      ⁢
      
        
      
      ⁢
      ...
      ⁢
      
        
      
      ⁢
      
        
          w
          
            R
            l
          
          l
        
        
          
          
            w
            
              R
              l
            
            l
          
          
        
      
    
    ]
  




can be used to avoid scaling indeterminacy. The basic assumptions can then be written as

M≈ΣlSl≈Σl{tilde over (W)}lHl={tilde over (W)}H,  (6)

where Hl is an activation matrix for source l, and H is a vertical concatenation of the activation matrices for each source H1, . . . , HL.

The β-divergence Dβ is an appropriate cost function for this approximation, which casts inference as an optimization of H as

H=arg minHDβ(M|{tilde over (W)}H)+μ|H|1.  (7)

For β=1, Dβ is the generalized Kullback-Leibler divergence (KL) divergence, whereas β=2 yields the squared Euclidean distance. An L1 sparsity constraint with weight μ is added to favor solutions where only few basis vectors are active at a time.

The following multiplicative updates minimize equation (7) subject to non-negativity constraints




  
    
      
        
          
            H
            
              k
              +
              1
            
          
          =
          
            
              H
              k
            
            ∘
            
              
                
                  
                    W
                    ~
                  
                  T
                
                ⁡
                
                  (
                  
                    M
                    ∘
                    
                      
                        (
                        
                          Λ
                          k
                        
                        )
                      
                      
                        β
                        -
                        2
                      
                    
                  
                  )
                
              
              
                
                  
                    
                      
                        W
                        ~
                      
                      T
                    
                    ⁡
                    
                      (
                      
                        Λ
                        k
                      
                      )
                    
                  
                  
                    β
                    -
                    1
                  
                
                +
                μ
              
            
          
        
        ,
      
    
    
      
        (
        8
        )
      
    
  




for iteration k∈1, . . . , K, where ∘ denotes element-wise multiplication, T as a superscript denotes transposition, the matrix quotient is computed element-wise, and we define Λk:={tilde over (W)}Hk. H0 can be initialized randomly or with all values set to a non-zero constant. After K iterations, a Wiener filtering-like approach can be used to reconstruct each source, which enforces the constraint that all the source estimates {tilde over (S)}l,K add up to the mixture





  
    
      
        
          
            S
            ~
          
          
            l
            ,
            K
          
        
        =
        
          
            
              
                
                  
                    W
                    ~
                  
                  l
                
                ⁢
                
                  H
                  
                    l
                    ,
                    K
                  
                
              
              
                
                  ∑
                  
                    l
                    ′
                  
                
                ⁢
                
                  
                    
                      W
                      ~
                    
                    
                      l
                      ′
                    
                  
                  ⁢
                  
                    H
                    
                      
                        l
                        ′
                      
                      ,
                      K
                    
                  
                
              
            
            ∘
            M
          
          .
        
      
    
    
      
        (
        9
        )
      
    
  




In general, the NMF bases are trained independently on each source before the bases are combined. However, in the conventional NMF framework, the combination is not trained discriminatively for good separation performance from a mixture.
Discriminative methods can also be applied to sparse dictionary based methods to achieve better performance in particular applications. In a similar way, we can discriminatively train NMF bases for source separation. The following optimization problem for training bases is called discriminative NMF (DNMF):

W=arg minWΣlγlDβ(Sl|WlĤl(M,W)),  (10)

where

Ĥ(M,W)=arg minHDβ(M|{tilde over (W)}H)+μ|H|1,  (11)

where γl are weights accounting for the application-dependent importance of the source l.

For example, in speech de-noising, we focus on reconstructing the speech signal from a noisy mixture. The first part in equation (10) minimizes the reconstruction en or given Ĥ. The second part in equation (11) ensures that Ĥ are the activations that arise from the test-time inference Objective. Given the bases W, the activations Ĥ(M,W) are uniquely determined, due to the convexity of equation (11). Nonetheless, the above is a difficult bi-level optimization problem, because the bases W occur in both levels.
The bi-level problem can le approached by directly solving for the derivatives of the lower level problem after convergence. Alternatively, the problem can be approached by untying the bases used for reconstruction in equation (10) from the analysis bases used in equation (11), and training only the reconstruction bases. In addition, equation (9) can be incorporated into the objective function (10), leading to

W=arg minWΣlγlDβ(Sl|{tilde over (S)}l,K(M,W)).  (12)

This model is a special, limited, case of our invention in the context of NMF.

Based on our framework, we unfold 110 the entire model as a non-negative neural network 130, and we untie 120 the parameters across layers as Wk for k∈{1 . . . K}. We cast this into our general formulation by defining:
i=t, where i indexes the times steps t,
x=m, where x is the mixture m, and in particular xi=mt,
y*=Sl, where y* is a reference value.
φk=Hk, where φk are intermediate variables,
yK={tilde over (S)}l,K, where yK is the output, and
θk=Wk, where the parameters θk are the bases Wk.
We identify the inference objective and estimator of equation (1) with equation (11) and equation (9), the discriminative objective in equation (2) with equation (12), and the iterative updates in equation(3) with equation (8).
To train 140 the neural network 130, while respecting the non-negativity constraints, we derive recursively defined multiplicative update equations by back-propagating a decomposition between positive and negative parts of the gradient. In NMF, multiplicative updates are often derived using the ratio of the negative part to the positive part of a decomposition of the gradient in a difference of two non-negative terms, as a multiplication factor to update the value of that variable of interest:




  
    
      
        
          
            W
            
              k
              +
              1
            
          
          =
          
            
              W
              k
            
            ∘
            
              
                
                  [
                  
                    
                      ∇
                      
                        W
                        k
                      
                    
                    ⁢
                    ɛ
                  
                  ]
                
                -
              
              
                
                  [
                  
                    
                      ∇
                      
                        W
                        k
                      
                    
                    ⁢
                    ɛ
                  
                  ]
                
                +
              
            
          
        
        ,
      
    
    
      
        (
        13
        )
      
    
  




where [∇Wkε]+ and [∇Wkε]− are non-negative and verify ∇Wkε=[∇Wkε]+−[∇Wkε]−. Note that this decomposition is in general not unique. We can recursively obtain such decompositions at each layer by propagating positive and negative parts across layers, starting at the top layer. To propagate the positive parts, we use





  
    
      
        
          
            
              [
              
                
                  ∂
                  ɛ
                
                
                  ∂
                  
                    h
                    
                      
                        r
                        k
                      
                      ,
                      t
                    
                    k
                  
                
              
              ]
            
            +
          
          =
          
            
              ∑
              
                r
                
                  k
                  +
                  1
                
              
            
            ⁢
            
              (
              
                
                  
                    
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  k
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                      +
                    
                    ⁡
                    
                      [
                      
                        
                          ∂
                          
                            h
                            
                              
                                r
                                k
                              
                              ,
                              t
                            
                            
                              k
                              +
                              1
                            
                          
                        
                        
                          ∂
                          
                            h
                            
                              
                                r
                                k
                              
                              ,
                              t
                            
                            k
                          
                        
                      
                      ]
                    
                  
                  +
                
                +
                
                  
                    
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  
                                    k
                                    +
                                    1
                                  
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                      -
                    
                    ⁡
                    
                      [
                      
                        
                          ∂
                          
                            h
                            
                              
                                r
                                
                                  k
                                  +
                                  1
                                
                              
                              ,
                              t
                            
                            
                              k
                              +
                              1
                            
                          
                        
                        
                          ∂
                          
                            h
                            
                              
                                r
                                k
                              
                              ,
                              t
                            
                            k
                          
                        
                      
                      ]
                    
                  
                  -
                
              
              )
            
          
        
        ,
      
    
    
      
        (
        14
        )
      
    
  
  
    
      
        
          
            [
            
              
                ∂
                ɛ
              
              
                ∂
                
                  w
                  
                    f
                    ,
                    r
                  
                  k
                
              
            
            ]
          
          +
        
        =
        
          
            ∑
            t
          
          ⁢
          
            
              ∑
              
                r
                
                  k
                  +
                  1
                
              
            
            ⁢
            
              
                (
                
                  
                    
                      
                        
                          [
                          
                            
                              ∂
                              
                                h
                                
                                  
                                    r
                                    
                                      k
                                      +
                                      1
                                    
                                  
                                  ,
                                  t
                                
                                
                                  k
                                  +
                                  1
                                
                              
                            
                            
                              ∂
                              
                                w
                                
                                  f
                                  ,
                                  r
                                
                                k
                              
                            
                          
                          ]
                        
                        +
                      
                      ⁡
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  
                                    k
                                    +
                                    1
                                  
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                    
                    +
                  
                  +
                  
                    
                      
                        
                          [
                          
                            
                              ∂
                              
                                h
                                
                                  
                                    r
                                    
                                      k
                                      +
                                      1
                                    
                                  
                                  ,
                                  t
                                
                                
                                  k
                                  +
                                  1
                                
                              
                            
                            
                              ∂
                              
                                w
                                
                                  f
                                  ,
                                  r
                                
                                k
                              
                            
                          
                          ]
                        
                        -
                      
                      ⁡
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  
                                    k
                                    +
                                    1
                                  
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                    
                    -
                  
                
                )
              
              .
            
          
        
      
    
    
      
        (
        15
        )
      
    
  




To propagate the negative parts, we use





  
    
      
        
          
            
              [
              
                
                  ∂
                  ɛ
                
                
                  ∂
                  
                    h
                    
                      
                        r
                        k
                      
                      ,
                      t
                    
                    k
                  
                
              
              ]
            
            -
          
          =
          
            
              ∑
              
                r
                
                  k
                  +
                  1
                
              
            
            ⁢
            
              (
              
                
                  
                    
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  k
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                      +
                    
                    ⁡
                    
                      [
                      
                        
                          ∂
                          
                            h
                            
                              
                                r
                                k
                              
                              ,
                              t
                            
                            
                              k
                              +
                              1
                            
                          
                        
                        
                          ∂
                          
                            h
                            
                              
                                r
                                k
                              
                              ,
                              t
                            
                            k
                          
                        
                      
                      ]
                    
                  
                  -
                
                +
                
                  
                    
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  
                                    k
                                    +
                                    1
                                  
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                      -
                    
                    ⁡
                    
                      [
                      
                        
                          ∂
                          
                            h
                            
                              
                                r
                                
                                  k
                                  +
                                  1
                                
                              
                              ,
                              t
                            
                            
                              k
                              +
                              1
                            
                          
                        
                        
                          ∂
                          
                            h
                            
                              
                                r
                                k
                              
                              ,
                              t
                            
                            k
                          
                        
                      
                      ]
                    
                  
                  +
                
              
              )
            
          
        
        ,
      
    
    
      
        (
        15
        )
      
    
  
  
    
      
        
          
            [
            
              
                ∂
                ɛ
              
              
                ∂
                
                  w
                  
                    f
                    ,
                    r
                  
                  k
                
              
            
            ]
          
          -
        
        =
        
          
            ∑
            t
          
          ⁢
          
            
              ∑
              
                r
                
                  k
                  +
                  1
                
              
            
            ⁢
            
              
                (
                
                  
                    
                      
                        
                          [
                          
                            
                              ∂
                              
                                h
                                
                                  
                                    r
                                    
                                      k
                                      +
                                      1
                                    
                                  
                                  ,
                                  t
                                
                                
                                  k
                                  +
                                  1
                                
                              
                            
                            
                              ∂
                              
                                w
                                
                                  f
                                  ,
                                  r
                                
                                k
                              
                            
                          
                          ]
                        
                        +
                      
                      ⁡
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  
                                    k
                                    +
                                    1
                                  
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                    
                    -
                  
                  +
                  
                    
                      
                        
                          [
                          
                            
                              ∂
                              
                                h
                                
                                  
                                    r
                                    
                                      k
                                      +
                                      1
                                    
                                  
                                  ,
                                  t
                                
                                
                                  k
                                  +
                                  1
                                
                              
                            
                            
                              ∂
                              
                                w
                                
                                  f
                                  ,
                                  r
                                
                                k
                              
                            
                          
                          ]
                        
                        -
                      
                      ⁡
                      
                        [
                        
                          
                            ∂
                            ɛ
                          
                          
                            ∂
                            
                              h
                              
                                
                                  r
                                  
                                    k
                                    +
                                    1
                                  
                                
                                ,
                                t
                              
                              
                                k
                                +
                                1
                              
                            
                          
                        
                        ]
                      
                    
                    +
                  
                
                )
              
              .
            
          
        
      
    
    
      
        (
        16
        )
      
    
  




Recurrent Neural Network Discriminative NMF
After the neural network 130 according to the invention has been obtained, the network can be extended, as shown in FIG. 4, to form a recurrent structure. In this case, the activation matrix Ht−1k+1 at the output of layer k and at the previous time frame t−1 is included as an input to the layer k at time frame t. One example of a way to include Ht−1k+1 as input to the layer k at time frame t is to vertically concatenate Ht−1k+1 and Htk and to consider an expanded Wk=[Wpreviousk,Wcurrentk] such that Wpreviousk applies to Ht−1k+1 and Wcurrentk applies to Htk, for each layer k, using the same type of update equations as for the neural network discriminative non-negative matrix factorization to compute Htk+1.
General Training and Transforming
FIG. 5 shows the details for a general method for the training 140 and transforming 160 of FIG. 1. The training 520 begins with training signals 510, perhaps digitized. The training generates K sets of inference parameters 521, one for each level, and estimation parameters parameters θK 522 stored in a memory 523. The parameters can be optimized 525 during the training.
The transforming extracts 530 features 531 from input signals 501. In inference model φik=fθk−1(xi,φik−1), k=1, . . . , K, as described above, is applied 540 to the features to obtain an intermediate representation 550. Then, an estimation model yiK=gθ(xi,φiK), as described above, is applied to the intermediate representation to estimate the output yiK.
Training and Testing for DDNMF and RDDNMF
FIG. 6 shows the details for a method for the training 140 and transforming 160 of neural network discriminative NMF and recurrent neural network discriminative NMF as described above. The training 620 begins with training signals 609, where each sample includes a mixture of source signals 610 and the corresponding reference source signals 611. The training generates K sets of analysis model basis Wk, k=0, . . . , K−1 621, one for each layer, and reconstruction model basis WK 622 stored in a memory 623. The parameters can be optimized 625 during the training.
The transforming extracts 630 features 631 from test signals 601 in the form of a mixture of the source signals, which are analyzed 640 to generate an analysis reconstruction representation 650. Then, a reconstruction model is applied to the analysis representation to estimate the output source signals {tilde over (S)}.
Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.

## Claims

1. A method for transforming input signals, comprising the steps of:
defining a model for transforming the input signals, wherein the model is specified by constraints and a set of model parameters;
defining an iterative inference procedure derived from the model and the set of model parameters;
unfolding the iterative inference procedure into a set of layers, wherein there is one layer for each iteration of the procedure, and wherein a same set of network parameters is used by all layers;
forming a neural network by untying the set of network parameters such that there is one set of network parameters for each layer and each set of network parameters is separately maintainable and separately applicable to the corresponding layer;
training the neural network to obtain a trained neural network; and
transforming the input signals using the trained neural network to obtain output signals, wherein the steps are performed in a processor.

2. The method of claim 1, further comprising:
adjusting one or more sets of network parameters independently during the training.

3. The method of claim 1, wherein the model is a probabilistic generative model and the inference procedure is variational inference, and further comprising
optimizing a lower bound on a likelihood of the input signals to obtain approximate posterior probabilities.

4. The method of claim 1, wherein the model is a Markov random field and the inference procedure is loopy belief propagation (BP) that enforces local consistency constraints on marginal posterior probabilities.

5. The method of claim 1, wherein the model is a non-negative basis function expansion model and the inference procedure is based on multiplicative updates.

6. The method of claim 1, wherein the sets of parameters specify relationships between the output signals and the input signals.

7. The method of claim 6, further comprising:
obtaining the output signals by optimizing an inference objective function involving intermediate variables from which the output signals can be determined.

8. The method of claim 7, wherein the inference objective function is an approximation to a log likelihood.

9. The method of claim 7, wherein the intermediate variables are variational parameters of a variational inference procedure.

10. The method of claim 7, wherein the intermediate variables are posterior marginal probabilities of a loopy belief propagation procedure.

11. The method of claim 7, wherein the intermediate variables are activation coefficients of basis functions.

12. The method of claim 2, wherein the sets of network parameters specify relationships between the input signals and the output signals, and the adjusting optimizes the sets of network parameters using a discriminative objective function involving a loss function that takes as argument a reference value and estimated output signals.

13. The method of claim 1, wherein the input signals are noisy speech and the output signals are clean speech.

14. The method of claim 1, wherein the input signals are a mixture of signals and the output signals are one or more source signals.

15. The method of claim 1, wherein the neural network is extended by using one neural network for each element of a set of data instances and adding connections between one or more layers of one or more neural networks.

16. The method of claim 15, wherein the set of data instances is a sequence, and the resulting neural network is a recurrent neural network.

17. The method of claim 16, wherein the set of data instances is an array.

18. The method of claim 12, wherein the optimizing is based on a gradient-descent implemented by back-propagation of gradients from higher layers to lower layers.

19. The method of claim 12, wherein one or more of the network parameters are non-negative, and the optimizing is based on multiplicative updates.

20. The method of claim 19, wherein the multiplicative updates are based on a ratio of a negative part to a positive part of a decomposition of the gradient in a difference of two non-negative terms, and the decomposition is obtained by back-propagation of the positive and negative parts of the decomposition of the gradient of a higher layer.