From the number of tweets that are starting to appear in my Google search results, it’s maybe surprising that Twitter’s own search offering has never really been the subject of much attention. A recent update sees the introduction of personalisation into the Twitter search experience, as described on the Twitter Engineering blog: The Engineering Behind Twitter’s New Search Experience.
A couple of things that jumped out at me from that report:
To support relevance filtering and personalization, we needed three types of signals:
Static signals, added at indexing time
Resonance signals, dynamically updated over time
Information about the searcher, provided at search time
At query time, a Blender server parses the user’s query and passes it along with the user’s social graph to multiple Earlybird servers. These servers use a specialized ranking function that combines relevance signals and the social graph to compute a personalized relevance score for each Tweet. The highest-ranking, most-recent Tweets are returned to the Blender, which merges and re-ranks the results before returning them to the user.
Twitter is most powerful when you personalize it by choosing interesting accounts to follow, so why shouldn’t your search results be more personalized too? They are now! Our ranking function accesses the social graph and uses knowledge about the relationship between the searcher and the author of a Tweet during ranking. Although the social graph is very large, we compress the meaningful part for each user into a Bloom filter, which gives us space-efficient constant-time set membership operations. As Earlybird scans candidate search results, it uses the presence of the Tweet’s author in the user’s social graph as a relevance signal in its ranking function.
I don’t know what the social graph includes, but if you’re an indiscriminate follower of folk on the one hand, and/or you don’t curate your followers to any significant extent (for example, blocking spambots, and not doing your twitter gardening), then your personalised search results may not be as highly tuned as they might be… (Although on the other hand, maybe the diversity of search results that might result from a very, err, diverse follower network is a Good Thing? (The tension between diversity and relevance in search results was something we were chatting over yesterday as preparation for the next OU/BBC co-produced episode of Click (BBC World Service radio)
PS Here’s another handy tool in a search curation context that I don’t think I’ve blogged about before: trunk.ly (search over links you’ve tweeted, posted to delicious, shared on Facebook etc).