KG2E
- class KG2E(*, embedding_dim: int = 50, dist_similarity: str | ~pykeen.nn.sim.KG2ESimilarity | type[~pykeen.nn.sim.KG2ESimilarity] | None = None, dist_similarity_kwargs: ~collections.abc.Mapping[str, ~typing.Any] | None = None, c_min: float = 0.05, c_max: float = 5.0, entity_initializer: str | ~typing.Callable[[~torch.Tensor], ~torch.Tensor] | None = <function uniform_>, entity_constrainer: str | ~typing.Callable[[~torch.Tensor], ~torch.Tensor] | None = <function clamp_norm>, entity_constrainer_kwargs: ~collections.abc.Mapping[str, ~typing.Any] | None = None, relation_initializer: str | ~typing.Callable[[~torch.Tensor], ~torch.Tensor] | None = <function uniform_>, relation_constrainer: str | ~typing.Callable[[~torch.Tensor], ~torch.Tensor] | None = <function clamp_norm>, relation_constrainer_kwargs: ~collections.abc.Mapping[str, ~typing.Any] | None = None, **kwargs)[来源]
基础类:
ERModelKG2E的实现来自[he2015]。
KG2E 旨在明确地建模实体和关系中的(不)确定性(例如,受这些实体和关系观察到的三元组数量的影响)。因此,实体和关系通过概率分布来表示,特别是通过多元高斯分布 \(\mathcal{N}(\mu, \Sigma)\),其中均值 \(\mu \in \mathbb{R}^d\) 表示向量空间中的位置,而对角方差 \(\Sigma = diag(\sigma_1, \ldots, \sigma_d) \in \mathbb{R}^{d \times d}\) 建模不确定性。
因此,我们有两个\(d\)维向量,每个向量都存储在
Embedding矩阵中,分别用于实体和关系。然后,这些表示被传递给KG2EInteraction函数以获得分数。初始化KG2E。
- Parameters:
embedding_dim (int) – 实体嵌入维度 \(d\)。通常为 \(d \in [50, 350]\)。
dist_similarity (str | KG2ESimilarity | type[KG2ESimilarity] | None) – 高斯分布的相似性度量。默认为
NegativeKullbackLeiblerDivergence。dist_similarity_kwargs (Mapping[str, Any] | None) – 用于实例化相似度的额外基于关键字的参数。
c_min (float) – 协方差钳位最小边界
c_max (float) – 协方差钳位最大边界
entity_initializer (str | Callable[[Tensor], Tensor] | None) – 实体初始化函数。默认为
torch.nn.init.uniform_()entity_constrainer (str | Callable[[Tensor], Tensor] | None) – 实体约束函数。默认为
pykeen.utils.clamp_norm()entity_constrainer_kwargs (Mapping[str, Any] | None) – 调用实体约束器时要使用的关键字参数
relation_initializer (str | Callable[[Tensor], Tensor] | None) – 关系初始化函数。默认为
torch.nn.init.uniform_()relation_constrainer (str | Callable[[Tensor], Tensor] | None) – 关系约束函数。默认为
pykeen.utils.clamp_norm()relation_constrainer_kwargs (Mapping[str, Any] | None) – 调用关系约束器时要使用的关键字参数
kwargs – 剩余的关键字参数将转发到
pykeen.models.ERModel
注意
参数对
(dist_similarity, dist_similarity_kwargs)用于pykeen.nn.sim.kg2e_similarity_resolver解析器的解释及其使用方法在 https://class-resolver.readthedocs.io/en/latest/中给出。
属性摘要
实体约束器的默认设置
优化模型超参数的默认策略
属性文档
- constrainer_default_kwargs = {'dim': -1, 'maxnorm': 1.0, 'p': 2}
实体约束器的默认设置