A Data Science Central Community
If you have more than 100 friends on Facebook, you've probably noticed that Facebook always show up the same 20 friends on your profile page, day after day. FB actually shows up to 10 friends, but they rotate from a list of 20 friends that, according to FB data mining algorithms, are deemed to be your best friends.
What makes a connection become one of your FB best friend is how frequently she visits your profile. Your can influence this list to some extent, by posting comments and likes on friends that do not show up in your "20 best FB friends" list. As you tend to visit more frequently profiles from friends listed on your profile page, your FB friend list becomes a small, immutable set of 20 people. In short, the FB algorithm get stuck in a local optimum, with no way out. You get assigned to 20 faithful friends for your entire FB life, and it's get very difficult if not impossible to change this top friendlist.
Today, I noticed that FB is experimenting: every 3-4 pageviews, they will show up an alternate set of friends, hoping that it will create user activity, more pageviews, and at the end of the day, more advertising revenue.
For quite some time, I thought that FB's static list of 20 top friends arbitrarily assigned to you (even if you have 2,000 connections) was a way to limit bandwidth usage. One would assume that if the limit was 100 (rather than 20) top friends, bandwith usage would increase by a factor 2 to 3, and potentially cause FB servers to crash.
Anyway, it will be interesting to see how FB will improve its data mining algorithms (whether related to top friend lists, collaborative filtering or ad targeting). In particular, will FB be able to generate better random list of "top friends" that look more like they are generated by a smart AI system or human being, rather than by a dumb algorithm?