left_diag.m

From Spinach Documentation Wiki
Jump to: navigation, search

Generates a weight matrix descrambler for a particular layer in a neural network using maximum diagonality criterion described in (https://www.pnas.org/doi/10.1073/pnas.2016917118).

Syntax

    P=left_diag(W,method,n_iter,guess)

Parameters

   W       - layer weight matrix, must be square

   method  - 'max_diag_sum' finds a transformation that creates
             P*W with maximum diagonal sum; 'max_diag_normsq'
             finds a transformation that creates P*W with maxi-
             mum diagonal norm square.

   n_iter  - maximum number of Newton-Raphson interations, 400
             is generally sufficient

   guess   - [optional] the initial guess for the descrambling
             transform generator (lower triangle is used), a
             reasonable choice is a zero matrix (default)

Outputs

   P       - the matrix accomplishing the transformation when
             it is multiplied into W from the left.

See also

descramble.m, Neural network module, Built-in_experiments

Version 2.8, authors: Tajwar Choudhury, Ilya Kuprov