title: theano.tensor.nlinalg.svd(X) with 3D input array
body: <p>I would like to perform svd on multiple 2D arrays collected in a single 3D array with theano as it can easily be done with numpy by:</p>
  
  <pre><code>U, S, V = numpy.linalg.svd(X)
  </code></pre>
  
  <p>I tried:</p>
  
  <pre><code>U, S, V = theano.tensor.nlinalg.svd(X)
  </code></pre>
  
  <p>But, it seems <code>theano.tensor.nlinalg.svd</code> only accepts 2D arrays and it is not able to compute multiple svds in the same time:</p>
  
  <pre><code>assert x.ndim == 2, "The input of svd function should be a matrix."AssertionError: 
  The input of svd function should be a matrix.
  </code></pre>
  
  <p>Being curious if there is any way around to take the same functionality from <code>theano.tensor.nlinalg.svd()</code> as we have with <code>numpy.linalg.svd()</code> for 3D arrays.</p>
  
  <p>Thanks.</p>