How does Airbnb use machine learning (ML)?
Published: 2022-02-22 19:41:00

## TLDR
Airbnb uses various modes of ranking models to increase product personalization. Early-deployment of machine learning was a key factor to the product’s success.

## Outline
* Intro
* Image classification
* Search ranking
* Conclusion

## Intro
Airbnb disrupted the travel industry by skipping the lengthy booking process and directly connecting travelers with hosts. Unlike traditional hotel booking, which is typically one offering, Airbnb offers millions of different listings at nearly every price point. To deliver users the most intuitive user experience, and establish themselves as one of tech’s most innovative companies, Airbnb deployed artificial intelligence (AI) and machine learning (ML) across their products.

## Image classification
The Airbnb’s host to booking pipeline starts with the host taking and uploading photos of their property to Airbnb. With over 5.6 million active listings, and the option for each listing to upload 100 photos, Airbnb’s website contains the largest collection of home and property images on the internet.

Airbnb found that along with price and location, the photos of a property were the biggest influence when securing a booking. Photos that hosts submitted were often mislabeled, out of order, and thus, not attracting optimal booking numbers. Airbnb’s mission was to create a system that better identified the context of the photos and arranged them in a way that maximized bookings on the website. The end goal of this project was to create a ranking system where the room type a traveler is most interested in is displayed first.

Airbnb deployed image classification to accurately identify and categorize photos. To create a functional image classification model, Airbnb asked users to label their photos. After clearing out mislabeled images, the company was left with a few million properly labeled photos in their dataset.

The data was modeled with the image classification neural network, Resnet 50, which is a powerful tool to categorize thousands of data points. By inputting their millions of photos into this model, Airbnb was able to accurately classify and group current and future photo uploads. The result of this project was utilizing these images in a ranking model that displayed the most beautiful assets from a property first.


<center>![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/60r1utsntzdfoagge9x4.png)_Example of how photos were sorted and grouped. Source: [Shijing Yao](https://medium.com/airbnb-engineering/categorizing-listing-photos-at-airbnb-f9483f3ab7e3)_</center>

## Search ranking
Airbnb’s popularity gave travelers the ability to go beyond the hotel hubs in the cities they were traveling to. The surge in new locations travelers were visiting came with an uncertainty of activities in these new locations. In 2016, Airbnb set out to solve this problem by launching their Airbnb Experiences. Experiences connected travelers with people hosting city tours, cooking classes, boating lessons, and more. This new feature found great and rapid success with the addition of over 20,000 unique experiences just two years after launch.

To make for a personalized user experience, it was essential that the tech behind experiences scale with the success of the platform.

A ranking model was deployed to optimize search, discovery, and personalization. The limited amount of data Airbnb had when they first launched didn’t stop them from building an ML algorithm. The search ranking’s data first came from user engagement through clicks and booking rates.

Listings were ordered randomly on the user dashboard, and each piece of engagement (clicks or bookings) carried a weight within the model. The more weight a listing had, the higher that the listing would be ranked on the page.

What began as a randomized rating list was able to become reflective of the listing’s popularity-the more relevant listings showing higher on user’s dashboards. However, this system became limiting as rankings were the same for all users.

Creating a successful ranking model to scale with the platform’s growth was aided by the fact that most people booking experiences also booked an Airbnb. This gave Airbnb an ample amount of data about trips, and thus, better insight on how to rank experience listings. A few important points of training data were host location, number of guests, price of the trip, and availability of experiences during trip duration. Airbnb was also able to rank for the origin country of the traveler booking the Airbnb. Using data from past experiences, Airbnb found patterns that existed within the experience preferences of people from different countries. All of these data points aided in creating a personalized experience for every user.

Instead of just weighing the popularity of a listing, weights were assigned to the factors listed above. A more personalized user experience was able to be created with more data points available. For example, if a group of five booked an above-market priced Airbnb in Manhattan, they would be recommended a more expensive experience listing in Manhattan could accommodate the size of their group.

Airbnb experiences have continually added thousands of listings since their launch in 2016. With so many listings for users to shift through, the personalization aspect of Airbnb’s ranking model makes for a much more intuitive process when searching for an experience. Their early deployment of their ranking model, and ability to scale improvements with an increase of data, is a great example of the power of early integrations of machine learning.

## Conclusion
While Airbnb is now a market leader, they deployed machine learning within their products long before they had the data capacity to run the complex models they do today. Understanding the value of machine learning, specifically for ranking, boosted Airbnb’s customer satisfaction to become the powerhouse it is today.