class_docstr: A basic Adam optimizer that includes "correct" L2 weight decay.
  Copied from the google BERT repo.
  Except that in `apply_gradient` function, we add the support to increment
  the passed global step parameter, to make it more compatible to
  tf.train.Optimizer implementation.
class_docstr_tok: ["A","basic","Adam","optimizer","that","includes","``","correct","''","L2","weight","decay",".","Copied","from","the","google","BERT","repo",".","Except","that","in","`","apply_gradient","`","function",",","we","add","the","support","to","increment","the","passed","global","step","parameter",",","to","make","it","more","compatible","to","tf.train.Optimizer","implementation","."]
docstr: Get the variable name from the tensor name.
docstr_tok: ["Get","the","variable","name","from","the","tensor","name","."]
code: def _get_variable_name(self, param_name):
      """Get the variable name from the tensor name."""
      m = re.match("^(.*):\\d+$", param_name)
      if m is not None:
          param_name = m.group(1)
      return param_name
  
file_path: texar/texar/tf/core/optimization.py
imports: import re
  import tensorflow
  from texar.tf.hyperparams import HParams
  from texar.tf.utils import utils
label_desc: Use image node_id 4 for calling the AdamWeightDecayOptimizer obj's underlying member method code with example usage: obj._get_variable_name(param_name) and returns: param_name