IP Library › Granted Patent US 11,809,825
Granted Patent B2
US 11,809,825 · App. 17/235,329 · Granted Nov 7, 2023

Management of a focused information sharing dialogue based on discourse trees

Inventor: Boris Galitsky (San Jose, CA)
Assignee: Oracle International Corporation
G06F40/295G06F16/00G06F16/9014G06F40/211G06F40/253G06F40/289G06F40/35G06N20/00
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,809,825
App. No.
17/235,329
Granted
Nov 7, 2023
Kind
B2
Abstract

Disclosed techniques relate to managing a dialogue between a user device and an autonomous agent. For instance, a computing device creates a discourse tree from a body of text that includes fragments. The discourse tree includes a root node, nonterminal nodes, and terminal nodes. Each nonterminal node represents a rhetorical relationship between two of the fragments and each terminal node is associated with one of the fragments. The computing device determines a main topic of the body of text from the discourse tree. The computing device provides the main topic to the user device, and in response, receives a user utterance. The computing device determines an intent from the user utterance and navigates the discourse tree to locate relevant information consistent with the intent.

Claims (120)

1. A computer-implemented method for navigating text using discourse trees, the method comprising:

creating a discourse tree from text comprising fragments, wherein the discourse tree comprises a root node, nonterminal nodes, and terminal nodes, each nonterminal node representing a rhetorical relationship between two of the fragments, and each terminal node is associated with one of the fragments, wherein the fragments are elementary discourse units;

determining, from the discourse tree, a subset of terminal nodes that are (i) associated with a nonterminal node representing a rhetorical relationship of type elaboration and (ii) associated with a nucleus elementary discourse unit of the elaboration;

calculating, for each node of the subset of terminal nodes, a respective path length from the root node;

identifying, from the subset of terminal nodes, a topic node having a path length that is a smallest path length of the path lengths;

determining, from the topic node, a topic of the discourse tree by extracting a noun phrase from the nucleus elementary discourse unit associated with the topic node;

determining, from an utterance received from a user device, a user intent, wherein determining the user intent comprises:

providing the utterance to a machine-learning model that is trained to classify utterances; and

receiving, from the machine-learning model, an indication that the user intent relates to the topic; and

providing, based on the user intent, text associated with the topic.

2. The method of claim 1 , further comprising:

identifying, in the discourse tree, a satellite elementary discourse unit associated with the topic node via the rhetorical relationship of type elaboration; and

providing text associated with the satellite elementary discourse unit to the user device.

3. The method of claim 1 , further comprising:

identifying, in the discourse tree, an additional terminal node from the subset of terminal nodes, the additional terminal node having an additional path length equal to or greater than the path length;

extracting additional text from an additional nucleus elementary discourse unit associated with the additional terminal node; and

providing the additional text to the user device.

4. The method of claim 1 , further comprising:

navigating, in the discourse tree, to an additional non-terminal node that is connected to the topic node and represents an additional rhetorical relation;

determining, from the additional non-terminal node, an additional topic by extracting an additional noun phrase from an additional nucleus elementary discourse unit associated with additional non-terminal node; and

responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or temporal sequence:

extracting additional text from the additional nucleus elementary discourse unit; and

providing the additional text to the user device.

5. The method of claim 1 , further comprising:

determining that the utterance indicates familiarity with an additional topic;

identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation; and

responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or contrast:

extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional terminal node; and

providing the additional text to the user device.

6. The method of claim 1 , further comprising:

determining that the utterance comprises a confirmation of an interest in an additional topic;

identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;

extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and

providing the additional text to the user device.

7. The method of claim 1 , further comprising:

determining that the utterance comprises a request for additional details related to the topic; and

responsive to the determining:

identifying, in the discourse tree, a parent node directly connected to the topic node;

identifying, in the discourse tree, an additional terminal node that is related to the parent node via a rhetorical relation of type elaboration;

extracting additional text from an elementary discourse unit associated with the additional terminal node; and

providing the additional text to the user device.

8. The method of claim 1 , further comprising:

determining that the utterance comprises a question that is unrelated to the topic; and

responsive to the determining:

identifying one or more keywords from the utterance;

identifying an additional text by providing a query comprising the keywords to a search engine; and

providing text from one or more elementary discourse units of the additional text to the user device.

9. The method of claim 1 , further comprising:

forming, from the discourse tree, a communicative discourse tree that represents the text by matching each fragment that has a verb to a respective verb signature;

identifying, from the communicative discourse tree, a verb signature that corresponds to the topic node;

extracting a subject from the verb signature; and

providing the subject to the user device.

10. A system comprising:

a non-transitory computer-readable medium storing computer-executable program instructions; and

a processing device communicatively coupled to the non-transitory computer-readable medium for executing the computer-executable program instructions, wherein executing the computer-executable program instructions configures the processing device to perform operations comprising:

creating a discourse tree from text comprising fragments, wherein the discourse tree comprises a root node, nonterminal nodes, and terminal nodes, each nonterminal node representing a rhetorical relationship between two of the fragments, and each terminal node is associated with one of the fragments, wherein the fragments are elementary discourse units;

determining, from the discourse tree, a subset of terminal nodes that are (i) associated with a nonterminal node representing a rhetorical relationship of type elaboration and (ii) associated with a nucleus elementary discourse unit of the elaboration;

