ERMLPE

class ERMLPE(*, embedding_dim: int = 256, hidden_dim: int | None = None, input_dropout: float = 0.2, hidden_dropout: float | None = None, entity_initializer: str | ~typing.Callable[[~torch.Tensor], ~torch.Tensor] | None = <function uniform_>, relation_initializer: str | ~typing.Callable[[~torch.Tensor], ~torch.Tensor] | None = None, **kwargs)[源代码]

基础类:ERModel

pykeen.models.ERMLP 的扩展,由 [sharifzadeh2019] 提出。

该模型将实体和关系表示为存储在Embedding矩阵中的\(d\)维向量。 然后,这些表示被传递给ERMLPEInteraction函数以获得分数。

ConvE 可以被视为 ER-MLP (E) 的一个特例,它包含了卷积滤波器的不必要的归纳偏差。该模型的目的是展示从 pykeen.models.ConvE 中消除这种偏差(这仅仅给我们留下了一个修改后的 ER-MLP 模型),不仅减少了参数数量,还提高了性能。

初始化模型。

Parameters:
  • embedding_dim (int) – 嵌入维度(适用于实体和关系)

  • hidden_dim (int | None) – MLP的隐藏维度;默认为 embedding_dim

  • input_dropout (float) – MLP的输入dropout

  • hidden_dropout (float | None) – MLP的隐藏dropout;默认为input_dropout

  • entity_initializer (str | Callable[[Tensor], Tensor] | None) – 实体嵌入初始化器

  • relation_initializer (str | Callable[[Tensor], Tensor] | None) – 关系嵌入初始化器;默认为 entity_initializer

  • kwargs – 传递给 ERModel.__init__() 的额外基于关键字的参数

属性摘要

hpo_default

优化模型超参数的默认策略

loss_default_kwargs

默认损失函数类的默认参数

属性文档

hpo_default: ClassVar[Mapping[str, Any]] = {'embedding_dim': {'high': 256, 'low': 16, 'q': 16, 'type': <class 'int'>}, 'hidden_dim': {'high': 9, 'low': 5, 'scale': 'power_two', 'type': <class 'int'>}, 'hidden_dropout': {'high': 0.5, 'low': 0.0, 'q': 0.1, 'type': <class 'float'>}, 'input_dropout': {'high': 0.5, 'low': 0.0, 'q': 0.1, 'type': <class 'float'>}}

优化模型超参数的默认策略

loss_default_kwargs: ClassVar[Mapping[str, Any]] = {}

默认损失函数类的默认参数