IP Library Granted Patent US 10,304,012
Granted Patent B2
US 10,304,012 · App. 14/505,455 · Granted May 28, 2019

Determining host preferences for accommodation listings

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,304,012
App. No.
14/505,455
Granted
May 28, 2019
Kind
B2
Abstract

Methods and systems for determining the preferences of hosts offering accommodations are disclosed. In one embodiment, an online booking system models the preferences of hosts based on statistical relationships between features of previously received accommodation reservation requests and the acceptance of those reservation requests by the hosts. In particular, the system classifies reservation requests based on several features—a reservation request either possesses a feature or does not possess a feature. The preference of a host for a particular request feature is modeled based on the relationship between the reservation requests that possess the feature and the reservation requests that are accepted by the host.

Claims (85)

1. A computer implemented method, comprising:

identifying, by a server at a first time, a plurality of listings for a plurality of host computers, the listings associated with accommodations for booking;

accessing, by the server, a set of reservation requests received for the listings of the host computers, each reservation request for a listing having previously been accepted or rejected by the host computer associated with the listing;

generating, by the server, a cluster feature vector for a request feature, the cluster feature vector identifying whether the reservation requests in the set of reservation requests possessed the request feature;

determining, by the server, a cluster preference numerical value for the request feature in the cluster feature vector based on (1) a number of the reservation requests in the set that were accepted and (2) a number of the reservation requests in the set that possess the request feature, wherein the request feature is a time period for reservation of the listing specified in the reservation request, the time period representing a date, a date range, or an amount of time from a date on which the reservation request was received;

storing the cluster preference numerical value for the request feature;

receiving, at a second time from a guest computer, a search query, the search query specifying the request feature;

for each of the listings,

determining, by the server, a listing-specific preference value for the request feature based on the cluster preference numerical value and a preference value specific to the listing for the request feature;

generating, by the server, a preference model based on the listing-specific preference value, the preference model identifying a relationship between the request feature and a reservation request for the listing being accepted or rejected by the host computer associated with the listing;

applying, by the server, the preference model to a prospective reservation request associated with the received search query for the listing to compute a probability that the prospective reservation request will be accepted by the host computer;

ranking, by the server, the listings based on the computed probabilities; and

presenting the listings to the guest computer based on the ranking.

2. The method of claim 1 , wherein the request feature indicates a mechanism for classifying the set of reservation requests.

3. The method of claim 1 , wherein determining the listing-specific preference value comprises:

identifying a subset of the reservation requests that were received for the listing;

determining a number of the reservation requests in the subset that were accepted and a number of the reservation requests in the subset that possess the request feature; and

determining the listing-specific value based on a combination of the cluster preference value, the number of the reservation requests in the subset that were accepted and the number of the reservation requests in the subset that possess the request feature.

4. The method of claim 1 , wherein generating the preference model comprises generating a training data set by applying the listing-specific value to a subset of the reservation requests that were received for the listing.

5. The method of claim 4 , further comprising processing the training data set using a logistic regression to determine the relationship between the request feature and a reservation request for the listing being accepted or rejected by the host computer associated with the listing.

6. The method of claim 1 , further comprising:

determining whether to display a listing to the guest computer based on the computed probability.

7. The method of claim 6 , wherein determining whether to display the listing comprises comparing the computed probability with an acceptance threshold, and displaying the listing with the computed probability is equal to or above the acceptance threshold.

8. The method of claim 1 , wherein a listing is for an accommodation being offered for reservation by a host computer, and the request feature is a gap feature indicating a specific period of time between a previous reservation or calendar unavailability of the accommodation ending and a reservation associated with a reservation request beginning.

9. The method of claim 1 , further comprising filtering one or more listings from being presented, each of the one or more listings having a computed probability below a threshold value.

10. The method of claim 1 , wherein the preference value specific to the listing for the request feature indicates a median or mean preference for the request feature across all reservation requests for the listing.

11. The method of claim 1 , wherein the request feature is a count of nights associated with the reservation requests.

12. The method of claim 1 , wherein the request feature is a calendar range associated with the reservation requests.

13. The method of claim 1 , wherein the request feature is associated with a weight value indicating a degree to which a reservation request possessing the request feature has the request feature.

