opengsl.module.metric¶
- class opengsl.module.metric.WeightedCosine(d_in, num_pers=16, weighted=True, normalize=True)[source]¶
Bases:
ModuleWeighted cosine to generate pairwise similarities from given node embeddings.
- Parameters
d_in (int) – Dimensions of input features.
num_pers (int) – Number of multi heads.
weighted (bool) – Whether to use weighted cosine. cosine will be used if set to None.
normalize (bool) – Whetehr to use normalize before multiplication.
- forward(x, y=None, non_negative=False)[source]¶
Given two groups of node embeddings, calculate the pairwise similarities.
- Parameters
x (torch.tensor) – Input features.
y (torch.tensor) – Input features.
xwill be used if set to None.non_negative (bool) – Whether to mask negative elements.
- Returns
adj – Pairwise similarities.
- Return type
torch.tensor
- class opengsl.module.metric.Cosine[source]¶
Bases:
ModuleCosine to generate pairwise similarities from given node embeddings.
- forward(x, y=None, non_negative=False)[source]¶
Given two groups of node embeddings, calculate the pairwise similarities.
- Parameters
x (torch.tensor) – Input features.
y (torch.tensor) – Input features.
xwill be used if set to None.non_negative (bool) – Whether to mask negative elements.
- Returns
adj – Pairwise similarities.
- Return type
torch.tensor
- class opengsl.module.metric.InnerProduct[source]¶
Bases:
ModuleInnerProduct to generate pairwise similarities from given node embeddings.
- forward(x, y=None, non_negative=False)[source]¶
Given two groups of node embeddings, calculate the pairwise similarities.
- Parameters
x (torch.tensor) – Input features.
y (torch.tensor) – Input features. x will be used if set to
None.non_negative (bool) – Whether to mask negative elements.
- Returns
adj – Pairwise similarities.
- Return type
torch.tensor