IP Library Granted Patent US 10,049,154
Granted Patent B2
US 10,049,154 · App. 15/438,777 · Granted Aug 14, 2018

Method for matching queries with answer items in a knowledge base

Inventors: Amit Ben Shahar (Petah Tikva, IL); Omer Ben Nahum (Maccabim, IL)
Assignee: LogMeIn Inc.
G06F17/30684
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,049,154
App. No.
15/438,777
Granted
Aug 14, 2018
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.

Claims (39)

1. A system for automatically matching a stored response to a user Natural Language Query (NLQ), said system comprising:

a data storage containing indexed stared responses to natural language queries, each indexed stored response being associated with an individual set of natural language words and indexed based on the individual set of natural language words;

a computing platform including processing circuitry adapted to:

receive digital data representing the user NLQ;

assign weight values to words in the user NLQ and to words in the individual sets of natural language words, based on a rate of occurrence of each of the words in at least one knowledgebase and rates of occurences of synonyms of each of the words in the at least one knowledgebase, such that a weight value assigned to a given word is inversely related to a rate of occurrence of the given word in the at least one knowledgebase and is further inversely related to rates of occurrences of synonyms of the given word in the at least one knowledgebase;

identify responses stored in said data storage having an associated set of natural language words including words appearing in the user NLQ;

identify responses stored in said data storage having an associated set of natural language words including synonyms of words appearing in the user NLQ;

calculate a query specific significance value for words in the NLQ and words in each of the identified responses, wherein the query specific significance value for a given word in the NLQ is a ratio between the weight value of the given word in the NLQ and a sum of weight values of a set of other words in the NLQ and the query specific significance value for a given word in a given identified response is a ratio between the weight value of the given word in the given identified response and a sum of weight values of a set of other words in the given identified response, such that a query specific significance value of any selected word in any selected NLQ or identified response, is inversely related to a sum of weight values of words, other than the selected word, in the selected NLQ or identified response;

and

score matches between the user NLQ and each of the identified responses by performing, for each match of a given identified response and the user NLQ, a mathematical operation factoring: (i) query significance values of words in the user NLQ also appearing in the individual set of natural language words associated with the given identified response in said data storage; (ii) query significance values of words in the user NLQ synonymous to words appearing in the individual set of natural language words associated with the given identified response in said data storage, and (iii) query significance values of words in the identified responses corresponding to words in the NLQ.

2. The system according to claim 1 , wherein said processing circuitry is further adapted to compare a context in which the user NLQ was submitted to contexts associated with the identified responses, wherein a context in which the user NLQ was submitted is defined as parameters relating to the NLQ other than a text of the NLQ.

3. The system according to claim 1 , wherein said processing circuitry is further adapted to factor degrees of synonimity when assigning weight values to words in the user NLQ, and to words in the individual sets of natural language words, based on rates of occurences of synonyms of each of the words in the at least one knowledgebase.

4. The system according to claim 3 , wherein a degree of synonimity is context dependent.

5. The system according to claim 1 , wherein said processing circuitry is further adapted to factor degrees of synonimity when factoring weight values of words in the user NLQ synonymous to words appearing in an individual set of natural language words associated with a given identified response in said data storage.

6. The system according to claim 5 , wherein a degree of synonimity is context dependent.

7. A system for automatically matching a stored response to a user Natural Language Query (NLQ), said system comprising:

a data storage containing indexed stored responses to natural language queries, each indexed stored response being associated with an individual set of natural language words and indexed based on the individual set of natural language words;

a computing platform including processing circuitry adapted to:

receive digital data representing the user NLQ;

assign weight values to words in the user NLQ and to words in the individual sets of natural language words, based on a rate of occurrence of each of the words in at least one knowledgebase, such that a weight value assigned to a given word is inversely related to a rate of occurrence of the given word in the at least one knowledgebase;

identify responses stored in said data storage having an associated set of natural language words including words appearing in the user NLQ;

identify responses stored in said data storage having an associated set of natural language words including synonyms of words appearing in the user NLQ; and

calculate a query specific significance value for words in the NLQ and words in each of the identified responses, wherein the query specific significance value for a given word in the NLQ is a ratio between the weight value of the given word in the NLQ and a sum of weight values of a set of other words in the NLQ and the query specific significance value for a given word in a given identified response is a ratio between the weight value of the given word in the given identified response and a sum of weight values of a set of other words in the given identified response, such that a query specific significance value of any selected word in any selected NLQ or identified response, is inversely related to a sum of weight values of words, other than the selected word, in the selected NLQ or identified response:

