Notes from A Programmer's Guide to Data Mining
1. If your data is dense (almost all attributes have non-zero values) and the magnitude of the attribute values is important, use distance measures such as Euclidean or Manhattan.
- Manhattan Distance -> Fast computation
- Euclidean Distance (Pythagorean Theorem) -> Slow computation
2. If the data is subject to grade-inflation (different users may be using different scales) use Pearson's R.
If we are relying on a single “most similar” person, that will be a problem. Any quirk that person has is passed on as a recommendation. So we can use K-nearest neighbor.
We use k most similar people to determine recommendations. The best value for k is application specific—you will need to do some experimentation.