IP Library Granted Patent US 11,120,344
Granted Patent B2
US 11,120,344 · App. 15/663,725 · Granted Sep 14, 2021

Suggesting follow-up queries based on a follow-up recommendation machine learning model

Inventors: Dipock Das (San Carlos, CA); Dayanand Pochugari (Santa Clara, CA); Neeraj Verma (Fremont, CA); Nikesh Padakanti (Fremont, CA); Aungon Nag Radon (Vancouver, CA); Anand Srinivasabagavathar (Fremont, CA); Adam Oliner (San Francisco, CA)
Assignee: SPLUNK INC.
G06N5/04G06F16/24522G06N3/08G06N5/022G06N5/046G06N20/00G06N20/10
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,120,344
App. No.
15/663,725
Filed
Jul 29, 2017
Granted
Sep 14, 2021
Kind
B2
Art Unit
2121
USPC
706/11
Abstract

In various embodiments, a natural language (NL) application implements functionality that enables users to more effectively access various data storage systems based on NL requests. As described, the operations of the NL application are guided by, at least in part, on one or more templates and/or machine-learning models. Advantageously, the templates and/or machine-learning models provide a flexible framework that may be readily tailored to reduce the amount of time and user effort associated with processing NL requests and to increase the overall accuracy of NL application implementations.

Claims (56)

1. A computer-implemented method, comprising:

generating a first follow-up recommendation based on a first natural language (NL) request from a first user, a first context associated with the first NL request, and a first recommendation model that associates the first NL request and the first context with the first follow-up recommendation, wherein the first recommendation model is generated via a machine learning algorithm;

causing data produced in conjunction with one or more user responses to the first follow-up recommendation to be provided to the machine learning algorithm for updating the first recommendation model to generate a second recommendation model;

generating a second follow-up recommendation based on a second NL request from a second user, a second context associated with the second NL request and the second recommendation model which associates the second NL request and the second context with the second follow-up recommendation, wherein the second recommendation model is generated via the machine learning algorithm based on the data produced in conjunction with the one or more user responses to the first follow-up recommendation;

generating a third NL request from one or more user responses to the second follow-up recommendation;

generating a follow-up query based on the third NL request, wherein the follow-up query is written in a domain-specific language (DSL) associated with a data storage system; and

causing the follow-up query to be applied to the data storage system.

2. The computer-implemented method of claim 1 , wherein the third NL request is further generated from the second NL request and the second follow-up recommendation.

3. The computer-implemented method of claim 1 , wherein the first context includes at least one of a time associated with the first NL request, a device with which a user specified the first NL request, a job function of the user, a location of the user, a time of day, a user situation, a user context, and a user preference.

4. The computer-implemented method of claim 1 , wherein the first follow-up recommendation includes a plurality of follow-up queries that are ordered based on estimated user interest levels.

5. The computer-implemented method of claim 1 , further comprising causing the first follow-up recommendation to be provided to a user, wherein causing the first follow-up recommendation to be provided to the user comprises generating an inquiry based on the first follow-up recommendation, and at least one of causing an audio device to output the inquiry and causing a display device to display the inquiry.

6. The computer-implemented method of claim 1 , wherein the data storage system stores data as a plurality of time-indexed events including respective segments of raw machine data and is included in a plurality of data storage systems.

7. The computer-implemented method of claim 1 , wherein the one or more user responses to the first follow-up recommendation indicate an interest level associated with the follow-up recommendation.

8. The computer-implemented method of claim 1 , wherein the one or more user responses to the first follow-up recommendation comprise audible responses.

9. The computer-implemented method of claim 1 , further comprising:

generating a different follow-up query based on the third NL request, wherein the different follow-up query is written in a different DSL associated with a different data storage system; and

causing the different follow-up query to be applied to the different data storage system.

10. The computer-implemented method of claim 1 , wherein the machine learning algorithm includes at least one of a multidimensional scaling operation and a support vector machine training operation.

11. A non-transitory computer-readable storage medium including instructions that, when executed by a processor, cause the processor to perform the steps of:

generating a first follow-up recommendation based on a first natural language (NL) request from a first user, a first context associated with the first NL request, and a first recommendation model that associates the first NL request and the first context with the first follow-up recommendation, wherein the first recommendation model is generated via a machine learning algorithm;

causing data produced in conjunction with one or more user responses to the first follow-up recommendation to be provided to the machine learning algorithm for updating the first recommendation model to generate a second recommendation model;

generating a second follow-up recommendation based on a second NL request from a second user, a second context associated with the second NL request and the second recommendation model which associates the second NL request and the second context with the second follow-up recommendation, wherein the second recommendation model is generated via the machine learning algorithm based on the data produced in conjunction with the one or more user responses to the first follow-up recommendation;

generating a third NL request from one or more user responses to the second follow-up recommendation;

generating a follow-up query based on the third NL request, wherein the follow-up query is written in a domain-specific language (DSL) associated with a data storage system; and

causing the follow-up query to be applied to the data storage system.