score matches between the user NLQ and each of the identified responses by performing, for each match of a given identified response and the user NLQ, a mathematical operation factoring: (i) query significance values of words in the user NLQ also appearing in the individual set of natural language words associated with the given identified response in said data storage; (ii) query significance values of words in the user NLQ synonymous to words appearing in the individual set of natural language words associated with the given identified response in said data storage, and (iii) query significance values of words in the identified responses corresponding to words in the NLQ.

8. The system according to claim 7 , wherein said processing circuitry is further adapted to compare a context in which the user NLQ was submitted to contexts associated with the identified responses, wherein a context in which the user NLQ was submitted is defined as parameters relating to the NLQ other than a text of the NLQ.

9. The system according to claim 7 , wherein said processing circuitry is further adapted to factor degrees of synonimity when factoring weight values of words in the user NLQ synonymous to words appearing in an individual set of natural language words associated with a given identified response in said data storage.

10. The system according to claim 9 , wherein a degree of synonimity is context dependent.

11. A system for automatically matching a stored response to a user Natural Language Query (NLQ), said system comprising:

a data storage containing indexed stored responses to natural language queries, each indexed stored response being associated with an individual set of natural language words and indexed based on the individual set of natural language words;

a computing platform including processing circuitry adapted to:

receive digital data representing the user NLQ;

assign weight values to words in the user NLQ and to words in the individual sets of natural language words, based on a rate of occurrence of each of the words in at least one knowledgebase and rates of occurences of synonyms of each of the words in the at least one knowledgebase, such that a weight value assigned to a given word is inversely related to a rate of occurrence of the given word in the at least one knowledgebase and is further inversely related to rates of occurrences of synonyms of the given word in the at least one knowledgebase;

identify responses stored in said data storage having an associated set of natural language words including words appearing in the user NLQ;

calculate a query specific significance value for words in the NLQ and words in each of the identified responses, wherein the query specific significance value for a given word in the NLQ is a ratio between the weight value of the given word in the NLQ and a sum of weight values of a set of other words in the NLQ and the query specific significance value for a given word in a given identified response is a ratio between the weight value of the given word in the given identified response and a sum of weight values of a set of other words in the given identified response, such that a query specific significance value of any selected word in any selected NLQ or identified response, is inversely related to a sum of weight values of words, other than the selected word, in the selected NLQ or identified response;

and

score matches between the user NLQ and each of the identified responses by performing, for each match of a given identified response and the user NLQ, a mathematical operation factoring: (i) query significance values of words in the user NLQ also appearing in the individual set of natural language words associated with the given identified response in said data storage, and (ii) query significance values of words in the identified responses corresponding to words in the NLQ.

12. The system according to claim 11 , wherein said processing circuitry is further adapted to compare a context in which the user NLQ was submitted to contexts associated with the identified responses, wherein a context in which the user NLQ was submitted is defined as parameters relating to the NLQ other than a text of the NLQ.

13. The system according to claim 11 , wherein said processing circuitry is further adapted to factor degrees of synonimity when assigning weight values to words in the user NLQ, and to words in the individual sets of natural language words based rates of occurences of synonyms of each of the words in the at least one knowledgebase.

14. The system according to claim 13 , wherein a degree of synonimity is context dependent.

Assignments (11)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 053667/0169, REEL/FRAME 060450/0171, REEL/FRAME 063341/0051) Recorded Mar 15, 2024
From: BARCLAYS BANK PLC, AS COLLATERAL AGENT
To: GOTO GROUP, INC. (F/K/A LOGMEIN, INC.)
Reel/Frame 066800/0145 →
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 Jan 31, 2024
From: NANOREP TECHNOLOGIES LTD.
To: GOTO GROUP, INC.
Reel/Frame 066314/0378 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2022
From: SHAHAR, AMIT BEN; NAHUM, OMER BEN
To: NANOREP TECHNOLOGIES LITD.
Reel/Frame 059843/0789 →
CHANGE OF NAME Recorded Apr 8, 2022
From: LOGMEIN, INC.
To: GOTO GROUP, INC.
Reel/Frame 059644/0090 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS (SECOND LIEN) Recorded Feb 16, 2021
From: BARCLAYS BANK PLC, AS COLLATERAL AGENT
To: LOGMEIN, INC.
Reel/Frame 055306/0200 →
NOTES LIEN PATENT SECURITY AGREEMENT Recorded Sep 1, 2020
From: LOGMEIN, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 053667/0032 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Sep 1, 2020
From: LOGMEIN, INC.
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 053667/0079 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Sep 1, 2020
From: LOGMEIN, INC.
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 053667/0169 →
Continuity (4)
Continuation 14311441 · Jun 23, 2014
Continuation In Part 13757940 · Feb 4, 2013
Continuation 13019318 · Feb 2, 2011
Related Publication 20170161368A1 · Jun 8, 2017