code: def on_epoch_end(self, pbar, epoch, last_metrics, **kwargs):
          "Put the various losses in the recorder and show a sample image."
          if not hasattr(self, 'last_gen') or not self.show_img: return
          data = self.learn.data
          img = self.last_gen[0]
          norm = getattr(data,'norm',False)
          if norm and norm.keywords.get('do_y',False): img = data.denorm(img)
          img = data.train_ds.y.reconstruct(img)
          self.imgs.append(img)
          self.titles.append(f'Epoch {epoch}')
          pbar.show_imgs(self.imgs, self.titles)
          return add_metrics(last_metrics, [getattr(self.smoothenerG,'smooth',None),getattr(self.smoothenerC,'smooth',None)]f on_epoch_end(self, pbar, epoch, last_metrics, **kwargs):
          "Put the various losses in the recorder and show a sample image."
          if not hasattr(self, 'last_gen') or not self.show_img: return
          data = self.learn.data
          img = self.last_gen[0]
          norm = getattr(data,'norm',False)
          if norm and norm.keywords.get('do_y',False): img = data.denorm(img)
          img = data.train_ds.y.reconstruct(img)
          self.imgs.append(img)
          self.titles.append(f'Epoch {epoch}')
          pbar.show_imgs(self.imgs, self.titles)
          return add_metrics(last_metrics, [getattr(self.smoothenerG,'smooth',None),getattr(self.smoothenerC,'smooth',None)])
docs: Put the various losses in the recorder and show a sample image.