class_docstr: Split to two transformer header at the last layer.
  Cls_layer is used to structure token classification.
  Bbox_layer is used to regress bbox coord.
docstr: Make mask for self attention.
  :param src: [b, c, h, l_src]
  :param tgt: [b, l_tgt]
  :return:
docstr_tok: ["Make","mask","for","self","attention",".",":","param","src",":","[","b",",","c",",","h",",","l_src","]",":","param","tgt",":","[","b",",","l_tgt","]",":","return",":"]
code: def make_mask(self, tgt):
      """
      Make mask for self attention.
      :param src: [b, c, h, l_src]
      :param tgt: [b, l_tgt]
      :return:
      """
      trg_pad_mask = (tgt != self.PAD).unsqueeze(1).unsqueeze(3)
  
      tgt_len = paddle.shape(tgt)[1]
      trg_sub_mask = paddle.tril(
          paddle.ones(([tgt_len, tgt_len]), dtype=paddle.float32)
      )
  
      tgt_mask = paddle.logical_and(
          trg_pad_mask.astype(paddle.float32), trg_sub_mask
      )
      return tgt_mask.astype(paddle.float32)
  
imports: import copy
  import math
  import paddle
  from paddle import nn
  from paddle.nn import functional
label_desc: Use image node_id 2 for calling the TableMasterHead obj's underlying member method code with example usage: obj.make_mask(tgt) and returns: tgt_mask