IP Library Granted Patent US 8,843,363
Granted Patent B2
US 8,843,363 · App. 13/738,560 · Granted Sep 23, 2014

System and method for using data and derived features to automatically generate a narrative story

Inventors: Lawrence A. Birnbaum (Evanston, IL); Kristian J. Hammond (Chicago, IL); Nicholas D. Allen (Chicago, IL); John R. Templon (Chicago, IL)
Assignee: Narrative Science Inc.
G06F17/28G06F17/2881
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 8,843,363
App. No.
13/738,560
Granted
Sep 23, 2014
Kind
B2
Abstract

A system and method for automatically generating a narrative story receives data and information pertaining to a domain event. The received data and information and/or one or more derived features are then used to identify a plurality of angles for the narrative story. The plurality of angles is then filtered, for example through use of parameters that specify a focus for the narrative story, length of the narrative story, etc. Points associated with the filtered plurality of angles are then assembled and the narrative story is rendered using the filtered plurality of angles and the assembled points.

Claims (46)

1. A computer program product comprising:

a plurality of instructions that are resident on a non-transitory computer-readable storage medium and executable by a processor to (1) receive domain related data and information, wherein the domain related data and information is representative of at least one member of the group consisting of (i) an actual event, (ii) an actual circumstance, and (iii) an actual entity, (2) determine at least one derived feature from the domain related data and information, the determined at least one derived feature being a characteristic of the at least one member, and (3) determine whether any narrative story about the received domain related data and information is to be rendered based on the determined at least one derived feature.

2. The computer program product of claim 1 , wherein the instructions are further configured to (1) not render any narrative story about the domain related data and information in response to a determination no narrative story is to be rendered, and (2) automatically render a narrative story about the domain related data and information in response to a determination that a narrative story is to be rendered.

3. The computer program product of claim 2 , wherein the domain related data and information comprises structured numeric data about the at least one member.

4. The computer program product of claim 3 , wherein the instructions are further configured to (1) determine the at least one derived feature by computing a value for a feature from the numeric data, (2) compare the computed value with a threshold, and (3) determine whether any narrative story about the received domain related data and information is to be rendered in response to the comparison.

5. The computer program product of claim 3 , wherein the structured numeric data comprises a sports game box score.

6. The computer program product of claim 3 , wherein the structured numeric data comprises stock price information.

7. The computer program product of claim 6 wherein the instructions are further configured to (1) determine the at least one derived feature by computing data indicative of how a stock price has changed over a time period, (2) compare the computed data with a threshold, and (3) determine whether any narrative story about the received domain related data and information is to be rendered in response to the comparison.

8. The computer program product of claim 3 , wherein the instructions are further configured to (1) determine a domain for the received domain related data and information, (2) select a plurality of derived features based at least in part on the determined domain, and (3) compute the selected derived features from the received domain related data and information.

9. The computer program product of claim 8 , wherein the domain related data and information further comprises historical data relating to the at least one member, and wherein the instructions are further configured to compute at least one of the selected derived features based on the structured numeric data and the historical data.

10. The computer program product of claim 1 wherein the instructions are further configured to, in response to a determination that a narrative story about the domain related data and information is to be rendered, (1) determine an angle data structure, from among a plurality of angle data structures, that is applicable to the received domain related data and information based on a plurality of predetermined criteria, each of the plurality of angle data structures comprising a plurality of data representations that connect a plurality of events, circumstances, and/or entities as an abstract model of a thematic nature, and (2) automatically render the narrative story using the determined angle data structure and the received domain related data and information.

11. A method comprising:

receiving domain related data and information, wherein the domain related data and information is representative of at least one member of the group consisting of (i) an actual event, (ii) an actual circumstance, and (iii) an actual entity;

determining at least one derived feature from the domain related data and information, the determined at least one derived feature being a characteristic of the at least one member; and

determining whether any narrative story about the received domain related data and information is to be rendered based on the determined at least one derived feature; and

wherein the method steps are performed by a processor.

12. The method of claim 11 , further comprising:

the processor not rendering any narrative story about the domain related data and information in response to a determination no narrative story is to be rendered; and

the processor automatically rendering a narrative story about the domain related data and information in response to a determination that a narrative story is to be rendered.

13. The method of claim 12 , wherein the domain related data and information comprises structured numeric data about the at least one member.

14. The method of claim 13 , wherein the step of determining the at least one derived feature comprises the processor computing a value for a feature from the numeric data, the method further comprising:

the processor comparing the computed value with a threshold; and

the processor performing the step of determining whether any narrative story about the received domain related data and information is to be rendered in response to the comparing step.

