class_docstr: Quaternion Knowledge Graph Embedding.
  https://arxiv.org/abs/1904.10281
class_docstr_tok: ["Quaternion","Knowledge","Graph","Embedding",".","https",":","\/\/arxiv.org\/abs\/1904.10281"]
code: def __call__(self, head, rel, tail):
      A, B, C, D = self._get_part_score(head, rel)
      tails = paddle.chunk(tail, chunks=4, axis=-1)
  
      score = A * tails[0] + B * tails[1] + C * tails[2] + D * tails[3]
      score = paddle.sum(score, axis=-1)
      return -score
  
imports: import math
  import numpy
  from numpy.random import RandomState
  import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddle.nn.functional import log_sigmoid
label_desc: Use image node_id 2 for calling the QuatEScore obj's underlying member method code with example usage: obj.__call__(head, rel, tail) and returns: unknown