IP Library Granted Patent US 9,639,602
Granted Patent B2
US 9,639,602 · App. 14/311,441 · Granted May 2, 2017

Method for matching queries with answer items in a knowledge base

Inventors: Amit Ben Shahar (Petah Tikva, IL); Omer Ben Nahum (Maccabim, IL)
Assignee: NANOPREP TECHNOLOGIES LTD.
G06F17/30684G06F17/30622
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 9,639,602
App. No.
14/311,441
Granted
May 2, 2017
Kind
B2
Abstract

The present invention includes an expert system in which a search index furnishes answers to incoming queries provided in natural language. A search index for a specific field contains components that facilitate selecting a best fitting stored answer to the incoming query. Furthermore, context of the incoming query (e.g. location of the user, a current web page or service being used/viewed by the user, the time, etc.) may be considered when selecting a best fitting answer. A language specific storehouse of weighted words and a private storehouse of weighted words associated with a field-specific search index provide the basis for evaluating the significance level of a natural language word of a query. Again, context of the incoming query may be considered when evaluating the significance level of a natural language word of a query. Irrelevant portions of an incoming query may first be deleted from the inquiry prior to processing. A procedure elects candidates from a store of indexed answers to match the incoming query to first form a list of candidates, based on the existence of identical or similar words. Then, from the list of available candidates, one that provides the best match is selected.

Claims (41)

1. A system for providing an automated response to a user natural language query (NLQ) made in regard to a subject, said system comprising:

a computing platform including communication circuitry, processing circuitry and computer executable code adapted to cause the computing platform to:

(a) receive digital data representing the user NLQ;

(b) assign a weight value to words in the NLQ, wherein a weight value assigned to a given word of the NLQ is inversely related to a rate of occurrence of the given word in at least one knowledgebase;

(c) calculate a query specific significance value for one or more of the words in the NLQ, wherein the query specific significance value for a given word is a ratio between the weight value of the given word and a sum of weight values of a set of other words in the NLQ, such that a query specific significance value of any selected word in any selected NLQ is inversely related to a sum of weight values of words, other than the selected word, in the selected NLQ;

(d) search the at least one knowledgebase for one or more candidate matches, which candidate matches include words corresponding to words in the user NLQ; and

(e) score matches between the NLQ and the one or more match candidates by performing a mathematical operation using the query significance value of words in the NLQ and the query significance value of corresponding words in the one or more match candidates;

(f) compare a context in which the NLQ was submitted to contexts associated with one or more of the one or more match candidates, wherein a context of a NLQ is a parameter relating to the NLQ other than the text of the NLQ.

2. The system according to claim 1 , further comprising disqualifying a given match candidate of the one or more match candidates based on said comparison.

3. The system according to claim 1 , wherein scoring a match between the NLQ and the one or more match candidates further includes factoring a similarity or dissimilarity in the context of the NLQ and contexts of the match candidates.

4. The system according to claim 1 , wherein scoring a match further includes performing the mathematical operation using the query significance value associated with NLQ words and the query significance value associated with corresponding match candidate words for substantially each word in the NLQ having a corresponding word in the match candidates and performing for each of the match candidates an aggregation of the results of the mathematical operations performed using the query significance values associated with the NLQ words and the query significance values associated with corresponding match candidate words, for each match candidate of the one or more match candidates.

5. The system according to claim 4 , wherein scoring a match further includes comparing a result of the aggregation for each match candidate with a perfect match score, wherein a perfect match score is a score a match candidate identical to the NLQ would receive.

6. The system according to claim 1 , wherein the context in which the NLQ was submitted is associated with an activity of the user on a website.

7. The system according to claim 1 , wherein the context in which the NLQ was submitted is associated with data relating to personal characteristics of the user or a geographical location of the user.

8. The system according to claim 1 , wherein the context in which the NLQ was submitted is associated with a webpage the user is currently visiting.

9. The system according to claim 1 , wherein the context in which the NLQ was submitted is associated data relating to characteristics of a computing device the user is using.

10. The system according to claim 1 , wherein the context in which the NLQ was submitted is related to a relationship of the user with a website or service associated with the knowledgebase.

11. The system according to claim 1 , wherein the context in which the NLQ was submitted is related to one or more previous activities of the user on a website.

12. The system according to claim 1 , wherein said assigning a weight value to each of some or all of the words in the NLQ includes factoring a context in which the NLQ was submitted into the significance level score assigned to some or all of the words.

13. The system according to claim 1 , wherein a context of the NLQ derived from text of the NLQ is treated differently than a context of the NLQ derived from a computational environment in which the NLQ was submitted.

14. A system for providing an automated response to a user natural language query (NLQ) made in regard to a subject, said system comprising:

a computing platform including communication circuitry, processing circuitry and computer executable code adapted to cause the computing platform to:

(a) receive digital data representing the user NLQ;

(b) assign a weight value to words in the NLQ, wherein a weight value assigned to a given word of the NLQ is inversely related to a rate of occurrence of the given word, or synonyms of the given word, in at least one knowledgebase;

(c) calculate a query specific significance value for one or more of the words in the NLQ, wherein the query specific significance value for a given word is a ratio between the weight value of the given word and a sum of weight values of a set of other words in the NLQ, such that a query specific significance value of any selected word in any selected NLQ is inversely related to a sum of weight values of words, other than the selected word, in the selected NLQ;

(d) search the at least one knowledgebase for one or more candidate matches, which candidate matches include words corresponding to words in the user NLQ; and

(e) score a match between the NLQ and a match candidate of the one or more match candidates by performing a mathematical operation using the query significance value of words in the NLQ and the query significance value of corresponding words or corresponding synonyms of the words in the match candidate.

15. The system according to claim 14 , wherein a weight value assigned to a given word of the user NLQ is inversely related to a rate of occurrence of the given word, or synonyms of the given word, in each of at least two knowledgebases.

16. The system according to claim 14 , wherein scoring a match between the NLQ and a match candidate further includes factoring a similarity or dissimilarity in a context of the NLQ and the match candidate.

17. The system according to claim 14 , wherein scoring a match further includes performing the mathematical operation using the query significance value associated with NLQ words and the query significance value associated with a corresponding match candidate words or corresponding synonyms of the words for substantially each word in the NLQ having a corresponding word or corresponding synonym of the word in the match candidate and performing for each of the match candidates an aggregation of the results of the mathematical operations performed using the query significance values, for each match candidate of the one or more match candidates.

18. The system according to claim 17 , wherein scoring a match further includes comparing a result of the aggregation with a perfect match score, wherein a perfect match score is a score a match candidate identical to the NLQ would receive.

19. The system according to claim 14 , wherein said computer executable code is further adapted to cause the computing platform to disqualify a match candidate based on a context of the match candidate which is dissimilar to a context of the NLQ.

20. The system according to claim 14 , wherein synonyms are assigned weights associated with a degree of synonymity, which weights are factored into said mathematical operations.

21. A system for providing an automated response to a user natural language query (NLQ) made in regard to a subject, said system comprising:

a computing platform including communication circuitry, processing circuitry and computer executable code adapted to cause the computing platform to:

(a) receive digital data representing the user NLQ;

(b) identify and remove words irrelevant to the substance of the user NLQ from the user NLQ to generate an Incoming Query (IQ);

(c) assign a weight value to words in the IQ, wherein a weight value assigned to a given word of the IQ is inversely related to a rate of occurrence of the given word in at least one knowledgebase;

(d) calculate a query specific significance value for one or more of the words in the NLQ, wherein the query specific significance value for a given word is a ratio between the weight value of the given word and a sum of weight values of a set of other words in the NLQ, such that a query specific significance value of any selected word in any selected NLQ is inversely related to a sum of weight values of words, other than the selected word, in the selected NLQ;

(e) search the at least one knowledgebase for one or more candidate matches, which candidate matches include words corresponding to words in the user IQ; and

(f) score a match between the IQ and a match candidate by performing a mathematical operation using the query significance value of words in the IQ and the query significance value of corresponding words in the match candidate.

Assignments (5)
SECURITY INTEREST Recorded Feb 16, 2024
From: GOTO COMMUNICATIONS, INC.; GOTO GROUP, INC.; LASTPASS US LP
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS THE NOTES COLLATERAL AGENT
Reel/Frame 066614/0355 →
SECURITY INTEREST Recorded Feb 16, 2024
From: GOTO COMMUNICATIONS, INC.,; GOTO GROUP, INC., A; LASTPASS US LP,
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS THE NOTES COLLATERAL AGENT
Reel/Frame 066614/0402 →
SECURITY INTEREST Recorded Feb 7, 2024
From: GOTO GROUP, INC.,; GOTO COMMUNICATIONS, INC.; LASTPASS US LP
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 066508/0443 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2022
From: NANOREP TECHNOLOGIES LTD.
To: GOTO GROUP, INC.
Reel/Frame 059609/0873 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2014
From: BEN SHAHAR, AMIT; BEN NAHUM, OMER
To: NANOREP TECHNOLOGIES LTD.
Reel/Frame 033162/0853 →
Continuity (3)
Continuation In Part 13757940 · Feb 4, 2013
Continuation 13019318 · Feb 2, 2011
Related Publication 20140304257A1 · Oct 9, 2014