In Gmail, when I start typing out the "to" field, it suggests people to add to the email, based on whom I usually email together. Does anyone know where I can find a simple algorithm of this type, or what this would be called?

In particular, let's say I have friends named: A, B, C, D, E, F, G, .... I sometimes send group emails to ABCD, and sometimes to ABEF. If I start writing to AB, it should recommend either C or E, and if I choose C, it should then suggest D (basically refining the suggestion after each item is added).

The algorithm needs to be able to work with inputs it hasn't seen before. For example, if I start addressing to ABCZ, it should still recommend D, because that is associated with 3 of the 4 inputs.

EDIT: currently I have implemented it based on frequency (the element that has been associated with the most inputs). I would prefer to use conditional probability, like pre-calculating every combination such as P(C|AB) and P(D|ABC) etc but in my case this would be too many combinations to store since there are many inputs and they change all the time.


1 Answer 1


Looks like I found Google's paper here.

  • 1
    $\begingroup$ Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center. $\endgroup$
    – Community Bot
    Nov 5, 2021 at 23:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.