| 138 | |
| 139 | |
| 140 | class _Transition(nn.Sequential): |
| 141 | def __init__(self, num_input_features, num_output_features): |
| 142 | super(_Transition, self).__init__() |
| 143 | self.add_module('norm', nn.BatchNorm2d(num_input_features)) |
| 144 | self.add_module('relu', nn.ReLU(inplace=False)) |
| 145 | self.add_module('conv', nn.Conv2d(num_input_features, num_output_features, |
| 146 | kernel_size=1, stride=1, bias=False)) |
| 147 | self.add_module('pool', nn.AvgPool2d(kernel_size=2, stride=2)) |
| 148 | |
| 149 | |
| 150 | class DenseNet(nn.Module): |