class_docstr: Shallow models for knowledge representation learning.
      
docstr: Save model parameters.
          
code: def save(self, save_path):
      """Save model parameters."""
      if not os.path.exists(save_path):
          os.makedirs(save_path)
      with open(os.path.join(save_path, "config.json"), "w") as wp:
          json.dump(vars(self._args), wp, indent=4)
      if not self._ent_emb_on_cpu:
          paddle.save(
              self.ent_embedding.state_dict(),
              os.path.join(save_path, "ent_embeds.pdparams"),
          )
      if not self._rel_emb_on_cpu:
          paddle.save(
              self.rel_embedding.state_dict(),
              os.path.join(save_path, "rel_embeds.pdparams"),
          )
      if self._use_feat:
          paddle.save(
              self.trans_ent.state_dict(),
              os.path.join(save_path, "trans_ents.pdparams"),
          )
          paddle.save(
              self.trans_rel.state_dict(),
              os.path.join(save_path, "trans_rels.pdparams"),
          )
  
imports: import os
  import json
  import math
  import warnings
  import numpy
  import paddle
  import paddle.nn
  import paddle.nn.functional
  from pgl.utils.shared_embedding import SharedEmbedding
  from models.score_funcs import TransEScore, RotatEScore, DistMultScore, ComplExScore, QuatEScore, OTEScore
  from models.init_func import InitFunction
  from utils import uniform, timer_wrapper
label_desc: Use image node_id 11 for calling the KGEModel obj's underlying member method code with example usage: obj.save(save_path) without return types