Module
Seqential
ModuleList
In [90]: class MM(nn.Module):
...: def __init__(self):
...: super(MM, self).__init__()
...: #1.
...: #self.dicx = OrderedDict()
...: #for i in range(2, 5):
...: # self.dicx[str(i)] = nn.Conv2d(3, i, 3,1,1)
...: #self.ss = nn.Sequential(self.dicx)
...: #2.
...: self.ss = nn.ModuleList([nn.Conv2d(3,i,3,1,1) for i in [2,3,4]])
...: #3.
...: #self.conv1 = nn.Conv2d(3,4,3,1,1)
...: #self.conv2 = nn.Conv2d(3,5,3,1,1)
...: #self.ss = [self.conv1, self.conv2]
...: def forward(self, x, i):
...: o = self.ss[i](x)
...: #o = self.conv1(x)
...: return o
...:
---------------------------
1. http://pytorch.org/docs/nn.html#containers