I do not understand how a hash table can allow us to divide vector space to regions. The hash table is a general data structure, isn’t? It has nothing to do with vector spaces or regions.

Hello @larryleguo!

If you remember from the classes, we can have what we call a “Locality sensitive hashing”, which is a technique that allows you to hash similar inputs into the same buckets with high probability. With it, you can clustering the points (or vectors) by deciding whether they are above or below a line, or a plane, or a region.

If you don’t remember, see this reading again.

Best regards,

Wesley P.

But the question is: “Hash tables are useful because”. It does not mention any context about locality sensitive hashing.

I fully agree with larryleguo here. Hash tables are a general data structure with various applications; LSH is just *one* of them. They do not have anything to do with vector spaces or dividing them into regions per se, the Wikipedia article (Hash table - Wikipedia) doesn’t even mention ‘vector’. The thing that “allow us to divide vector space to regions” are hyperplanes and the dot product, i.e., concepts from linear algebra. And you can take your divided-by-hyperplanes vector space and use it with other tools than hash tables, for instance, SVM classifiers.