ChatPaper.aiChatPaper

Clark Hash: cuantización dispersa de Johnson-Lindenstrauss sin estado para incrustaciones neuronales

Clark Hash: Stateless Sparse Johnson-Lindenstrauss Quantization for Neural Embeddings

May 27, 2026
Autores: Stanislav Kirdey, Clark Labs Inc
cs.AI

Resumen

Clark Hash es un método compacto para almacenar embeddings neuronales en menos espacio. Normaliza cada vector de la base de datos, aplica una proyección determinista dispersa con signo de Johnson-Lindenstrauss, recorta el resultado y almacena un código de cuantización escalar de ancho fijo. Las consultas permanecen en punto flotante y se puntúan comparándolas con los bocetos almacenados. En la configuración predeterminada de embeddings de oraciones de 384 dimensiones, Clark Hash almacena un vector de búsqueda por coseno en 48 bytes en lugar de 1536 bytes para almacenamiento denso f32. Esto es 32 veces más pequeño. El método no requiere un pase de entrenamiento, libros de códigos aprendidos, rotaciones ni estadísticas del corpus antes de poder almacenar nuevos vectores. Describimos el códec, la implementación en Rust y una evaluación multilingüe de similitud de oraciones en 9,304 pares etiquetados de 29 subconjuntos. Con un codificador MiniLM multilingüe, los bocetos de 48 bytes alcanzaron una correlación de Pearson macro de 0.910 y 0.946 con las puntuaciones de coseno densas en STS17 y STS22. Clark Hash no es un nuevo teorema de Johnson-Lindenstrauss ni un reemplazo para los índices de vecinos más cercanos aproximados. Es un códec simple sin estado para almacenamiento compacto de embeddings.
English
Clark Hash is a small method for storing neural embeddings in less space. It normalizes each database vector, applies a deterministic sparse signed Johnson-Lindenstrauss projection, clips the result, and stores a fixed-width scalar-quantized code. Queries stay in floating point and are scored against the stored sketches. In the default 384-dimensional sentence-embedding setting, Clark Hash stores a cosine-search vector in 48 bytes instead of 1536 bytes for dense f32 storage. This is 32x smaller. The method does not need a training pass, learned codebooks, rotations, or corpus statistics before new vectors can be stored. We describe the codec, the Rust implementation, and a multilingual sentence-similarity evaluation on 9,304 labeled pairs from 29 subsets. With a multilingual MiniLM encoder, the 48-byte sketches reached 0.910 and 0.946 macro Pearson correlation with dense cosine scores on STS17 and STS22. Clark Hash is not a new Johnson-Lindenstrauss theorem and it is not a replacement for approximate nearest-neighbor indexes. It is a simple stateless codec for compact embedding storage.