Locality Sensitive Hashing (LSH), and different types of collaborative-filtering recommendation systems