IP Library Granted Patent US 10,872,104
Granted Patent B2
US 10,872,104 · App. 16/427,460 · Granted Dec 22, 2020

Method and apparatus for natural language query in a workspace analytics system

Inventors: Edward S. Wegryn (Ann Arbor, MI); Lawrence J. Birk (Ann Arbor, MI); Christopher Dyer (Ann Arbor, MI); Kenneth M. Schumacher (Orchard Lake, MI)
Assignee: Lakeside Software, LLC
G06F16/3338G06F16/243G06F16/3323G06F16/3329G06F16/3344G06F16/90344G06F16/951G06F40/247G06F40/295
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,872,104
App. No.
16/427,460
Granted
Dec 22, 2020
Kind
B2
Abstract

A method includes associating, for each one of a plurality of answer definitions, at least one or more pattern-form questions, wherein each answer definition has an associated jump target that defines a respective entry point into the workspace analytics system to provide information responsive to the associated one or more pattern-faun questions. The method further includes receiving a user input including capturing input text defining a natural language user query, matching the received input text to one of the pattern-form questions thereby selecting the jump target associated with the matched pattern-form question, and generating a response to the natural language user query by retrieving information from the workspace analytics system by referencing a link based on the selected jump target and zero or more parameters values.

Claims (22)

1. A computer-implemented method for providing a natural language interface to process user queries for information managed in a workspace analytics system, comprising:

providing an answer definition that includes one or more predetermined pattern-form questions wherein at least one of said predetermined pattern-form questions includes a generic parameter corresponding to an entity type in the workspace analytics system, the answer definition further including a jump target defining an entry point into the workspace analytics system;

establishing an extent of known entity values associated with the workspace analytics system, including defining a matcher definition that is associated with an entity type and retrieving from the workspace analytics system an entity values list of currently-defined entity values for the entity type;

receiving a user input including capturing original user input text, wherein the original user input text defines a natural language user query;

identifying, in the original user input text, at least one entity value that is included in the entity values list and replacing the identified entity value with the generic parameter, to thereby form a modified user input text that is different from said pattern-form questions;

matching the modified user input text to the at least one pattern-form question thereby defining the jump target;

generating a response to the natural language user query using the defined jump target and at least the identified entity value included in the original user input text wherein generating the response to the natural language user query comprises retrieving information from the workspace analytics system by referencing a link based on the defined jump target and at least the identified entity value included in the original user input text.

2. The method of claim 1 further comprising associating, for each one of a plurality of answer definitions, a respective pattern-form question list containing at least one or more pattern-form questions, wherein each answer definition has an associated jump target that defines a respective entry point into the workspace analytics system to provide information responsive to the associated one or more pattern-form questions.

3. The method of claim 2 further comprising:

pre-processing the pattern-form questions according to a first predetermined strategy;

pre-processing the captured user input text according to a second predetermined strategy;

determining, for each pre-processed pattern-form question, a respective similarity to the pre-processed input text and generating a respective output score;

selecting one of the pre-processed pattern-form questions as a best match based on the determined output score;

determining the jump target based on the identity of the answer definition in which the selected best match pre-processed pattern form question resides.

4. The method of claim 3 wherein determining the similarity between the pre-processed pattern-form questions and the pre-processed user input text includes a first approach comprising determining a starting string similarity between the pre-processed pattern-form questions and pre-processed user input text and producing a starting similarity score.

5. The method claim 4 further including a second approach that is performed when the first starting string similarity approach does not produce a match, as reflected by the starting similarity score, that exceeds a predetermined threshold.

6. The method of claim 5 wherein the second approach comprises determining a Dice Coefficient.

7. The method of claim 3 wherein the pre-processing of the captured user input text includes replacing at least one word identified in the user input text with a predetermined replacement word.

8. The method of claim 7 further comprising providing a configuration file that includes a synonym replacement list that defines replacement words associated with pattern words, wherein pattern words identified in the user input text are replaced during the pre-processing by the corresponding replacement word as defined in the synonym replacement list.

9. The method of claim 3 wherein the pre-processing of the captured user input text includes ignoring at least one word identified in the user input text.

10. The method of claim 9 further comprising providing a configuration file that includes an ignore word list that defines words to be ignored for matching purposes.

11. The method of claim 3 wherein pre-processing of the captured user input text comprises a cleaning operation to remove at least one of (i) trailing punctuation, (ii) whitespace between tokens, and (iii) any parameters.

Assignments (4)
SECURITY INTEREST Recorded Feb 28, 2025
From: LAKESIDE SOFTWARE
To: FIRST-CITIZENS BANK & TRUST COMPANY
Reel/Frame 070363/0243 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND ASSIGNOR'S NAME PREVIOUSLY RECORDED AT REEL: 049873 FRAME: 0691. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Oct 26, 2020
From: WEGRYN, EDWARD S.; BIRK, LAWRENCE J.; DYER, CHRISTOPHER; SCHUMACHER, KENNETH M.
To: LAKESIDE SOFTWARE, INC.
Reel/Frame 054421/0301 →
CERTIFICATE OF CONVERSION Recorded Aug 19, 2020
From: LAKESIDE SOFTWARE, INC.
To: LAKESIDE SOFTWARE, LLC
Reel/Frame 053547/0936 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2019
From: WEGRYN, EDWARD S.; BICK, LAWRENCE J.; DYER, CHRISTOPHER; SCHUMACHER, KENNETH M.
To: LAKESIDE SOFTWARE, INC.
Reel/Frame 049873/0691 →
Continuity (3)
Continuation 15629207 · Jun 21, 2017
Provisional Application 62379708 · Aug 25, 2016
Related Publication 20190286645A1 · Sep 19, 2019