I am currently trying to form a list of 1d Convolutions in my definition of a neural net of say the same type. If I write something like
class nerual_net(torch.nn.Module):
    def __init__(self, D_in, inp_channels):
        super(nerual_net, self).__init__()
        self.conv1_list = []
        for i in range(inp_channels):
            self.conv1_list.append(torch.nn.Conv1d(1, 6, f, stride=s))

And then I later call n1 = neural_net(D, inp_channels) follwoed by n1.cuda(), I run into the error RuntimeError: Input type (CUDAFloatTensor) and weight type (CPUFloatTensor) should be the same. This doesn’t happen if I explicitly write all the convolution inside the class neural_net.
Even if I am to make all the elements of the list into cuda, the weights are not being updated and the network doesn’t learn anything at all.
What is the correct way to make a list of convolutions in pytorch?