@jaberg can you comment on that?


On Mon, Jul 22, 2013 at 5:38 PM, lamblin <notifications@github.com> wrote:

> In theano/tensor/nnet/conv3d2d.py:
>
> > @@ -0,0 +1,237 @@
> > +import theano
> > +from theano.gradient import DisconnectedType
> > +from theano.gof import Op, Apply
> > +from theano import tensor
> > +import theano.sandbox.cuda as cuda
> > +
> > +
> > +def get_diagonal_subtensor_view(x, i0, i1):
>
> From what I understand, the diagonal here is not the traditional diagonal
> of a matrix (elements m[i, i]), but the other diagonal (elements m[i, j]
> such that i + j == m.shape[-1]).
> i0 and i1 look like the axes where we take the indices i and j. So, for a
> 3D tensor t, get_diagonal_subtensor_view(t, 0, 1) would contain the
> elements t[i, j, :] so that i + j == t.shape[0]; get_diagonal_subtensor_view(t,
> 2, 0) would contain the elements t[j, :, i] so that i + j == t.shape[2].
> Am I on the right track?
> It looks like I'm missing something, because the unit tests seem to return
> more than one row around the diagonal.
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/Theano/Theano/pull/1454/files#r5331594>
> .
>