class_docstr: Vocabulary extracts set of unique tokens and
  constructs token to index and index to token lookup tables.
class_docstr_tok: ["Vocabulary","extracts","set","of","unique","tokens","and","constructs","token","to","index","and","index","to","token","lookup","tables","."]
code: def __init__(self, token_list):
      counter = count_corpus(token_list)
  
      self.token_freqs = sorted(counter.items(), key=lambda x: x[0])
      self.token_freqs.sort(key=lambda x: x[1], reverse=True)
      self.unk, uniq_tokens = 0, ["<unk>"]
      uniq_tokens += [token for token, freq in self.token_freqs]
      self.idx_to_token, self.token_to_idx = [], dict()
  
      for token in uniq_tokens:
          self.idx_to_token.append(token)
          self.token_to_idx[token] = len(self.idx_to_token) - 1
  
imports: import collections
  import random
  import re
  import jax
  import jax.numpy
  import tensorflow_datasets
  import objax
  from objax.functional import one_hot
  from objax.zoo.rnn import RNN
label_desc: Use image node_id 1 to create a new Vocabulary object  with example: obj = Vocabulary(token_list)