# US 11,308,564 B2 · Hierarchical generation of booking probability

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,308,564 B2
- Document ID: US11308564B2
- Status: Granted
- Kind: B2
- Application number: 16/214,359
- Filed: 2018-12-10
- Published: 2020-06-11
- Granted: 2022-04-19
- Earliest claimed: 2018-12-10
- Assignees: Airbnb, Inc.
- Applicants: Airbnb, Inc.
- Inventors: Peng Ye; Fan Yang
- Web page: https://patentgrep.com/patent/US11308564B2

## CPC

- G06Q 50/14: Travel agencies
- G06N 5/01: Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
- G06N 20/00: Machine learning
- G06N 20/20: Ensemble learning
- G06Q 30/0202: Market predictions or forecasting for commercial activities
- G06Q 30/0204: Market segmentation
- G06N 5/045: Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Systems and methods are provided for extracting a plurality of features for a listing from a datastore comprising a plurality of listings and a plurality of features for each of the plurality of listings, determining a cluster of similar listings to the listing and generating a set of cluster features for the cluster of similar listings, analyzing the set of cluster features for the cluster of similar listings based on a booking price, using a first trained machine learning model to determine a cluster-level probability of booking the listing on the given date, analyzing the plurality of features for the listing using the booking price, using a second trained machine learning model to determine a listing-level probability of booking the listing on the given date, and generating a final probability of booking by combining the cluster-level probability of booking and the listing-level probability of booking.

## Claims

### Claim 1

A method comprising:
generating, from feature values extracted from historical marketplace data associated with an online marketplace, sets of training clusters, each training cluster including feature values describing similar listings posted to the online marketplace;
training a first machine learning model based on the set of training clusters, yielding a first trained machine learning model for generating cluster-level probability values that listings will be booked on specified booking dates;
training a second machine learning model based on an output of training the first trained machine learning model, yielding a second trained machine learning model for generating listing-level probability values that listings will be booked on specified booking dates;
receiving, by a computing system in the online marketplace, a request for a probability that a listing will be booked on a given date;
extracting, by the computing system in the online marketplace, a set of feature values describing the listing, the set of feature values corresponding to a plurality of features and having been generated from first listing data describing the listing, the set of feature values extracted from a datastore comprising sets of feature values describing a plurality of listings;
determining, by the computing system in the online marketplace, a cluster of similar listings to the listing, the cluster of similar listings being determined based on a comparison of the set of feature values describing the listing and the sets of feature values describing the plurality of listings;
generating, by the computing system in the online marketplace, a set of cluster feature values for the cluster of similar listings based on the set of feature values describing the listing and sets of feature values describing the cluster of similar listings;
using the set of cluster feature values and a booking price as input into the first trained machine learning model, to generate a cluster-level probability value indicating a first likelihood that the listing will be booked on the given date;
using the set of feature values describing the listing and the booking price as input into the second trained machine learning model, to generate a listing-level probability value indicating a second likelihood that the listing will be booked on the given date; and
generating, by the computing system in the online marketplace, a final probability value indicating a third likelihood that the listing will be booked on the given date by combining the cluster-level probability value and the listing-level probability value.

### Claim 2 (depends on 1)

The method of claim 1, wherein the request comprises a unique identifier for the listing.

### Claim 3 (depends on 1)

The method of claim 1, wherein the request comprises the booking price associated with the listing on the given date.

### Claim 4 (depends on 1)

The method of claim 1, wherein the plurality of features comprises at least one of price, price ratio, price minimum, price maximum, occupancy rate, listing views, quality of images for listing, weekly discount, monthly discount, click-through score, number of bathrooms, cancelation policy, number of bedrooms, number of beds, maximum guests, and internet availability.

### Claim 5 (depends on 1)

The method of claim 1, wherein the plurality of features includes a location associated with the listing, and determining the cluster of similar listings to the listing comprises determining listings within a predefined distance from the location associated with the listing.

### Claim 6 (depends on 5)

The method of claim 5, wherein the plurality of features is a room type associated with the listing, and determining the cluster of similar listings to the listing is based on the location and room type associated with the listing.

### Claim 7 (depends on 1)

The method of claim 1, wherein the set of cluster feature values for the cluster of similar listings comprises values for at least one of price, price ratio, room type, average booking price, day of the week, day of the year, average listing views, and occupancy rate.

### Claim 8 (depends on 1)

The method of claim 1, wherein the final probability value is generated for a plurality of proposed booking prices to generate a plurality of probability values that the listing will be booked on the given date, and the method further comprises:
generating a demand curve based on the plurality of probability values that the listing will be booked on the given date.

### Claim 9

