DistMult

class ampligraph.latent_features.layers.scoring.DistMult(*args, **kwargs)

DistMult scoring layer.

The model as described in [YYH+14].

The bilinear diagonal DistMult model uses the trilinear dot product as scoring function:

\[f_{DistMult}=\langle \mathbf{r}_p, \mathbf{e}_s, \mathbf{e}_o \rangle\]

where \(\mathbf{e}_{s}\) is the embedding of the subject, \(\mathbf{r}_{p}\) the embedding of the predicate and \(\mathbf{e}_{o}\) the embedding of the object.

Attributes

class_params

external_params

name

Methods

__init__(k)

Initializes the scoring layer.

get_config()

Returns the config of the layer.

__init__(k)

Initializes the scoring layer.

Parameters:

k (int) – Embedding size.

get_config()

Returns the config of the layer.

A layer config is a Python dictionary (serializable) containing the configuration of a layer. The same layer can be reinstantiated later (without its trained weights) from this configuration.

The config of a layer does not include connectivity information, nor the layer class name. These are handled by Network (one layer of abstraction above).

Note that get_config() does not guarantee to return a fresh copy of dict every time it is called. The callers should make a copy of the returned dict if they want to modify it.

Returns:

Python dictionary.