class_docstr: Random drop tokens from sentence.
code: def _token_drop(self, tokens, stats=None):
      n_items = len(tokens)
      # 1. sample number of tokens to corrupt
      n_chosen = self._sample_distance(tokens, self.temperature)
      # 2. sample positions to corrput
      chosen_indices = self._sample_position(tokens, distance=n_chosen)
      # 3. Drop token on chosen position
      out = [
          tok
          for (i, tok) in enumerate(tokens)
          if i not in chosen_indices
      ]
      if stats is not None:
          stats.update(TokenDropStats(n_chosen, n_items))
      return out
  
imports: import random
  import numpy
  from onmt.constants import DefaultTokens
  from onmt.transforms import register_transform
  from .transform import Transform, ObservableStats
label_desc: Use image node_id 4 for calling the TokenDropTransform obj's underlying member method code with example usage: obj._token_drop(tokens, stats) and returns: out