def do_ifft(input, n_hidden): ifft_input = T.reshape(input, (input.shape[0], 2, n_hidden)) ifft_input = ifft_input.dimshuffle(0,2,1) ifft_output = cuifft(ifft_input) / T.sqrt(n_hidden) ifft_output = ifft_output.dimshuffle(0,2,1) output = T.reshape(ifft_output, (input.shape[0], 2*n_hidden)) return output
def do_ifft(input, n_hidden): ifft_input = T.reshape(input, (input.shape[0], 2, n_hidden)) ifft_input = ifft_input.dimshuffle(0, 2, 1) ifft_output = cuifft(ifft_input) / T.sqrt(n_hidden) ifft_output = ifft_output.dimshuffle(0, 2, 1) output = T.reshape(ifft_output, (input.shape[0], 2 * n_hidden)) return output