Skip to content

Commit

Permalink
KMeans clustering algorithm (apache#13604)
Browse files Browse the repository at this point in the history
Implement Kmeans clustering algorithm for vectors.
Knn algorithms that further reduce memory usage of vectors (such as Product Quantization,
 RaBitQ etc) require clustering of vectors. This implements KMeans clustering algorithm.

Co-authored-by: Jim Ferenczi [email protected]
  • Loading branch information
mayya-sharipova authored Aug 2, 2024
1 parent cb8bc75 commit 26b46ce
Show file tree
Hide file tree
Showing 6 changed files with 692 additions and 0 deletions.
2 changes: 2 additions & 0 deletions lucene/CHANGES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,8 @@ New Features
* GITHUB#13597: Align doc value skipper interval boundaries when an interval contains a constant
value. (Ignacio Vera)

* GITHUB#13604: Add Kmeans clustering on vectors (Mayya Sharipova, Jim Ferenczi, Tom Veasey)

Improvements
---------------------

Expand Down
1 change: 1 addition & 0 deletions lucene/sandbox/src/java/module-info.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@

exports org.apache.lucene.payloads;
exports org.apache.lucene.sandbox.codecs.idversion;
exports org.apache.lucene.sandbox.codecs.quantization;
exports org.apache.lucene.sandbox.document;
exports org.apache.lucene.sandbox.queries;
exports org.apache.lucene.sandbox.search;
Expand Down
Loading

0 comments on commit 26b46ce

Please sign in to comment.