DistanceKernel

Trait DistanceKernel 

Source
pub trait DistanceKernel: Send + Sync {
    // Required methods
    fn cosine(&self, query: &[f32], vector: &[f32]) -> f32;
    fn l2(&self, query: &[f32], vector: &[f32]) -> f32;
    fn inner_product(&self, query: &[f32], vector: &[f32]) -> f32;
    fn batch_score(
        &self,
        metric: Metric,
        query: &[f32],
        vectors: &[f32],
        dimension: usize,
        scores: &mut [f32],
    );
}
Expand description

距離カーネルの共通インターフェイス。

Required Methods§

Source

fn cosine(&self, query: &[f32], vector: &[f32]) -> f32

コサイン類似度(0.0〜1.0、ゼロノルム時は0.0)。

Source

fn l2(&self, query: &[f32], vector: &[f32]) -> f32

L2 距離(負値、大きいほど近い)。

Source

fn inner_product(&self, query: &[f32], vector: &[f32]) -> f32

内積。

Source

fn batch_score( &self, metric: Metric, query: &[f32], vectors: &[f32], dimension: usize, scores: &mut [f32], )

バッチスコアリング。vectorsdimension * n の連続配列。

Implementors§