IP Library Granted Patent US 10,585,983
Granted Patent B1
US 10,585,983 · App. 15/897,350 · Granted Mar 10, 2020

Applied artificial intelligence technology for determining and mapping data requirements for narrative stories to support natural language generation (NLG) using composable communication goals

Inventors: Andrew R. Paley (Chicago, IL); Nathan Drew Nichols (Chicago, IL); Matthew Lloyd Trahan (Chicago, IL); Maia Jane Lewis Meza (Chicago, IL); Lawrence A. Birnbaum (Evanston, IL); Kristian J. Hammond (Chicago, IL)
Assignee: NARRATIVE SCIENCE INC.
G06F17/27G06F17/243G06N5/02G06F17/212
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,585,983
App. No.
15/897,350
Granted
Mar 10, 2020
Kind
B1
Abstract

Artificial intelligence (AI) technology can be used in combination with composable communication goal statements and an ontology to facilitate a user's ability to quickly structure story outlines in a manner usable by an NLG narrative generation system without any need for the user to directly author computer code. This AI technology permits NLG systems to determine the appropriate content for inclusion in a narrative story about a data set in a manner that will satisfy a desired communication goal.

Claims (55)

1. A method for artificial intelligence-based natural language generation (NLG) that generates a narrative story without requiring a user to directly author program code for generating the narrative story, the method comprising:

a processor processing a story configuration for use in generating a narrative story about structured source data, the structured source data comprising a plurality of data values associated with a plurality of source data parameters, the story configuration comprising a communication goal statement, the communication goal statement comprising at least one communication goal statement parameter that is linked with an ontological object of an ontology, the ontology comprising a plurality of ontological objects that define a knowledge base for narrative story generation;

in response to the processing, the processor determining a set of narrative analytics based on the communication goal statement, the determined set of narrative analytics to be applied to the structured source data in order to perform analysis on the structured source data to determine informational content for inclusion in the narrative story, the determined set of narrative analytics comprising a plurality of narrative analytics parameters for controlling the analysis;

the processor determining a plurality of data requirements for generating the narrative story based on the narrative analytics parameters, the communication goal statement, and the ontology;

the processor mapping a plurality of the source data parameters to the determined data requirements;

the processor executing the determined set of narrative analytics based on the data values of the structured source data that correspond to the mapped source data parameters to determine informational content for inclusion in the narrative story; and

the processor performing NLG on the determined informational content with reference to the ontology to generate the narrative story.

2. The method of claim 1 wherein the communication goal statement further comprises an operator; and

wherein the step of determining the set of narrative analytics comprises the processor mapping the communication goal statement to the determined set of narrative analytics based on the operator.

3. The method of claim 2 wherein the communication goal statement mapping step further comprises the processor mapping the communication goal statement to the determined set of narrative analytics based on the operator and the at least one communication goal statement parameter.

4. The method of claim 2 further comprising:

linking a plurality of the narrative analytics parameters to a plurality of the ontological objects; and

wherein the step of determining the data requirements comprises the processor determining a plurality of the data requirements for the narrative story in terms of the ontological objects linked to the narrative analytics parameters.

5. The method of claim 4 wherein source data parameters mapping step comprises the processor mapping a plurality of the source data parameters to the determined data requirements in response to user input.

6. The method of claim 5 further comprising:

the processor providing a plurality of prompts for presentation to a user through a graphical user interface, the prompts configured to request user input for mapping the determined data requirements to a plurality of source data parameters.

7. The method of claim 6 wherein the prompts are expressed in terms of a plurality of ontological objects from the ontology that correspond to the determined data requirements.

8. The method of claim 7 wherein the ontological objects comprise (1) a plurality of entity types, and (2) a plurality of attributes for a plurality of the entity types.

9. The method of claim 8 wherein the ontological objects further comprise at least one characterization for at least one of the entity types.

10. The method of claim 8 wherein the ontological objects further comprise at least one relationship between at least two of the entity types.

11. The method of claim 8 wherein each of a plurality of the ontological objects are associated with an expression for that ontological object, the expressions for use in the prompts to refer to the determined data requirements.

12. The method of claim 1 wherein the ontological objects comprise (1) a plurality of entity types, and (2) a plurality of attributes for a plurality of the entity types.

13. The method of claim 12 wherein at least one of the attributes comprises a computed value attribute, the computed value attribute comprising at least one computed value attribute parameter for use in calculating the computed value attribute; and

wherein the determined data requirements include the at least one computed value attribute parameter.

14. The method of claim 12 wherein the ontological objects further comprise at least one characterization for at least one of the entity types.

15. The method of claim 12 wherein the ontological objects further comprise at least one relationship between at least two of the entity types.

16. The method of claim 1 wherein the story configuration comprises a plurality of the communication goal statements; and

wherein the step of determining the narrative analytics set comprises the processor determining the set of narrative analytics based on the communication goal statements.

17. The method of claim 1 further comprising:

the processor composing the story configuration in response to user input.

18. The method of claim 1 wherein the processor comprises a plurality of processors.

19. The method of claim 1 wherein the processor comprises a single processor.

