IP Library Granted Patent US 11,222,031
Granted Patent B1
US 11,222,031 · App. 16/565,250 · Granted Jan 11, 2022

Determining terminologies for entities based on word embeddings

Inventor: Gokhuldass Mohandas (Palo Alto, CA)
Assignee: Ciitizen, LLC
G06F16/2465G06F16/334G06F40/30G16H10/60
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 11,222,031
App. No.
16/565,250
Granted
Jan 11, 2022
Kind
B1
Abstract

Some embodiments provide a program that receives a set of words. The program further determines an embedding for a word in the set of words. The program also accesses a knowledge base to retrieve a plurality of entries. Each entry includes a text description of a concept. The program further determines, for each entry in the plurality of entries in the knowledge base, an embedding for the entry based on the text description of the concept. The program also calculates, for each entry in the plurality of entries in the knowledge base, a distance value between the embedding for the word in the set of words and the embedding for the entry. The program further determines an entry in the plurality of entries in the knowledge base having a text description of a concept that best represents the set of words based on the plurality of distance values.

Claims (55)

1. A non-transitory machine-readable medium storing a program executable by at least one processing unit of a device, the program comprising sets of instructions for:

receiving a set of words;

determining an embedding for a word in the set of words;

accessing a knowledge base to retrieve a plurality of entries, each entry comprising a text description of a concept;

determining, for each entry in the plurality of entries in the knowledge base, an embedding for the entry based on the text description of the concept;

calculating, for each entry in the plurality of entries in the knowledge base, a first distance value between the embedding for the word in the set of words and the embedding for the entry;

selecting a defined number of entries from the plurality of entries in the knowledge base having a shortest first distance value;

determining a subset of the set of words;

generating an embedding for the subset of the set of words;

calculating, for each entry in the defined number of entries, a second distance value between the embedding for the subset of the set of words and the embedding for the entry; and

determining an entry in the plurality of entries in the knowledge base having a text description of a concept that best represents the set of words based on the first distance values for each entry in the plurality of entries and the second distance values for each entry in the defined number of entries.

2. The non-transitory machine-readable medium of claim 1 , wherein determining, for each entry in the plurality of entries in the knowledge base, the embedding for the entry based on the text description of the concept comprises determining an embedding for each word in a set of words in the description of the concept, wherein the program further comprises a set of instructions for generating, for each entry in the plurality of entries in the knowledge base, an embedding for the entry based on the determined embeddings for each word in the set of words in the description of the concept.

3. The non-transitory machine-readable medium of claim 2 , wherein generating, for each entry in the plurality of entries in the knowledge base, the embedding for the entry comprises:

calculating an average of the determined embeddings for each word in the set of words in the description of the concept; and

using the average as the embedding for the entry.

4. The non-transitory machine-readable medium of claim 1 , wherein the determined entry in the plurality of entries in the knowledge base is the entry having a shortest first distance value.

5. The non-transitory machine-readable medium of claim 1 , wherein the knowledge base is a medical terminology knowledge base, wherein each entry in the knowledge base further comprises a unique identifier associated with the concept described by the text description.

6. The non-transitory machine-readable medium of claim 1 , wherein the set of words is raw unstructured text from a document in a medical record of a patient.

7. A method comprising:

receiving a set of words;

determining an embedding for a word in the set of words;

accessing a knowledge base to retrieve a plurality of entries, each entry comprising a text description of a concept;

determining, for each entry in the plurality of entries in the knowledge base, an embedding for the entry based on the text description of the concept;

calculating, for each entry in the plurality of entries in the knowledge base, a first distance value between the embedding for the word in the set of words and the embedding for the entry;

selecting a defined number of entries from the plurality of entries in the knowledge base having a shortest first distance value;

determining a subset of the set of words;

generating an embedding for the subset of the set of words; and

calculating, for each entry in the defined number of entries, a second distance value between the embedding for the subset of the set of words and the embedding for the entry; and

determining an entry in the plurality of entries in the knowledge base having a text description of a concept that best represents the set of words based on the first distance values for each entry in the plurality of entries and the second distance values for each entry in the defined number of entries.