12. The non-transitory computer-readable storage medium of claim 11 , wherein the third NL request is further generated from the second NL request and the second follow-up recommendation.

13. The non-transitory computer-readable storage medium of claim 11 , wherein the first context includes at least one of a time associated with the first NL request, a device with which a user specified the first NL request, a job function of the user, a location of the user, a time of day, a user situation, a user context, and a user preference.

14. The non-transitory computer-readable storage medium of claim 11 , wherein the first follow-up recommendation includes a plurality of follow-up queries that are ordered based on estimated user interest levels.

15. The non-transitory computer-readable storage medium of claim 11 , wherein the instructions, when executed by a processor, further cause the processor to perform the steps of causing the first follow-up recommendation to be provided to a user, wherein causing the first follow-up recommendation to be provided to the user comprises generating an inquiry based on the first follow-up recommendation, and at least one of causing an audio device to output the inquiry and causing a display device to display the inquiry.

16. The non-transitory computer-readable storage medium of claim 11 , wherein the data storage system stores data as a plurality of time-indexed events including respective segments of raw machine data and is included in a plurality of data storage systems.

17. The non-transitory computer-readable storage medium of claim 11 , wherein the one or more user responses to the first follow-up recommendation indicate an interest level associated with the follow-up recommendation.

18. The non-transitory computer-readable storage medium of claim 11 , wherein the one or more user responses to the first follow-up recommendation comprise audible responses.

19. The non-transitory computer-readable storage medium of claim 11 , wherein the instructions when executed by a processor, further cause the processor to perform the steps of:

generating a different follow-up query based on the third NL request, wherein the different follow-up query is written in a different DSL associated with a different data storage system; and

causing the different follow-up query to be applied to the different data storage system.

20. The non-transitory computer-readable storage medium of claim 11 , wherein the machine learning algorithm includes at least one of a multidimensional scaling operation and a support vector machine training operation.

21. A computing device, comprising:

a memory that includes instructions; and

a processor that is coupled to the memory and, when executing the instructions, is configured to:

generate a first follow-up recommendation based on a first natural language (NL) request from a first user, a first context associated with the first NL request, and a first recommendation model that associates the first NL request and the first context with the first follow-up recommendation, wherein the first recommendation model is generated via a machine learning algorithm;

cause data produced in conjunction with one or more user responses to the first follow-up recommendation to be provided to the machine learning algorithm for updating the first recommendation model to generate a second recommendation model;

generate a second follow-up recommendation based on a second NL request from a second user, a second context associated with the second NL request and the second recommendation model which associates the second NL request and the second context with the second follow-up recommendation, wherein the second recommendation model is generated via the machine learning algorithm based on the data produced in conjunction with the one or more user responses to the first follow-up recommendation;

generating a third NL request from one or more user responses to the second follow-up recommendation;

generate a follow-up query based on the third NL request, wherein the follow-up query is written in a domain-specific language (DSL) associated with a data storage system; and

cause the follow-up query to be applied to the data storage system.

22. The computing device of claim 21 , wherein the third NL request is further generated from the second NL request and the second follow-up recommendation.

23. The computing device of claim 21 , wherein the first context includes at least one of a time associated with the first NL request, a device with which a user specified the first NL request, a job function of the user, a location of the user, a time of day, a user situation, a user context, and a user preference.

24. The computing device of claim 21 , wherein the first follow-up recommendation includes a plurality of follow-up queries that are ordered based on estimated user interest levels.

25. The computing device of claim 21 , wherein the processor is further configured to cause the first follow-up recommendation to be provided to the user by generating an inquiry based on the first follow-up recommendation, and at least one of causing an audio device to output the inquiry and causing a display device to display the inquiry.

26. The computing device of claim 21 , wherein the data storage system stores data as a plurality of time-indexed events including respective segments of raw machine data and is included in a plurality of data storage systems.

27. The computing device of claim 21 , wherein the one or more user responses to the first follow-up recommendation indicate an interest level associated with the follow-up recommendation.

28. The computing device of claim 21 , wherein the one or more user responses to the first follow-up recommendation comprise audible responses.

29. The computing device of claim 21 , wherein the processor is further configured to:

generate a different follow-up query based on the third NL request, wherein the different follow-up query is written in a different DSL associated with a different data storage system; and

cause the different follow-up query to be applied to the different data storage system.

30. The computing device of claim 21 , wherein the machine learning algorithm includes at least one of a multidimensional scaling operation and a support vector machine training operation.

Assignments (3)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2017
From: DAS, DIPOCK; POCHUGARI, DAYANAND; VERMA, NEERAJ; PADAKANTI, NIKESH; RADON, AUNGON NAG; SRINIVASABAGAVATHAR, ANAND; OLINER, ADAM
To: SPLUNK INC.
Reel/Frame 043383/0583 →
Continuity (1)
Related Publication 20190034813A1 · Jan 31, 2019
Cited By (7)
US 12,259,869 US 12,287,812 US 12,405,958 US 12,481,679 US 12,511,282 US 12,517,891 US 12,717,822