20. An artificial intelligence (AI) natural language generation (NLG) computer system that generates a narrative story without requiring a user to directly author program code for generating the narrative story, the system comprising:

a memory configured to store an ontology and a plurality of narrative analytics, the ontology comprising a plurality of ontological objects that define a knowledge base for narrative story generation, the narrative analytics configured to perform analysis on data to determine informational content for inclusion in a narrative story; and

a processor for cooperation with the memory, the processor configured to:

process a story configuration for use in generating a narrative story about structured source data, the structured source data comprising a plurality of data values associated with a plurality of source data parameters, the story configuration comprising a communication goal statement, the communication goal statement comprising at least one communication goal statement parameter that is linked with an ontological object of the ontology;

determine a set of the narrative analytics for the processed story configuration based on the communication goal statement, the determined set of narrative analytics to be applied to the structured source data in order to perform analysis on the structured source data to determine informational content for inclusion in the narrative story, the determined set of narrative analytics comprising a plurality of narrative analytics parameters for controlling the analysis corresponding to the determined narrative analytics set;

determine a plurality of data requirements for generating the narrative story based on the narrative analytics parameters, the communication goal statement, and the ontology;

map a plurality of the source data parameters to the determined data requirements;

execute the determined set of narrative analytics based on the data values of the structured source data that correspond to the mapped source data parameters to determine informational content for inclusion in the narrative story; and

perform NLG on the determined informational content with reference to the ontology to generate the narrative story.

21. A non-transitory computer-readable storage medium having stored thereon a computer program product for an artificial intelligence (AI) natural language generation (NLG) computer system that generates a narrative story without requiring a user to directly author program code for generating the narrative story, the non-transitory computer-readable storage medium comprising:

a plurality of instructions resident on the non-transitory computer-readable storage medium, wherein the instructions are executable by a processor to a cause a processor to:

process a story configuration for use in generating a narrative story about structured source data, the structured source data comprising a plurality of data values associated with a plurality of source data parameters, the story configuration comprising a communication goal statement, the communication goal statement comprising at least one communication goal statement parameter that is linked with an ontological object of an ontology, the ontology comprising a plurality of ontological objects that define a knowledge base for narrative story generation;

determine a set of narrative analytics for the processed story configuration based on the communication goal statement, the determined set of narrative analytics to be applied to the structured source data in order to perform analysis on the structured source data to determine informational content for inclusion in the narrative story, the determined set of narrative analytics comprising a plurality of narrative analytics parameters for controlling the analysis;

determine a plurality of data requirements for generating the narrative story based on the narrative analytics parameters, the communication goal statement, and the ontology;

map a plurality of the source data parameters to the determined data requirements;

execute the determined set of narrative analytics based on the data values of the structured source data that correspond to the mapped source data parameters to determine informational content for inclusion in the narrative story; and

perform NLG on the determined informational content with reference to the ontology to generate the narrative story.

22. The method of claim 17 wherein the determined set of narrative analytics comprises a subset of a larger set of narrative analytics;

wherein the communication goal statement further comprises an operator from among a plurality of operators, each of a plurality of the operators having an association with a different narrative analytics subset of the larger set of narrative analytics; and

wherein the step of determining the set of narrative analytics comprises the processor selecting the determined set of narrative analytics from among the larger set of narrative analytics based on which narrative analytics subset is associated with the operator of the communication goal statement.

23. The method of claim 22 wherein the composing step comprises the processor composing the story configuration in response to user input so that the communication goal statement comprises natural language text, the natural language text comprising a first text string that represents the operator and a second text string that represents the at least one communication goal statement parameter.

24. The method of claim 23 wherein the composing step comprises the processor composing the communication goal statement in response to input received from a user through a graphical user interface (GUI).

25. The method of claim 24 wherein the input received from the user through the GUI comprises natural language input.

Assignments (5)
CHANGE OF NAME Recorded Mar 25, 2024
From: NARRATIVE SCIENCE INC.
To: NARRATIVE SCIENCE LLC
Reel/Frame 066884/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2024
From: NARRATIVE SCIENCE LLC
To: SALESFORCE, INC.
Reel/Frame 067218/0449 →
RELEASE OF SECURITY INTEREST Recorded Mar 1, 2022
From: CIBC BANK USA
To: NARRATIVE SCIENCE INC
Reel/Frame 059640/0008 →
SECURITY INTEREST Recorded Aug 30, 2019
From: NARRATIVE SCIENCE INC.
To: CIBC BANK USA
Reel/Frame 050237/0365 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2018
From: PALEY, ANDREW R.; NICHOLS, NATHAN DREW; TRAHAN, MATTHEW LLOYD; LEWIS MEZA, MAIA JANE; BIRNBAUM, LAWRENCE A.; HAMMOND, KRISTIAN J.
To: NARRATIVE SCIENCE INC.
Reel/Frame 045881/0060 →
Continuity (1)
Provisional Application 62460349 · Feb 17, 2017
Cited By (12)
US 12,248,461 US 12,288,039 US 12,314,674 US 12,423,525 US 12,443,856 US 12,462,114 US 12,468,694 US 12,505,093 US 12,608,416 US 12,614,042 US 12,632,445 US 12,681,997