quaterion.eval.pair.pair_metric 模块¶
- class PairMetric(distance_metric_name: Distance = Distance.COSINE)[source]¶
基类:
BaseMetric
用于基于对的数据的指标计算的基类
- 参数:
distance_metric_name – 用于计算距离或相似性矩阵的距离指标名称。可在
Distance
中找到可用名称。
提供距离和交互矩阵计算的默认实现。在累加器中累积嵌入和标签。
- compute(embeddings: Tensor, labels: Tensor, pairs: LongTensor, subgroups: Tensor)[source]¶
计算指标值
- 参数:
embeddings – 用于计算指标的嵌入
labels – 用于区分相似和不相似对象的标签。
pairs – 用于确定一对对象的索引
subgroups – 用于确定哪些样本可视为负样本的子组编号
- 返回:
torch.Tensor - 计算出的指标
- static prepare_labels(labels: Tensor, pairs: LongTensor, subgroups: Tensor) Tensor [source]¶
根据样本标签和对计算指标标签
- 参数:
labels – 用于区分相似和不相似对象的标签
pairs – 用于确定对象属于同一对的索引
subgroups – 用于确定负样本的索引。目前,它们不用于标签计算。
- 返回:
target – torch.Tensor - 在指标计算期间使用的标签
- raw_compute(distance_matrix: Tensor, labels: Tensor) Tensor [source]¶
对就绪的 distance_matrix 和 labels 执行指标计算
此方法不做任何数据和标签准备。假定 distance_matrix 已计算完毕,必要的更改(如掩盖元素到自身的距离)已应用,且相应的 labels 已准备好。
- 参数:
distance_matrix – 可用于指标计算的距离矩阵
labels – 与 distance_matrix 形状相同、可用于指标计算的标签。值取自 SimilarityPairSample.score。
- 返回:
torch.Tensor - 计算出的指标值