

The Firefox "Places" frecency algorithm - mbrubeck
https://developer.mozilla.org/en/The_Places_frecency_algorithm

======
ramanujan
Any kind of heuristic weighting scheme like this can and usually should be
replaced with a machine learning approach.

During heuristic weight development, the developer sets the weights,
experiments with it for a while, notes whether particular URIs are not ranking
highly which should be (or vice versa), and then changes the weights.

Doing this the "right" way formalizes this process. The developer assigns a
desired rank to each URI (or NA if he just ranks the top few) and compares
this to the computed rank (as a function of the features, e.g. visitation
time, visitation frequency, etc.).

A few rounds of this on different computers and eventually the coefficients
settle such that the computed rank matches the desired rank most of the time.
Moreover the process is more transparent and can be re-run should new features
be included.

