(self)
| 146 | self.optimizers.append(self.optimizer_F) |
| 147 | |
| 148 | def optimize_parameters(self): |
| 149 | # forward |
| 150 | self.forward() |
| 151 | |
| 152 | # update D |
| 153 | self.set_requires_grad([self.netD_A, self.netD_B], True) |
| 154 | self.optimizer_D.zero_grad() |
| 155 | self.backward_D_A() # calculate gradients for D_A |
| 156 | self.backward_D_B() # calculate graidents for D_B |
| 157 | self.optimizer_D.step() |
| 158 | # update G |
| 159 | self.set_requires_grad([self.netD_A, self.netD_B], False) |
| 160 | self.optimizer_G.zero_grad() |
| 161 | if self.opt.netF == 'mlp_sample': |
| 162 | self.optimizer_F.zero_grad() |
| 163 | self.loss_G = self.compute_G_loss() |
| 164 | self.loss_G.backward() |
| 165 | self.optimizer_G.step() |
| 166 | if self.opt.netF == 'mlp_sample': |
| 167 | self.optimizer_F.step() |
| 168 | |
| 169 | def set_input(self, input): |
| 170 | """Unpack input data from the dataloader and perform necessary pre-processing steps. |
nothing calls this directly
no test coverage detected