14. The method of claim 1 , wherein the cluster preference numerical value for the request feature is determined based on a total number of reservation requests in the set of reservation requests, a value of the request feature for each reservation request in the set of reservation requests, and a value indicating whether or not the reservation request was accepted by the host computer.

15. The method of claim 1 , wherein the listing-specific preference value for the request feature is determined based on a total number of reservation requests in the set of reservation requests, a value of the request feature for each reservation request in the set of reservation requests, a value indicating whether or not the reservation request was accepted by the host computer, and a weight to be assigned to the cluster preference numerical value for the request feature.

16. A non-transitory computer readable medium storing instructions, the instructions when executed cause the processor to perform steps, comprising:

identifying, by a server at a first time, a plurality of listings for a plurality of host computers, the listings associated with accommodations for booking;

accessing, by the server, a set of reservation requests received for the listings of the host computers, each reservation request for a listing having previously been accepted or rejected by the host computer associated with the listing;

generating, by the server, a cluster feature vector for a request feature, the cluster feature vector identifying whether the reservation requests in the set of reservation requests possessed the request feature;

determining, by the server, a cluster preference numerical value for the request feature in the cluster feature vector based on (1) a number of the reservation requests in the set that were accepted and (2) a number of the reservation requests in the set that possess the request feature, wherein the request feature is a time period for reservation of the listing specified in the reservation request, the time period representing a date, a date range, or an amount of time from a date on which the reservation request was received;

storing the cluster preference numerical value for the request feature;

receiving, at a second time from a guest computer, a search query, the search query specifying the request feature;

for each of the listings,

determining, by the server, a listing-specific preference value for the request feature based on the cluster preference numerical value and a preference value specific to the listing for the request feature;

generating, by the server, a preference model based on the listing-specific preference value, the preference model identifying a relationship between the request feature and a reservation request for the listing being accepted or rejected by the host computer associated with the listing;

applying, by the server, the preference model to a prospective reservation request associated with the received search query for the listing to compute a probability that the prospective reservation request will be accepted by the host computer;

ranking, by the server, the listings based on the computed probabilities; and

presenting the listings to the guest computer based on the ranking.

17. The non-transitory computer readable medium of claim 16 , wherein the request feature indicates a mechanism for classifying the set of reservation requests.

18. The non-transitory computer readable medium of claim 16 , wherein determining the listing-specific preference value comprises:

identifying a subset of the reservation requests that were received for the listing;

determining a number of the reservation requests in the subset that were accepted and a number of the reservation requests in the subset that possess the request feature; and

determining the listing-specific value based on a combination of the cluster preference value, the number of the reservation requests in the subset that were accepted and the number of the reservation requests in the subset that possess the request feature.

19. The non-transitory computer readable medium of claim 16 , wherein generating the preference model comprises generating a training data set by applying the listing-specific value to a subset of the reservation requests that were received for the listing.

20. The non-transitory computer readable medium of claim 19 , further comprising processing the training data set using a logistic regression to determine the relationship between the request feature and a reservation request for the listing being accepted or rejected by the host computer associated with the listing.

21. The non-transitory computer readable medium of claim 16 , further comprising:

determining whether to display a listing to the guest computer based on the computed probability.

22. The non-transitory computer readable medium of claim 21 , wherein determining whether to display the listing comprises comparing the computed probability with an acceptance threshold, and displaying the listing with the computed probability is equal to or above the acceptance threshold.

23. The non-transitory computer readable medium of claim 16 , wherein the listing is for an accommodation being offered for reservation by a host computer, and the request feature is a gap feature indicating a specific period of time between a previous reservation or calendar unavailability of the accommodation ending and a reservation associated with a reservation request beginning.

24. The non-transitory computer readable medium of claim 16 , wherein the steps further comprise filtering one or more listings from being presented, each of the one or more listings having a computed probability below a threshold value.

25. The non-transitory computer readable medium of claim 16 , wherein the preference value specific to the listing for the request feature indicates a median or mean preference for the request feature across all reservation requests for the listing.

26. A computer system comprising:

a processor; and

a memory storing instructions that, when executed by the processor, cause the processor to perform steps, comprising:

identifying, by a server at a first time, a plurality of listings for a plurality of host computers, the listings associated with accommodations for booking;

accessing, by the server, a set of reservation requests received for the listings of the host computers, each reservation request for a listing having previously been accepted or rejected by the host computer associated with the listing;

generating, by the server, a cluster feature vector for a request feature, the cluster feature vector identifying whether the reservation requests in the set of reservation requests possessed the request features;

determining, by the server, a cluster preference numerical value for the request feature in the cluster feature vector based on (1) a number of the reservation requests in the set that were accepted and (2) a number of the reservation requests in the set that possess the request feature, wherein the request feature is a time period for reservation of the listing specified in the reservation request, the time period representing a date, a date range, or an amount of time from a date on which the reservation request was received;

storing the cluster preference numerical value for the request feature;

receiving, at a second time from a guest computer, a search query, the search query specifying the request feature;

for each of the listings,

determining, by the server, a listing-specific preference value for the request feature based on the cluster preference numerical value and a preference value specific to the listing for the request feature;

generating, by the server, a preference model based on the listing-specific preference value, the preference model identifying a relationship between the request feature and a reservation request for the listing being accepted or rejected by the host computer associated with the listing;

applying, by the server, the preference model to a prospective reservation request associated with the received search query for the listing to compute a probability that the prospective reservation request will be accepted by the host computer;

ranking, by the server, the listings based on the computed probabilities; and

presenting the listings to the guest computer based on the ranking.

27. The computer system of claim 26 , wherein the request feature indicates a mechanism for classifying the set of reservation requests.

28. The computer system of claim 26 , wherein determining the listing-specific preference value comprises:

identifying a subset of the reservation requests that were received for the listing;

determining a number of the subset that were accepted and a number of the subset that possess the request feature; and

determining the listing-specific value based on a combination of the cluster preference value, the number of the subset that were accepted and the number of the subset that possess the request feature.

29. The computer system of claim 26 , wherein generating the preference model comprises generating a training data set by applying the listing-specific value to a subset of the reservation requests that were received for the first listing.

30. The computer system of claim 26 , wherein the steps further comprise processing the training data set using a logistic regression to determine the relationship between the request feature and a reservation request for the first listing being accepted or rejected by a first host computer associated with the first listing.

31. The computer system of claim 26 , wherein the steps further comprise determining whether to display a listing to the guest computer based on the computed probability.

32. The computer system of claim 26 , wherein determining whether to display the listing comprises comparing the computed probability with an acceptance threshold, and displaying the listing with the computed probability is equal to or above the acceptance threshold.

33. The computer system of claim 26 , wherein a listing is for an accommodation being offered for reservation by a host computer, and the request feature is a gap feature indicating a specific period of time between a previous reservation or calendar unavailability of the accommodation ending and a reservation associated with a reservation request beginning.

34. The computer system of claim 26 , wherein the steps further comprise:

filtering one or more listings from being presented, each of the one or more listings having a computed probability below a threshold value.

35. The computer system of claim 26 , wherein the preference value specific to the listing for the request feature indicates a median or mean preference for the request feature across all reservation requests for the listing.

Assignments (7)
RELEASE (REEL 054586 / FRAME 0033) Recorded Nov 1, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: AIRBNB, INC.
Reel/Frame 061825/0910 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Apr 21, 2021
From: TOP IV TALENTS, LLC
To: AIRBNB, INC.
Reel/Frame 055997/0907 →
RELEASE OF SECURITY INTEREST Recorded Mar 8, 2021
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: AIRBNB, INC.
Reel/Frame 055527/0531 →
SECURITY AGREEMENT Recorded Nov 19, 2020
From: AIRBNB, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054586/0033 →
FIRST LIEN SECURITY AGREEMENT Recorded Apr 21, 2020
From: AIRBNB, INC.
To: CORTLAND CAPITAL MARKET SERVICES LLC
Reel/Frame 052456/0036 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Apr 17, 2020
From: AIRBNB, INC.
To: TOP IV TALENTS, LLC, AS COLLATERAL AGENT
Reel/Frame 052433/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2014
From: IFRACH, BAR; DE MARS, SPENCER; CHARKOV, MAXIM
To: AIRBNB, INC.
Reel/Frame 033880/0664 →