I recently studied about locally sensitive hashing an a follow explanation was given to me.
To produce a hash for a particular vector X with dimensions 5,
Draw 10 random vectors to form a plane and perform a dot product with the vector X.
In other words, a 10 x 5 matrix will be dot product with vector X.
The hash can be given as 1 if the result of each element in the resulting vector is positive else 0.
However, am i supposed to understand that these matrix can be considered a plane and how does it actually mean that if the dot product is negative/positive, it determines which side of the plane the vector is one?
Does the 10 random vectors form a subspace hence a plane?
Anyone can explain this? Thanks.
Let $p_1, p_2, \cdots, p_{10}$ be the random vectors. For each $p_i$, it defines a hyperplane whose normal vector is $p_i$; that is, the hyperplane partitions $\mathbb{R}^5$ into two parts, namely, $$\{v \in \mathbb{R}^5 \mid p_i^Tv > 0\}\quad \text{and}\quad\{v \in \mathbb{R}^5 \mid p_i^Tv \leq 0\}$$
Therefore, LSH function maps $x$ to $1$ if and only if $$ x \in \bigcap_{i=1}^{10} \{v \in \mathbb{R}^5 \mid p_i^Tv > 0\} $$ As you can see, it is actually not a hyperplane in general.