code: def update(self):
          '''
          Update the encoder and the decoder
          to minimize the reconstruction error of the inputs.
  
          Returns:
              `np.ndarray` of the reconstruction errors.
          '''
          observed_arr = self.noise_sampler.generate()
          inferenced_arr = self.inference(observed_arr)
  
          error_arr = self.__convolutional_auto_encoder.computable_loss.compute_loss(
              observed_arr,
              inferenced_arr
          )
  
          delta_arr = self.__convolutional_auto_encoder.computable_loss.compute_delta(
              observed_arr,
              inferenced_arr
          )
  
          delta_arr = self.__convolutional_auto_encoder.back_propagation(delta_arr)
          self.__convolutional_auto_encoder.optimize(self.__learning_rate, 1)
  
          return error_arf update(self):
          '''
          Update the encoder and the decoder
          to minimize the reconstruction error of the inputs.
  
          Returns:
              `np.ndarray` of the reconstruction errors.
          '''
          observed_arr = self.noise_sampler.generate()
          inferenced_arr = self.inference(observed_arr)
  
          error_arr = self.__convolutional_auto_encoder.computable_loss.compute_loss(
              observed_arr,
              inferenced_arr
          )
  
          delta_arr = self.__convolutional_auto_encoder.computable_loss.compute_delta(
              observed_arr,
              inferenced_arr
          )
  
          delta_arr = self.__convolutional_auto_encoder.back_propagation(delta_arr)
          self.__convolutional_auto_encoder.optimize(self.__learning_rate, 1)
  
          return error_arr
docs: Update the encoder and the decoder
          to minimize the reconstruction error of the inputs.
  
          Returns:
              `np.ndarray` of the reconstruction errors.