(self, dataset, config)
| 26 | """ |
| 27 | |
| 28 | def __init__(self, dataset, config): |
| 29 | super(DPCNN, self).__init__(dataset, config) |
| 30 | self.num_kernels = config.DPCNN.num_kernels |
| 31 | self.pooling_stride = config.DPCNN.pooling_stride |
| 32 | self.kernel_size = config.DPCNN.kernel_size |
| 33 | self.radius = int(self.kernel_size / 2) |
| 34 | assert self.kernel_size % 2 == 1, "DPCNN kernel should be odd!" |
| 35 | self.convert_conv = torch.nn.Sequential( |
| 36 | torch.nn.Conv1d( |
| 37 | config.embedding.dimension, self.num_kernels, |
| 38 | self.kernel_size, padding=self.radius) |
| 39 | ) |
| 40 | |
| 41 | self.convs = torch.nn.ModuleList([torch.nn.Sequential( |
| 42 | torch.nn.ReLU(), |
| 43 | torch.nn.Conv1d( |
| 44 | self.num_kernels, self.num_kernels, |
| 45 | self.kernel_size, padding=self.radius), |
| 46 | torch.nn.ReLU(), |
| 47 | torch.nn.Conv1d( |
| 48 | self.num_kernels, self.num_kernels, |
| 49 | self.kernel_size, padding=self.radius) |
| 50 | ) for _ in range(config.DPCNN.blocks + 1)]) |
| 51 | |
| 52 | self.linear = torch.nn.Linear(self.num_kernels, len(dataset.label_map)) |
| 53 | |
| 54 | def get_parameter_optimizer_dict(self): |
| 55 | params = super(DPCNN, self).get_parameter_optimizer_dict() |
nothing calls this directly
no outgoing calls
no test coverage detected