Как стать автором
Обновить

Комментарии 2

КМК, стоило бы подробнее объяснить про квантизацию. Что-то вроде:

Вычислять произведениеd-размерного запроса на всnвекторов в базе слишком дорого, O(nd). Общепринятый подход к проблеме - квантизация: можно разбить векторы наkгрупп. Для каждой группы мы храним "центр"c_i, выбранный так чтобы произведение векторов в группе с "центром" отличалось не слишком сильно (более формально - реализовано минимизацие функции потерь, эта работа как раз предлагает улучшить эту функцию). Теперь при запросе нам нужно вычислить произведение запроса сk центрами (O(kd)), найти наиболее подходящую группу, найти векторы в группе по индексу, и посчитать произведение только с ними (а не со всей базой). При правильно подобранных группах суммарная сложность будеть меньше чем O(nd).

И дальше по тексту - наивное назначене векторов в группу с близжайшим центроидом может быть неоптимально, поэтому ...

Сколько векторов эту штука потянет?
И чем она лучше annoy/faiss/hnsw или других индексов из например проекта Milvus?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории