tucker_interaction
- tucker_interaction(h, r, t, core_tensor, do_h, do_r, do_hr, bn_h, bn_hr)[source]
Evaluate the TuckEr interaction function.
Compute scoring function W x_1 h x_2 r x_3 t as in the official implementation, i.e. as
\[DO_{hr}(BN_{hr}(DO_h(BN_h(h)) x_1 DO_r(W x_2 r))) x_3 t\]where BN denotes BatchNorm and DO denotes Dropout
- Parameters:
h (
FloatTensor
) – shape: (*batch_dims, d_e) The head representations.r (
FloatTensor
) – shape: (*batch_dims, d_r) The relation representations.t (
FloatTensor
) – shape: (*batch_dims, d_e) The tail representations.core_tensor (
FloatTensor
) – shape: (d_e, d_r, d_e) The core tensor.do_h (
Dropout
) – The dropout layer for the head representations.do_r (
Dropout
) – The first hidden dropout.do_hr (
Dropout
) – The second hidden dropout.bn_h (
Optional
[BatchNorm1d
]) – The first batch normalization layer.bn_hr (
Optional
[BatchNorm1d
]) – The second batch normalization layer.
- Return type:
FloatTensor
- Returns:
shape: batch_dims The scores.