15. The method of claim 13 , wherein the structured numeric data comprises a sports game box score.

16. The method of claim 13 , wherein the structured numeric data comprises stock price information.

17. The method of claim 16 wherein the step of determining the at least one derived feature comprises the processor computing data indicative of how a stock price has changed over a time period, the method further comprising:

the processor comparing the computed data with a threshold; and

the processor performing the step of determining whether any narrative story about the received domain related data and information is to be rendered in response to the comparing step.

18. The method of claim 13 , further comprising:

the processor determining a domain for the received domain related data and information; and

the processor selecting a plurality of derived features based at least in part on the determined domain; and

wherein the step of determining the at least one derived feature comprises the processor computing the selected derived features from the received domain related data and information.

19. The method of claim 18 , wherein the domain related data and information further comprises historical data relating to the at least one member, and wherein the step of determining the at least one derived feature comprises the processor computing at least one of the selected derived features based on the structured numeric data and the historical data.

20. The method of claim 11 further comprising:

the processor, in response to a determination that a narrative story about the domain related data and information is to be rendered, (1) determining an angle data structure, from among a plurality of angle data structures, that is applicable to the received domain related data and information based on a plurality of predetermined criteria, each of the plurality of angle data structures comprising a plurality of data representations that connect a plurality of events, circumstances, and/or entities as an abstract model of a thematic nature, and (2) automatically rendering the narrative story using the determined angle data structure and the received domain related data and information.

21. An apparatus comprising:

a processor configured to (1) receive domain related data and information, wherein the domain related data and information is representative of at least one member of the group consisting of (i) an actual event, (ii) an actual circumstance, and (iii) an actual entity, (2) determine at least one derived feature from the domain related data and information, the determined at least one derived feature being a characteristic of the at least one member, and (3) determine whether any narrative story about the received domain related data and information is to be rendered based on the determined at least one derived feature.

22. The apparatus of claim 21 , wherein the processor is further configured to (1) not render any narrative story about the domain related data and information in response to a determination no narrative story is to be rendered, and (2) automatically render a narrative story about the domain related data and information in response to a determination that a narrative story is to be rendered.

23. The apparatus of claim 22 , wherein the domain related data and information comprises structured numeric data about the at least one member.

24. The apparatus of claim 23 , wherein the processor is further configured to (1) determine the at least one derived feature by computing a value for a feature from the numeric data, (2) compare the computed value with a threshold, and (3) determine whether any narrative story about the received domain related data and information is to be rendered in response to the comparison.

25. The apparatus of claim 23 , wherein the structured numeric data comprises a sports game box score.

26. The apparatus of claim 23 , wherein the structured numeric data comprises stock price information.

27. The apparatus of claim 26 wherein the processor is further configured to (1) determine the at least one derived feature by computing data indicative of how a stock price has changed over a time period, (2) compare the computed data with a threshold, and (3) determine whether any narrative story about the received domain related data and information is to be rendered in response to the comparison.

28. The apparatus of claim 23 , wherein the processor is further configured to (1) determine a domain for the received domain related data and information, (2) select a plurality of derived features based at least in part on the determined domain, and (3) compute the selected derived features from the received domain related data and information.

29. The apparatus of claim 28 , wherein the domain related data and information further comprises historical data relating to the at least one member, and wherein the processor is further configured to compute at least one of the selected derived features based on the structured numeric data and the historical data.

30. The apparatus of claim 21 wherein the processor is further configured to, in response to a determination that a narrative story about the domain related data and information is to be rendered, (1) determine an angle data structure, from among a plurality of angle data structures, that is applicable to the received domain related data and information based on a plurality of predetermined criteria, each of the plurality of angle data structures comprising a plurality of data representations that connect a plurality of events, circumstances, and/or entities as an abstract model of a thematic nature, and (2) automatically render the narrative story using the determined angle data structure and the received domain related data and information.

Assignments (7)
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 Jan 14, 2014
From: NORTHWESTERN UNIVERSITY
To: NARRATIVE SCIENCE INC.
Reel/Frame 031963/0396 →
CONFIRMATORY LICENSE Recorded Jul 31, 2013
From: NORTHWESTERN UNIVERSITY
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 030936/0056 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2013
From: BIRNBAUM, LAWRENCE A.; HAMMOND, KRISTIAN J.; ALLEN, NICHOLAS D.; TEMPLON, JOHN R.
To: NORTHWESTERN UNIVERSITY
Reel/Frame 029606/0554 →
Continuity (2)
Continuation 12779668 · May 13, 2010
Related Publication 20130144606A1 · Jun 6, 2013