code: def mpjpe_criterion(pred, gt, has_3d_joints, criterion_pose3d):
      """
      mPJPE loss of self define criterion
      """
      pred, gt = filter_3d_joints(pred, gt, has_3d_joints)
      error = paddle.sqrt(criterion_pose3d(pred, gt)).mean()
      return error
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from itertools import cycle, islice
  from collections import abc
  import paddle
  import paddle.nn
  import paddle.nn.functional
  from ppdet.core.workspace import register, serializable
  from ppdet.utils.logger import setup_logger
label_desc: Use image node_id 5 for calling a global function with example usage: mpjpe_criterion(pred, gt, has_3d_joints, criterion_pose3d) and returns: error