基本特征存储

class dgl.graphbolt.BasicFeatureStore(features: Dict[Tuple[str, str, str], Feature])[source]

基础类:FeatureStore

一个基本的功能存储,用于管理多个功能以供访问。

keys()[source]

获取特征的键。

Returns:

特征的键。元组采用(domain, type_name, feat_name)格式。

Return type:

列表[元组]

metadata(domain: str, type_name: str, feature_name: str)[source]

获取特征存储中指定特征的元数据。

Parameters:
  • domain (str) – 特征的域,例如“节点”、“边”或“图”。

  • type_name (str) – 节点或边的类型名称。

  • feature_name (str) – 特征名称。

Returns:

特征的元数据。

Return type:

字典

read(domain: str, type_name: str, feature_name: str, ids: Tensor | None = None)[source]

从特征存储中读取。

Parameters:
  • domain (str) – 特征的域,例如“节点”、“边”或“图”。

  • type_name (str) – 节点或边类型的名称。

  • feature_name (str) – 特征名称。

  • ids (torch.Tensor, optional) – 特征的索引。如果指定,则只读取指定索引的特征。如果为None,则返回整个特征。

Returns:

读取功能。

Return type:

torch.Tensor

size(domain: str, type_name: str, feature_name: str)[source]

获取特征存储中指定特征的大小。

Parameters:
  • domain (str) – The domain of the feature such as “node”, “edge” or “graph”.

  • type_name (str) – The node or edge type name.

  • feature_name (str) – The feature name.

Returns:

特征存储中指定特征的大小。

Return type:

torch.Size

update(domain: str, type_name: str, feature_name: str, value: Tensor, ids: Tensor | None = None)[source]

更新特征存储。

Parameters:
  • domain (str) – The domain of the feature such as “node”, “edge” or “graph”.

  • type_name (str) – The node or edge type name.

  • feature_name (str) – The feature name.

  • value (torch.Tensor) – 特征的更新值。

  • ids (torch.Tensor, optional) – 要更新的特征的索引。如果指定,则只更新特征的指定索引。对于特征,ids[i] 行将更新为 value[i]。因此,索引和值必须具有相同的长度。如果为 None,则将更新整个特征。