SimplE

class SimplE(*, embedding_dim: int = 200, clamp_score: tuple[float | None, float] | tuple[float, float | None] | float | None = None, entity_initializer: str | Callable[[Tensor], Tensor] | None = None, relation_initializer: str | Callable[[Tensor], Tensor] | None = None, regularizer: str | Regularizer | None = None, regularizer_kwargs: Mapping[str, Any] | None = None, **kwargs)[source]

基础:ERModel[tuple[Tensor, Tensor], tuple[Tensor, Tensor], tuple[Tensor, Tensor]]

SimplE 的一个实现 [kazemi2018]

SimplE为每个实体和每个关系学习两个\(d\)维向量,存储在Embedding中,并在其上应用SimplEInteraction

注意

在他们的代码库中,分数被限制在\([-20, 20]\)。 这在论文中没有提到,因此它是可选的。

另请参阅

初始化模型。

Parameters:
  • embedding_dim (int) – 嵌入维度

  • clamp_score (Clamp | float | None) – 是否对分数进行限制,参见 ClampedInteraction

  • entity_initializer (提示[初始化器]) – 实体表示初始化器

  • relation_initializer (提示[初始化器]) – 关系表示初始化器

  • regularizer (提示[Regularizer]) – 正则化器,默认为 SimplE.regularizer_default

  • regularizer_kwargs (OptionalKwargs) – 传递给正则化器的额外基于关键字的参数,默认为 SimplE.regularizer_default_kwargs

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

属性摘要

hpo_default

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

loss_default_kwargs

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

regularizer_default_kwargs

[trouillon2016]为SimplE使用的幂和设置

属性文档

hpo_default: ClassVar[Mapping[str, Any]] = {'embedding_dim': {'high': 256, 'low': 16, 'q': 16, 'type': <class 'int'>}}

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

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

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

regularizer_default_kwargs: ClassVar[Mapping[str, Any]] = {'normalize': True, 'p': 2.0, 'weight': 20}

[trouillon2016]为SimplE使用的幂和设置