July 23, 2008 – 11:45 am, by Matt Biddulph

How Dopplr learns

There are several places in Dopplr where we work hard behind the scenes to turn information that makes sense to people into data that makes sense to machines.

The most important one is where we interpret places and dates and turn them into trips. This is harder than it sounds, because over the centuries people have evolved an astonishing variety of ways of referring to place and time.

This was important recently when we launched our new SMS, Twitter and email features. We get quite a few requests for an explanation of how they work, so here’s a little insight.

The key to Dopplr’s ‘intelligence’ is learning from you and your fellow travellers over time.

For example, let’s say you’ve just joined Dopplr. You type ‘Paris’ into the Add A Trip form, and we look at the history of everyone’s trips from the last 18 months of our database and conclude that 99% of the time, that means “Paris, France”. However, if you’ve been using Dopplr for a while then we also look back at your own trip history. If you’ve previously been on a trip to “Paris, Texas” then that’s the default we’ll choose.

So the more trips you go on, the better we get to know you.

Incidentally, this ‘popularity content’ ranking of places has led to some lovely map visualisations and interesting statistics. If you haven’t seen them before, do look back in our blog at our Raumzeitgeist and Mid-2008 Travel Outlook posts.

When we’re scanning emails, twitters and text messages, we’ve got a few more factors to interpret. This time we’re looking for the dates of your trip as well as the place. We start with some complicated pattern matching which can spot a wide range of date formats in any prose it’s given. But of course most communication about travel mentions a lot of dates; for example, an airline confirmation might mention the date of a future change in luggage allowance.

Once we’ve got a candidate list of dates, we take a look at your traveller network to see if anyone who shares trips with you is going to the same place. If so, and the dates of their trips are similar to yours (within 24 hours or so) then we bump that date suggestion way up the list. If you and your friends or colleagues are going on the same holiday, conference trip or work visit, this works very effectively.

So the more people you share trips with, the better we get to know you.

For every email or twitter that we scan, we remember how you reacted to the result. If you confirm the trip, that’s a success for our system. If we guessed wrong but you chose one of our alternative suggestions, that’s a partial success. And if not, we failed. In any case, we add your message to the test suite we used to judge the quality of our engine, and use it to improve the results.

So the more messages you send us, the more we can improve our system and make it better for everyone.

6 Responses to “How Dopplr learns”

  1. My view on a public list of where I am and where I am going is - why? I already expose this to those I want it exposed to: that’s why I use your service, and why I show the result to friends on facebook. Who that I haven’t authorized to see it is appropriate to show it to?

    I realize that you have an opportunity to make revenue by exposing my travel details to people that might sell me services. Fine, include me in your aggregated statistics.


  2. Totally cool! Well done, really!

    BUT…
    Please please please please tweak the geocoder so that if I write Milano, Italy it actually gets the idea that I want to go in the second biggest city in that country (Milan) and not in a small village somewhere on the mountains :)

    I guess what happens is that Milan (the city) is present in your database as Milan, Italy and Milano, Italia, while the small village is only there as Milano, Italy (not having an international name)… bit confusing, I know, sorry :)

    Anyway, please, you would make at least one european commuter happy that way!


  3. Another tweak that seems to make sense to me:

    Everything I’ve submitted so far has caused your system to guess that I am travelling to Canada, France.

    First, now I know there’s a place called Canada, France. Thanks.

    The reason it is guessing Canada France is because I’m sending Air Canada itineraries and they are sprinkled through out with the world “Canada”. So for now it appears that everything I send is going to have to be corrected to put my Dopplr page to a real location, not this small town in France.


  4. [...] Tripit, has this kind of function since their first launch. So Dopplr’s announcement (http://blog.dopplr.com/2008/07/23/how-dopplr-learns/today truly brings Dopplr to the next level by allowing users to bring in trip through emails, [...]


  5. [...] does some interesting things with the data they are given. It helps them narrow down where and when people are traveling. Utilizing the input given from a [...]


  6. Hi Dopplrs,
    I just have a comment about my experience with the trips and carbon profile part of the website.
    I have been travelling all through Europe at the moment, but my homecity is Sydney, Australia. At a couple of points during my trip, Dopplr assumed I was returning to Sydney in between trips to say, Paris and London. I could not resolve this, even by deleting the trips and recreating them. The map view of my trips looked bizarre, because I was hopping back and forth between Australia and Europe multiple times, which would kill even the most seasoned jet-setter. Further, my carbon profile was quite off because I had apparently made multiple trips to Australia and back by train.
    Is there something that I’ve missed, or would it be possible to implement a feature so that each trip asks whether you were returning to your home city afterwards?
    Otherwise I love the website, keep up the good work.
    Cheers


Please leave a comment