def test_kmax_pooling_time():
nbatches, nkernels_in, nwords, ndim = 50, 16, 58, 300
input_shape = (nbatches, nkernels_in, nwords, ndim)
input = T.tensor4('input')
k = 1
f_kmax_argsort = theano.function([input], k_max_pooling(input, k))
f_kmax_unroll = theano.function([input], _k_max_pooling(input, k))
f_max = theano.function([input], max_pooling(input))
image_data = np.random.randn(*input_shape).astype(dtype=np.float64)
# np.random.shuffle(image_data)
image_data = image_data.reshape(input_shape)
# print image_data
# print 'kmax'
print 'f_kmax_argsort', timeit.timeit(lambda: f_kmax_argsort(image_data), number=10)
print 'f_kmax_unroll', timeit.timeit(lambda: f_kmax_unroll(image_data), number=10)
print 'f_max', timeit.timeit(lambda: f_max(image_data), number=10)
评论列表
文章目录