calculating, for each node of the subset of terminal nodes, a respective path length from the root node;

identifying, from the subset of terminal nodes, a topic node having a path length that is a smallest path length of the path lengths;

determining, from the topic node, a topic of the discourse tree by extracting a noun phrase from the nucleus elementary discourse unit associated with the topic node;

determining, from an utterance received from a user device, a user intent, wherein determining the user intent comprises:

providing the utterance to a machine-learning model that is trained to classify utterances; and

receiving, from the machine-learning model, an indication that the user intent relates to the topic; and

providing, based on the user intent and to the user device, text associated with the topic.

11. The system of claim 10 , wherein the operations further comprise:

identifying, in the discourse tree, a satellite elementary discourse unit associated with the topic node via the rhetorical relationship of type elaboration; and

providing text associated with the satellite elementary discourse unit to the user device.

12. The system of claim 10 , wherein the operations further comprise:

identifying, in the discourse tree, an additional terminal node from the subset of terminal nodes, the additional terminal node having an additional path length equal to or greater than the path length;

extracting additional text from an additional nucleus elementary discourse unit associated with the additional terminal node; and

providing the additional text to the user device.

13. The system of claim 10 , wherein the operations further comprise:

navigating, in the discourse tree, to an additional non-terminal node that is connected to the topic node and represents an additional rhetorical relation;

determining, from the additional non-terminal node, an additional topic by extracting an additional noun phrase from a nucleus elementary discourse unit associated with additional non-terminal node; and

responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or temporal sequence:

extracting additional text from the additional nucleus elementary discourse unit; and

providing the additional text to the user device.

14. The system of claim 10 , wherein the operations further comprise:

determining that the utterance indicates familiarity with an additional topic;

identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation; and

responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or contrast:

extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and

providing the additional text to the user device.

15. The system of claim 10 , wherein the operations further comprise:

determining that the utterance comprises a confirmation of an interest in an additional topic;

identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;

extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and

providing the additional text to the user device.

16. The system of claim 10 , wherein the operations further comprise:

forming, from the discourse tree, a communicative discourse tree that represents the text by matching each fragment that has a verb to a respective verb signature;

identifying, from the communicative discourse tree, a verb signature that corresponds to the topic node;

extracting a subject from the verb signature; and

providing the subject to the user device.

17. A non-transitory computer-readable medium storing computer-executable program instructions that when executed by a processor, perform operations comprising:

creating a discourse tree from text comprising fragments, wherein the discourse tree comprises a root node, nonterminal nodes, and terminal nodes, each nonterminal node representing a rhetorical relationship between two of the fragments, and each terminal node is associated with one of the fragments, wherein the fragments are elementary discourse units;

determining, from the discourse tree, a subset of terminal nodes that are (i) associated with a nonterminal node representing a rhetorical relationship of type elaboration and (ii) associated with a nucleus elementary discourse unit of the elaboration;

calculating, for each node of the subset of terminal nodes, a respective path length from the root node;

identifying, from the subset of terminal nodes, a topic node having a path length that is a smallest path length of the path lengths;

determining, from the topic node, a topic of the discourse tree by extracting a noun phrase from the nucleus elementary discourse unit associated with the topic node;

determining, from an utterance received from a user device, a user intent, wherein determining the user intent comprises:

providing the utterance to a machine-learning model that is trained to classify utterances; and

receiving, from the machine-learning model, an indication that the user intent relates to the topic; and

providing, based on the user intent and to the user device, text associated with the topic.

18. The non-transitory computer-readable medium of claim 17 , wherein the operations further comprise:

navigating, in the discourse tree, to an additional non-terminal node that is connected to the topic node and represents an additional rhetorical relation;

determining, from the additional non-terminal node, an additional topic by extracting an additional noun phrase from a nucleus elementary discourse unit associated with additional non-terminal node; and

responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or temporal sequence:

extracting additional text from the additional nucleus elementary discourse unit; and

providing the additional text to the user device.

19. The non-transitory computer-readable medium of claim 17 , wherein the operations further comprise:

determining that the utterance indicates familiarity with an additional topic;

identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;

responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or contrast:

extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and

providing the additional text to the user device.

20. The non-transitory computer-readable medium of claim 17 , wherein the operations further comprise:

determining that the utterance comprises a confirmation of an interest in an additional topic:

identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation:

extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node: and

providing the additional text to the user device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2021
From: GALITSKY, BORIS
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 055977/0873 →
Continuity (13)
Continuation In Part 16995302 · Aug 17, 2020
Division 16145644 · Sep 28, 2018
Division 17235329 · Apr 20, 2021
Continuation 17003593 · Aug 26, 2020
Continuation 16260939 · Jan 29, 2019
Continuation In Part 16010091 · Jun 15, 2018
Continuation In Part 15975683 · May 9, 2018
Provisional Application 62729335 · Sep 10, 2018
Provisional Application 62564961 · Sep 28, 2017
Provisional Application 63032895 · Jun 1, 2020
Provisional Application 62623999 · Jan 30, 2018
Provisional Application 62646795 · Mar 22, 2018
Related Publication 20210240935A1 · Aug 5, 2021
Cited By (1)
US 12,530,531