Determining host preferences for accommodation listings
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
exact text as granted — not AI-modifiedWhat is claimed is:
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.Join the waitlist — get patent alerts
Track US10354206B2 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.