# What should be the MINIMUM value of 'k' in LSH (Locality Sensitive Hashing) for 20M + data points?

For 20M + images, I'm thinking about using LSH for similarity of Vectors or data points or more precisely image Embeddings extracted from ResNet. My data points are supposed to be growing but for the sake of simplicity, let us suppose we have 20M images.

What should be the minimum value of k so that I avoid Hash collision? I think  k = 25 as 2^25 = 33554432 is the minimum value to be used. Also, is there any method to find the optimum value of k.

I know there is a tradeoff between speed and accuracy. More the k, more the hashes, more the buckets, better the accuracy but lower the speed. Also, I can't find the optimum k by running a loop and checking the graph for 20M practically.