Expedia has grown far beyond a search engine for flights -- it's now the parent company of a dozen travel brands including Trivago and Hotels.com -- but according to VP of global product David Fleischman, machine learning has always been at the heart of the company's operations.
The business of delivering quality flight search results is tough, and Fleischman describes it as an "unbounded computer science problem". The reason for this is because flight itineraries and schedules are constantly changing, and Expedia's proprietary 'best fare search' (BFS) has to 'learn' and adapt all the time.
The extent of the problem can be summed up by one statistic. The average Expedia.com flight search will take three seconds to deliver results. In those three seconds you will see, on average, 16,000 flight options, in order of convenience or price or time.
One weekend, the team at Expedia let BFS run for two full days on a single query: a round trip between Seattle and Atlanta in the United States. When they got back on Monday the algorithm had delivered "quadrillions of results," says Fleischman.
This algorithm is always being tested and tweaked by the machine learning team at Expedia. The data scientists will test the algorithm against a whole range of bias, such as towards a business traveller or a family.
"We test multiple versions of the algorithm against one another and tweak the tuning on that," says Fleischman. "We try these bias against one another and look at the result sets and ask if you get a better set."
How do they define success, then? "We test and look at metrics to see if people bought more flights because we gave them a better result," Fleischman explains.
Other applications of machine learning at Expedia
Expedia also uses its significant in-house machine learning resource - 700 data scientists and counting - to create algorithms for detecting fraud.
The next big project for Fleischman and his team is in natural language processing. Essentially this comes back to the core aim of Expedia, to deliver the right results for a query. These queries could be a set of criteria like dates, destination and a price range, or a natural language query such as 'I want to fly to Nice on Friday for the weekend'.
That's the next challenge. "The main goal is to answer a traveller's question and we use machine learning to solve that discovery problem," Flesichman says.
In a blog post, Fleischman detailed the importance of natural language queries for mobile: "We've been experimenting with [natural language processing] for the past few years; ever since we realised that the standard travel search framework doesn't work as well on mobile devices."
Sign up for CIO Asia eNewsletters.