A computing system comprising:
a memory that stores instructions; and
one or more processors configured by the instructions to perform operations comprising:
generating, from feature values extracted from historical marketplace data associated with an online marketplace, sets of training clusters, each training cluster including feature values describing similar listings posted to the online marketplace;
training a first machine learning model based on the set of training clusters, yielding a first trained machine learning model for generating cluster-level probability values that listings will be booked on specified booking dates;
training a second machine learning model based on an output of training the first trained machine learning model, yielding a second trained machine learning model for generating listing-level probability values that listings will be booked on specified booking dates;
receiving a request for a probability that a listing will be booked on a given date;
extracting a set of feature values describing the listing, the set of feature values corresponding to a plurality of features and having been generated from first listing data describing the listing, the set of feature values extracted from a datastore comprising sets of feature values describing a plurality of listings;
determining a cluster of similar listings to the listing, the cluster of similar listings being determined based on a comparison of the set of feature values describing the listing and the sets of feature values describing the plurality of listings;
generating a set of cluster feature values for the cluster of similar listings based on the set of feature values describing the listing and sets of feature values describing the cluster of similar listings;
using the set of cluster feature values and a booking price as input into the first trained machine learning model, to generate a cluster-level probability value indicating a first likelihood that the listing will be booked on the given date;
using the set of feature values describing the listing and the booking price into the second trained machine learning model, to generate a listing-level probability value indicating a second likelihood that the listing will be booked on the given date; and
generating a final probability value indicating a third likelihood that the listing will be booked on the given date by combining the cluster-level probability value and the listing-level probability value.

### Claim 10 (depends on 9)

The computing system of claim 9, wherein the request comprises a unique identifier for the listing.

### Claim 11 (depends on 9)

The computing system of claim 9, wherein the request comprises the booking price associated with the listing on the given date.

### Claim 12 (depends on 9)

The computing system of claim 9, wherein the plurality of features comprises at least one of price, price ratio, price minimum, price maximum, occupancy rate, listing views, quality of images for listing, weekly discount, monthly discount, click-through score, number of bathrooms, cancelation policy, number of bedrooms, number of beds, maximum guests, and internet availability.

### Claim 13 (depends on 9)

The computing system of claim 9, wherein the plurality of features includes a location associated with the listing, and determining the cluster of similar listings to the listing comprises determining listings within a predefined distance from the location associated with the listing.

### Claim 14 (depends on 13)

The computing system of claim 13, wherein the plurality of features is a room type associated with the listing, and determining the cluster of similar listings to the listing is based on the location and room type associated with the listing.

### Claim 15 (depends on 9)

The computing system of claim 9, wherein the set of cluster feature values for the cluster of similar listings comprises values for at least one of price, price ratio, room type, average booking price, day of the week, day of the year, average listing views, and occupancy rate.

### Claim 16 (depends on 9)

The computing system of claim 9, wherein the final probability value is generated for a plurality of proposed booking prices to generate a plurality of probability values that the listing will be booked on the given date, and the operations further comprise:
generating a demand curve based on the plurality of probability values that the listing will be booked on the given date.

### Claim 17

A non-transitory computer-readable medium comprising instructions stored thereon that are executable by at least one processor to cause a computing device associated with a first data owner to perform operations comprising:
generating, from feature values extracted from historical marketplace data associated with an online marketplace, sets of training clusters, each training cluster including feature values describing similar listings posted to the online marketplace;
training a first machine learning model based on the set of training clusters, yielding a first trained machine learning model for generating cluster-level probability values that listings will be booked on specified booking dates;
training a second machine learning model based on an output of training the first trained machine learning model, yielding a second trained machine learning model for generating listing-level probability values that listings will be booked on specified booking dates;
receiving a request for a probability that a listing will be booked on a given date;
extracting a set of feature values describing the listing, the set of feature values corresponding to a plurality of features and having been generated from first listing data describing the listing, the set of feature values extracted from a datastore comprising sets of feature values describing a plurality of listings;
determining a cluster of similar listings to the listing, the cluster of similar listings being determined based on a comparison of the set of feature values describing the listing and the sets of feature values describing the plurality of listings;
generating a set of cluster feature values for the cluster of similar listings based on the set of feature values describing the listing and sets of feature values describing the cluster of similar listings;
using the set of cluster feature values and a booking price as input into the first trained machine learning model, to generate a cluster-level probability value indicating a first likelihood that the listing will be booked on the given date;
using the set of feature values describing the listing and the booking price into the second trained machine learning model, to generate a listing-level probability value indicating a second likelihood that the listing will be booked on the given date; and
generating a final probability value indicating a third likelihood that the listing will be booked on the given date by combining the cluster-level probability value and the listing-level probability value.

### Claim 18 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the plurality of features is a room type associated with the listing, and determining the cluster of similar listings to the listing is based on the location and room type associated with the listing.

### Claim 19 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the set of cluster feature values for the cluster of similar listings comprises values for at least one of price, price ratio, room type, average booking price, day of the week, day of the year, average listing views, and occupancy rate.

### Claim 20 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the final probability value is generated for a plurality of proposed booking prices to generate a plurality of probability values that the listing will be booked on the given date, and the operations further comprise:
generating a demand curve based on the plurality of probability values that the listing will be booked on the given date.
