Finding the perfect place to stay when you’re traveling can be a daunting process. The location, price, number of rooms, availability, amenities, type of rental, budget, and many other factors play a major role in the process. To help travelers get the best Airbnb suggestions for their travel plans, developers from the company have developed a deep learning algorithm that has supercharged the home sharing platform’s search recommendations.
In a new paper published on ArXiv this week, the researchers describe how they made the transition from machine learning to deep learning. The paper is targeted at teams or companies that have a machine learning system and are looking to transition to neural networks.
“Would we recommend deep learning to others? that would be a wholehearted Yes,” the Airbnb developers stated in their paper. “It is not only because of the strong gains in the online performance of the model. Part of it has to do with how deep learning has transformed our roadmap ahead,” the team explained.
Using NVIDIA Tesla GPUs on the Amazon Web Services cloud, and the cuDNN-accelerated TensorFlow deep learning framework, the team trained a deep neural network on years’ worth of user interaction data from the company’s server logs.
“Search queries from a guest hits a Java server that does retrieval and scoring. The server also produces logs which are stored as serialized Thrift instances. The logs are processed using a Spark pipeline to create training data,” the team stated. The team then compiled the data into a CSV file and fed into TensorFlow.
Before neural networks, the company used a manually crafted machine learning system for its recommendation system that was comprised of a gradient boosted decision tree (GBDT), a model that identifies and ranks predictive factors. This led to “one of the largest step improvements in home bookings in Airbnb history” the team said. However, “the gains in online bookings eventually saturated with long spells of neutral experiments. This made the moment ripe for trying sweeping changes to the system.”
“Earlier, [our] focus was largely on feature engineering, but after the move to deep learning, trying to do better math on the features manually has lost its luster,” the researchers said. “[Deep learning] has freed us up to investigate problems at a higher level, like how can we improve our optimization objective, and are we accurately representing all our users? Two years later taking the first steps towards applying neural networks to search ranking, we feel we are just getting started.”