Patent ID: 6963862

Claim:
A method for training a recurrent network represented by x(k+1)=f(W x(k)), where W is a weight matrix, x is an input vector, and f is a function, the method comprising: (a) determining values for an internal variable vector; (b) determining values for an internal variable matrix; (c) based on the internal variable vector and the internal variable matrix, determining a change in the weight matrix; (d) repeating steps (a), (b), and (c) until the change in the weight matrix reaches a specified threshold; wherein: the internal variable vector is defined as: γ(1)=− D −1 (0) e T (1); and γ( k )=− D −1 ( k −1) e T ( k )+ We T ( k −1) for k =2 , . . . , K; the internal variable matrix is defined as: V ( K )=ε I+Σ k=0 K−1 x ( k ) x T ( k ); the change in the weight matrix is defined as: Δ ⁢ ⁢ W = η ⁢ ⌊ ∑ k = 1 K ⁢ ⁢ γ ⁡ ( k ) ⁢ x T ⁡ ( k - 1 ) ⌋ ⁢ V - 1 ⁡ ( K ) ; and wherein: D ⁡ ( k ) = diag ⁢ ⁢ ( f ′ ⁡ ( ∑ j = 1 N ⁢ ⁢ w ij ⁢ x j ⁡ ( k ) ) ) , ⁢ e i ⁡ ( k ) = { x i ⁡ ( k ) - d i ⁡ ( k ) , i ∈ 0 0 , otherwise ε=max(0.5−λ 1 ,0); wherein: I is the identity matrix; η is a real number having a value less than 1.0; λ 1 is the smallest eigenvalue of V(K); f′=the time derivative of f; d i (k)=measured values of data associated with x i ; i is an index identifying an element of a vector; and j is an index identifying an element of a vector or a matrix; and wherein steps (a) through (d) are implemented on a computing device.