8. The method of claim 7 , wherein determining, for each entry in the plurality of entries in the knowledge base, the embedding for the entry based on the text description of the concept comprises determining an embedding for each word in a set of words in the description of the concept, wherein the method further comprises generating, for each entry in the plurality of entries in the knowledge base, an embedding for the entry based on the determined embeddings for each word in the set of words in the description of the concept.

9. The method of claim 8 , wherein generating, for each entry in the plurality of entries in the knowledge base, the embedding for the entry comprises:

calculating an average of the determined embeddings for each word in the set of words in the description of the concept; and

using the average as the embedding for the entry.

10. The method of claim 7 , wherein the determined entry in the plurality of entries in the knowledge base is the entry having a shortest first distance value.

11. The method of claim 7 , wherein the knowledge base is a medical terminology knowledge base, wherein each entry in the knowledge base further comprises a unique identifier associated with the concept described by the text description.

12. The method of claim 7 , wherein the set of words is raw unstructured text from a document in a medical record of a patient.

13. A system comprising:

a set of processing units; and

a non-transitory machine-readable medium storing instructions that when executed by at least one processing unit in the set of processing units cause the at least one processing unit to:

receive a set of words;

determine an embedding for a word in the set of words;

access a knowledge base to retrieve a plurality of entries, each entry comprising a text description of a concept;

determine, for each entry in the plurality of entries in the knowledge base, an embedding for the entry based on the text description of the concept;

calculate, for each entry in the plurality of entries in the knowledge base, a first distance value between the embedding for the word in the set of words and the embedding for the entry;

select a defined number of entries from the plurality of entries in the knowledge base having a shortest first distance value;

determine a subset of the set of words;

generate an embedding for the subset of the set of words; and

calculate, for each entry in the defined number of entries, a second distance value between the embedding for the subset of the set of words and the embedding for the entry; and

determine an entry in the plurality of entries in the knowledge base having a text description of a concept that best represents the set of words based on the first distance values for each entry in the plurality of entries and the second distance values for each entry in the defined number of entries.

14. The system of claim 13 , wherein determining, for each entry in the plurality of entries in the knowledge base, the embedding for the entry based on the text description of the concept comprises determining an embedding for each word in a set of words in the description of the concept, wherein the instructions further cause the at least one processing unit to generate, for each entry in the plurality of entries in the knowledge base, an embedding for the entry based on the determined embeddings for each word in the set of words in the description of the concept.

15. The system of claim 14 , wherein generating, for each entry in the plurality of entries in the knowledge base, the embedding for the entry comprises:

calculating an average of the determined embeddings for each word in the set of words in the description of the concept; and

using the average as the embedding for the entry.

16. The system of claim 13 , wherein the determined entry in the plurality of entries in the knowledge base is the entry having a shortest first distance value.

17. The system of claim 13 , wherein the knowledge base is a medical terminology knowledge base, wherein each entry in the knowledge base further comprises a unique identifier associated with the concept described by the text description.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2024
From: INVITAE CORPORATION; CIITIZEN, LLC
To: CITIZEN HEALTH, INC.
Reel/Frame 066087/0060 →
RELEASE OF SECURITY INTEREST AT R/F 63787/0148 Recorded Dec 14, 2023
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
To: CIITIZEN, LLC
Reel/Frame 066017/0791 →
SECURITY INTEREST Recorded Mar 7, 2023
From: CIITIZEN, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 062907/0924 →
RELEASE OF SECURITY INTEREST Recorded Mar 2, 2023
From: PERCEPTIVE CREDIT HOLDINGS III, LP
To: CIITIZEN, LLC
Reel/Frame 062861/0976 →
MERGER AND CHANGE OF NAME Recorded Oct 22, 2021
From: CIITIZEN CORPORATION; CAYMAN MERGER SUB B LLC
To: CIITIZEN, LLC
Reel/Frame 057881/0810 →
SECURITY INTEREST Recorded Oct 22, 2021
From: CIITIZEN, LLC
To: PERCEPTIVE CREDIT HOLDINGS III, LP
Reel/Frame 057877/0241 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2020
From: MOHANDAS, GOKHULDASS
To: CIITIZEN CORP.
Reel/Frame 051609/0495 →
Cited By (1)
US 12,488,195