code: def output_name(self, auxiliary_output=None):
      # at a later stage we might want to expose even the pre-nonlinearity
      # vectors
      assert auxiliary_output == None
  
      split_layer_name = self.layer_type.split("-")
      assert split_layer_name[-1] == "layer"
      last_nonlinearity = split_layer_name[-2]
      # return something like: layer3.renorm
      return "{0}.{1}".format(self.name, last_nonlinearity)
  
file_path: espnet/egs2/dsing/asr1/steps/libs/nnet3/xconfig/attention.py
imports: from __future__ import print_function
  from __future__ import division
  import math
  import re
  import sys
  from libs.nnet3.xconfig.basic_layers import XconfigLayerBase
label_desc: Use image node_id 4 for calling the XconfigAttentionLayer obj's underlying member method code with example usage: obj.output_name(auxiliary_output) and returns: str