roman bikbulatov

Filter-Aware Group Traversal for Adaptive ANN (Selectivity-Aware Group Scoring)

TL;DR. I work on filtered traversal in an architecture-aware ANN system where graph nodes are groups of vectors (offline KMeans clusters).
My core contribution is a selectivity-aware group scoring policy that re-orders traversal to reduce wasted expansions under selective filters and fixed ef_search / e_max budgets.
More details: technical note / code / full results available on request (subject to disclosure constraints).


Context

Filters and selectivity

Problem

Filtered workloads can make traversal wasteful:

Goal: under fixed ef_search / e_max (and high-recall constraints), reduce wasted work and improve latency without degrading Filtered Recall@k.
Where it should matter most: low/mid selectivity and correlated workloads with group-level selectivity; weaker effects are expected for high selectivity and near-uniform groups.

Baseline traversal

Baseline policy is best-first traversal by centroid distance:

My contribution

1) Selectivity-Aware Group Scoring (v0)

I designed and integrated a filter-aware ordering policy for group-nodes, using per-group predicate statistics to estimate the expected fraction of passing vectors and re-order traversal (seeds + neighbor expansion).
v0 uses safe re-ordering only (no pruning/thresholding).

Score sketch pass_ratio(g) = estimate_cat_matches(g) / group_size
score(g) = base_score(g) / (1 + lambda * pass_ratio(g))

Aggregation details:

2) Additional traversal optimizations (engineering)

Evaluation protocol

Selected observations

Status and next steps

Status: scoring-based re-ordering is integrated and runnable as a pure ordering policy (no pruning). Preliminary results indicate the effect is regime-dependent: when group-level selectivity signal is weak (near-uniform labels / high overlap / large groups), ordering is close to neutral. Current work focuses on operating-regime characterization and calibration (λ sweeps, alternative score forms) using mechanism-level metrics such as wasted_expansions.
Next:

  1. corr/uncorr sweeps in group-selective regimes (smaller groups, reduced overlap, clustered labels),
  2. sweep lambda (0.1/0.25/0.5/1.0) and budgets with Recall@10 ≥ 0.97,
  3. scale validation on a large-memory cluster to test regime stability at larger N_base.

Contact / access