IP Library Granted Patent US 10,521,413
Granted Patent B2
US 10,521,413 · App. 14/948,213 · Granted Dec 31, 2019

Location-based recommendations using nearest neighbors in a locality sensitive hashing (LSH) index

Inventors: Aasish Pappu (New York, NY); Amanda Stent (New York, NY)
Assignee: Oath Inc.
G06F16/2255G06F3/0482G06F16/248G06F16/29G06F16/9537
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,521,413
App. No.
14/948,213
Granted
Dec 31, 2019
Kind
B2
Abstract

Software for a website hosting short-text services creates an index of buckets for locality sensitive hashing (LSH). The software stores the index in an in-memory database of key-value pairs. The software creates, on a mobile device, a cache backed by the in-memory database. The software then uses a short text to create a query embedding. The software map the query embedding to corresponding buckets in the index and determines which of the corresponding buckets are nearest neighbors to the query embedding using a similarity measure. The software displays location types associated with each of the buckets that are nearest neighbors in a view in a graphical user interface (GUI) on the mobile device and receives a user selection as to one of the location types. Then the software displays the entities for the selected location type in a GUI view on the mobile device.

Claims (41)

1. A method, comprising operations of:

creating an index of a plurality of buckets for locality sensitive hashing (LSH), wherein each bucket includes one or more word or phrase embeddings derived from a corpus of documents that describe entities associated with geographic locations;

storing the index in an in-memory database of key-value pairs;

creating, on a mobile device, a cache backed by the in-memory database, wherein the cache is in-memory;

using a short text to create a query embedding;

mapping the query embedding to corresponding buckets in the index and determining which of the corresponding buckets are nearest neighbors to the query embedding using a similarity measure;

displaying location types associated with each of the buckets that are nearest neighbors in a view in a graphical user interface (GUI) on the mobile device and receiving a user selection as to one of the buckets; and

displaying the entities for a selected location type in a GUI view on the mobile device, wherein each operation is performed by one or more processors.

2. The method of claim 1 , wherein the operations involving the query embedding are performed in real-time or near real-time.

3. The method of claim 1 , wherein the one or more word or phrase embeddings are derived from the corpus using a continuous distribution model.

4. The method of claim 3 , wherein the continuous distribution model is a continuous hag-of-words model or a continuous skip-gram model.

5. The method of claim 4 , further comprising an operation of ranking the entities for the selected location type according to geographical proximity to the mobile device, using a mapping app that uses a geo-location or a geo-position for the mobile device.

6. The method of claim 5 , further comprising an operation of using rankings to determine prominence when displaying the entities.

7. The method of claim 1 , wherein the short text is from a text message, an email, a calendar event, or a to-do list.

8. The method of claim 1 , wherein a particular geographic location of said geographic locations is a geo-location or geo-position associated with the mobile device.

9. The method of claim 1 , wherein said similarity measure uses one or more of cosine: similarity, city-block similarity, and Euclidian similarity.

10. One or more non-transitory computer-readable media persistently, storing instructions that, when executed by a processor, perform the following operations:

creating an index of a plurality of buckets for locality sensitive hashing (LSH), wherein each bucket includes one or more word or phrase embeddings derived from a corpus of documents that describe entities associated with geographic locations;

storing the index in an in-memory database of key-value pairs;

creating, on a mobile device, a cache backed by the in-memory database, wherein the cache is in-memory;

using a short text to create a query embedding;

map the query embedding to corresponding buckets in the index and determine which of the corresponding buckets are nearest neighbors to the query embedding using a similarity measure;

display location types associated with each of the buckets that are nearest neighbors in a view in a graphical user interface (GUI) on the mobile device and receive a user selection as to one of the buckets; and

display the entities for a selected location type in a GUI view on the mobile device.

11. The non-transitory computer-readable media of claim 10 , wherein the operations involving the query embedding are performed in real-time or near real-time.

12. The non-transitory computer-readable media of claim 10 , wherein the one or more word or phrase embeddings are derived from the corpus using a continuous distribution model.

13. The non-transitory computer-readable media of claim 12 , wherein the continuous distribution model is a continuous bag-of-words model or a continuous skip-gram model.

14. The non-transitory computer-readable media of claim 13 , further comprising an operation of ranking the entities for the selected location type according to geographical proximity to the mobile device, using a mapping app that uses a geo-location or a geo-position for the mobile device.

15. The non-transitory computer-readable media of claim 14 , further comprising an operation of using rankings to determine prominence when displaying the entities.

16. The non-transitory computer-readable media of claim 10 , wherein the short text is from a text message, an email, a calendar event, or a to-do list.

17. The non-transitory computer-readable media of claim 10 , wherein a particular geographic location of said geographic locations is a geo-location or a geo-position associated with the mobile device.

18. The non-transitory computer-readable media of claim 10 , wherein the similarity is one or more of cosine similarity, city-block similarity, and Euclidian similarity.

19. A method, comprising operations of:

creating an index of a plurality of buckets for locality sensitive hashing (LSH), wherein each bucket includes one or more word or phrase embeddings derived, using a continuous distribution model, from a corpus of documents that describe entities associated with geographic locations;

storing the index in an in-memory database of key-value pairs;

creating, on a mobile device, a cache backed by the in-memory database, wherein cache is in-memory;

using a short text to create a query embedding;

mapping the query embedding to corresponding buckets in the index and determining which of the corresponding buckets are nearest neighbors to the query embedding using cosine similarity, city-block similarity, or Euclidian similarity;

displaying location types associated with each of the buckets that are nearest neighbors in a view in a graphical user interface (GUI) on the mobile device and receiving a user selection as to one of the buckets; and

displaying the entities for a selected location type in a GUI view on the mobile device, wherein the each operation is performed by one or more processors.

20. The method of claim 19 , wherein the operations involving the query embedding are performed in real-time or near real-time.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2015
From: PAPPU, AASISH; STENT, AMANDA
To: YAHOO! INC.
Reel/Frame 037287/0782 →
Cited By (1)
US 12,361,302