提交 8ff1685f authored 作者: --global's avatar --global

Make GpuDnnConvDesc support 2 and 3 dimensions. Remove GpuDnnConv3dDesc.

上级 bc65b241
差异被折叠。
...@@ -991,8 +991,8 @@ def test_conv3d_gradweight(): ...@@ -991,8 +991,8 @@ def test_conv3d_gradweight():
dCdH=dCdH.dimshuffle(0, 2, 3, 4, 1), dCdH=dCdH.dimshuffle(0, 2, 3, 4, 1),
WShape=filters_shape_s, WShape=filters_shape_s,
d=subsample) d=subsample)
desc = dnn.GpuDnnConv3dDesc(border_mode='valid', subsample=subsample, desc = dnn.GpuDnnConvDesc(border_mode='valid', subsample=subsample,
conv_mode='cross')(inputs.shape, kern.shape) conv_mode='cross')(inputs.shape, kern.shape)
gradW = dnn.GpuDnnConv3dGradW()(inputs, dCdH, kern, desc) gradW = dnn.GpuDnnConv3dGradW()(inputs, dCdH, kern, desc)
f_ref = theano.function([], conv.dimshuffle(0, 4, 1, 2, 3)) f_ref = theano.function([], conv.dimshuffle(0, 4, 1, 2, 3))
f = theano.function([], gradW, mode=mode_with_gpu) f = theano.function([], gradW, mode=mode_with_gpu)
...@@ -1043,8 +1043,8 @@ def test_conv3d_gradinput(): ...@@ -1043,8 +1043,8 @@ def test_conv3d_gradinput():
bottom_val = numpy.random.random(bottom_shape).astype('float32') bottom_val = numpy.random.random(bottom_shape).astype('float32')
bottom = shared(bottom_val) bottom = shared(bottom_val)
desc = dnn.GpuDnnConv3dDesc(border_mode='valid', subsample=subsample, desc = dnn.GpuDnnConvDesc(border_mode='valid', subsample=subsample,
conv_mode='cross')(bottom.shape, filters.shape) conv_mode='cross')(bottom.shape, filters.shape)
gradI = dnn.GpuDnnConv3dGradI()(filters, inputs, bottom, desc) gradI = dnn.GpuDnnConv3dGradI()(filters, inputs, bottom, desc)
f = theano.function([], gradI, mode=mode_with_gpu) f = theano.function([], gradI, mode=mode_with_gpu)
res = f() res = f()
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论