def conv1d_mc1(input, filters, image_shape=None, filter_shape=None, border_mode='valid', subsample=(1,), filter_flip=True):
 if (image_shape is None):
  image_shape_mc1 = None
 else:
  image_shape_mc1 = (image_shape[0], image_shape[1], image_shape[2], 1)
 if (filter_shape is None):
  filter_shape_mc1 = None
 else:
  filter_shape_mc1 = (filter_shape[0], filter_shape[1], filter_shape[2], 1)
 if isinstance(border_mode, tuple):
  (border_mode,) = border_mode
 if isinstance(border_mode, int):
  border_mode = (border_mode, 0)
 input_mc1 = input.dimshuffle(0, 1, 2, 'x')
 filters_mc1 = filters.dimshuffle(0, 1, 2, 'x')
 conved = T.nnet.conv2d(input_mc1, filters_mc1, image_shape_mc1, filter_shape_mc1, subsample=(subsample[0], 1), border_mode=border_mode, filter_flip=filter_flip)
 return conved[:, :, :, 0]

def conv1d_mc1 ( input , filters , image_shape = None , filter_shape = None , border_mode = 'valid' , subsample = ( 1 , ) , filter_flip = True ) : if ( image_shape is None ) : image_shape_mc1 = None else : image_shape_mc1 = ( image_shape [ 0 ] , image_shape [ 1 ] , image_shape [ 2 ] , 1 ) if ( filter_shape is None ) : filter_shape_mc1 = None else : filter_shape_mc1 = ( filter_shape [ 0 ] , filter_shape [ 1 ] , filter_shape [ 2 ] , 1 ) if isinstance ( border_mode , tuple ) : ( border_mode , ) = border_mode if isinstance ( border_mode , int ) : border_mode = ( border_mode , 0 ) input_mc1 = input . dimshuffle ( 0 , 1 , 2 , 'x' ) filters_mc1 = filters . dimshuffle ( 0 , 1 , 2 , 'x' ) conved = T . nnet . conv2d ( input_mc1 , filters_mc1 , image_shape_mc1 , filter_shape_mc1 , subsample = ( subsample [ 0 ] , 1 ) , border_mode = border_mode , filter_flip = filter_flip ) return conved [ : , : , : , 0 ]
using conv2d with height == 1 .