·
AI & ML interests
Japanese independent researcher having shy and pampered personality. Twin-tail hair is a charm point. Interested in nlp. Usually using python and C.
Recent Activity
reacted to tomaarsen's post with 🔥 2 days ago 🤗 I've released Sentence Transformers v6.3 and wrote a blogpost about its key new feature: token pooling-aware training, teaching multi-vector models to preserve retrieval quality with fewer document vectors. Details:
Multi-vector models keep a vector per token, letting different query tokens match different parts of a document. Great for retrieval, but those vectors add up! Token pooling makes the representations smaller by merging similar document vectors into cluster means.
Pooling-aware training teaches the encoder to preserve useful matches after those vectors are merged. With MultiVectorTokenPoolingLoss, you can wrap your standard retrieval loss to train on both full and pooled representations, reusing the same token embeddings without another encoder pass. In short: small overhead.
I trained two ModernBERT-base models on the same 120k MS MARCO triplets, changing just the loss. At ~49 vectors per document instead of 193, pooling-aware training raises NanoBEIR@13 mean nDCG@10 from 49.03 to 51.23. That's 97.8% of its own unpooled score with ~4x fewer document vectors, compared with 94.6% retention for ordinary training.
v6.3 also adds:
- Adaptive token budgets, allocating vectors according to each document's content
- Matryoshka training for shorter multi-vector token embeddings
- Hugging Face kernels support for MaxSim, Ward clustering & supported transformers layers
- Native AWS Neuron inference
You can combine pooling-aware and Matryoshka training to learn both fewer vectors and fewer dimensions, then stack these with quantization to reduce storage per coordinate. For kernels, install sentence-transformers[kernels] and set use_kernels=True.
The blog walks through the method, training code, checkpoints & evaluation, building on Stefan Josef's Learn to Pool and LightOn's pooling regularization work:
ht tps://huggingface.co/blog/token-pooling
I'd love to see what you train with this! View all activity Organizations
published an article about 2 months ago view article 【Short Technical Report & Usage】NexteraBERT: Input-Dependent Gating Liquid Mixer and Length-Adaptive Attention for Fast, Long-Context Bidirectional Encoders
view article SSE in Practice: Fast Static Embeddings You Can Train, Serve, and Plug Into Your Agents
view article SSE Retrieval MRL v2: Regularization of Representation Space and Performance Improvement via Hyperparameter Optimization
view article SSE (Stable Static Embedding): Unlocking the Potential of Static Embeddings, A Dynamic Tanh Normalization Approach without Speed Penalty