code: def __init__(
      self,
      dim,
      metapath,
      label_idx,
      label_dim,
      max_id=-1,
      feature_idx=-1,
      feature_dim=0,
      use_id=False,
      sparse_feature_idx=-1,
      sparse_feature_max_id=-1,
      embedding_dim=16,
      use_hash_embedding=False,
      use_residual=False,
      head_num=4,
      *args,
      **kwargs,
  ):
      super(GeniePath, self).__init__(
          label_idx, label_dim, *args, **kwargs
      )
      self._encoder = encoders.GenieEncoder(
          metapath,
          dim,
          "attention",
          feature_idx=feature_idx,
          feature_dim=feature_dim,
          max_id=max_id,
          use_id=use_id,
          sparse_feature_idx=sparse_feature_idx,
          sparse_feature_max_id=sparse_feature_max_id,
          embedding_dim=embedding_dim,
          use_hash_embedding=use_hash_embedding,
          use_residual=use_residual,
          head_num=head_num,
      )
  
file_path: euler/examples/geniepath/geniepath.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import tensorflow
  from tf_euler.python.utils import encoders
  from tf_euler.python.mp_utils.base import SuperviseModel
label_desc: Use image node_id 1 to create a new GeniePath object from inherited base classes: SuperviseModel with example: obj = GeniePath(dim, metapath, label_idx, label_dim, max_id, feature_idx, feature_dim, use_id, sparse_feature_idx, sparse_feature_max_id, embedding_dim, use_hash_embedding, use_residual, head_num)