CP

class CP(embedding_dim: int = 64, rank: int = 64, entity_initializer: str | Callable[[Tensor], Tensor] | None = None, entity_initializer_kwargs: Mapping[str, Any] | None = None, entity_normalizer: str | Callable[[Tensor], Tensor] | None = None, entity_normalizer_kwargs: Mapping[str, Any] | None = None, relation_initializer: str | Callable[[Tensor], Tensor] | None = None, relation_initializer_kwargs: Mapping[str, Any] | None = None, **kwargs)[source]

基础类:ERModel

CP的实现如[lacroix2018]所述,基于[hitchcock1927]

它分别为头和尾角色提供了独立的实体表示,两者都是\(r \times d\)维矩阵。 关系也由一个\(r \times d\)维矩阵表示。 所有这三个组件都可以存储为Embedding

除此之外,CPInteraction 被应用于获取分数。

初始化模型。

Parameters:
  • embedding_dim (int) – 实体嵌入维度 \(d\)

  • rank (int) – 张量分解的秩 \(k\)

  • entity_initializer (str | Callable[[Tensor], Tensor] | None) – 实体初始化函数。默认为 None

  • entity_initializer_kwargs (Mapping[str, Any] | None) – 调用实体初始化器时要使用的关键字参数

  • entity_normalizer (str | Callable[[Tensor], Tensor] | None) – 实体标准化函数。默认为 None

  • entity_normalizer_kwargs (Mapping[str, Any] | None) – 调用实体规范化器时要使用的关键字参数

  • relation_initializer (str | Callable[[Tensor], Tensor] | None) – 关系初始化函数。默认为 None

  • relation_initializer_kwargs (Mapping[str, Any] | None) – 调用关系初始化器时要使用的关键字参数

  • kwargs – 传递给ERModel的剩余关键字参数。

属性摘要

hpo_default

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

属性文档

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

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