提交 76811aa7 authored 作者: Arjun Jain's avatar Arjun Jain

Changing doc not to say it doesnt work on non-square

上级 a0653671
...@@ -53,16 +53,16 @@ TODO: Give examples for how to use these things! They are pretty complicated. ...@@ -53,16 +53,16 @@ TODO: Give examples for how to use these things! They are pretty complicated.
Also, there is restrictions on which shape are supported. Also, there is restrictions on which shape are supported.
- :func:`GpuCorrMM <theano.sandbox.cuda.blas.GpuCorrMM>` - :func:`GpuCorrMM <theano.sandbox.cuda.blas.GpuCorrMM>`
This is a GPU-only version of a correlation that computes correlations This is a GPU-only version of a correlation that computes correlations
as `caffe <https://github.com/BVLC/caffe/blob/master/src/caffe/layers/conv_layer.cu>`. as `caffe`(https://github.com/BVLC/caffe/blob/master/src/caffe/layers/conv_layer.cu).
For each element in a batch, it first creates a For each element in a batch, it first creates a
Toeplitz<http://en.wikipedia.org/wiki/Toeplitz_matrix> matrix in a cuda kernel. Toeplitz(http://en.wikipedia.org/wiki/Toeplitz_matrix) matrix in a cuda kernel.
Then, it performs a `gemm` call to multiply this Toeplitz matrix and to the kernel. Then, it performs a `gemm` call to multiply this Toeplitz matrix and the kernel.
It need extra memory for this, which is the size of the Toeplitz matrix. Precisely, It need extra memory equal to the size of the Toeplitz matrix. Precisely,
the dimensions of this Toeplitz matrix is equal to the dimensions of this 2D Toeplitz matrix is equal to=
(no of channels * filter width * filter height, output width * output height). (no of channels * filter width * filter height, output width * output height).
You can enable it for call to conv2d 2d by setting 'THEANO_FLAGS=optimizer_including=conv_gemm' You can enable it for call to conv2d 2d by setting 'THEANO_FLAGS=optimizer_including=conv_gemm'
in your environment. This is not enabled by default because it in your environment. This is not enabled by default because it
uses some extra memory. It don't support strides for now and requires square kernels. uses some extra memory.
.. autofunction:: theano.tensor.nnet.conv.conv2d .. autofunction:: theano.tensor.nnet.conv.conv2d
.. autofunction:: theano.tensor.nnet.Conv3D.conv3D .. autofunction:: theano.tensor.nnet.Conv3D.conv3D
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论