class_docstr: Layer that computes dynamic pooling of one tensor.
  :param psize1: pooling size of dimension 1
  :param psize2: pooling size of dimension 2
  :param kwargs: Standard layer keyword arguments.
  Examples:
      >>> import delta
      >>> layer = delta.layers.DynamicPoolingLayer(3, 2)
      >>> num_batch, left_len, right_len, num_dim = 5, 3, 2, 10
      >>> layer.build([[num_batch, left_len, right_len, num_dim],
      ...              [num_batch, left_len, right_len, 3]])
code: def _validate_dpool_size(self):
      suggestion = self.get_size_suggestion(
          self._msize1, self._msize2, self._psize1, self._psize2
      )
      if suggestion != (self._psize1, self._psize2):
          raise ValueError(
              "DynamicPooling Layer can not "
              f"generate ({self._psize1} x {self._psize2}) output "
              f"feature map, please use ({suggestion[0]} x {suggestion[1]})"
              f" instead. `model.params['dpool_size'] = {suggestion}` "
          )
  
file_path: delta/delta/layers/dynamic_pooling.py
imports: import typing
  import delta.compat
  from delta.layers.base_layer import Layer
label_desc: Use image node_id 6 for calling the DynamicPoolingLayer obj's underlying member method code with example usage: obj._validate_dpool_size() without return types