Automated generation and presentation of lessons via digital media content extraction
AssigneeWeSpeke, Inc.
InventorsMichael E. Elchik, Dafyd Jones, Robert J. Pawlowski, JR., Jaime G. Carbonell, Jeremy Hesidenz, Sean Hile, Cathy Wilson
Life of this patent
Estimating the term…
Abstract
An automated lesson generation learning system extracts text-based content from a digital programming file. The system parses the extracted content to identify a sentence, and key words within the sentences, to use as prompts in the lesson. The system also automatically generates a clip from the digital programming file, so that the clip is the portion of the file in which the sentence is spoken. The system then automatically generates and outputs a lesson containing the prompt and the clip.
Claims28
A system for automatically generating lessons based on content of a digital programming file, comprising:
- a content analysis engine comprising programming instructions that are configured to cause a processor to:
- analyze a set of text corresponding to words spoken in a digital programming file wherein the set of text comprises a transcript that includes a plurality of text segments and a plurality of timestamps each corresponding to one of the text segments,
- extract a sentence from the set of text by:
- extracting a sequential group of the text segments from the set of text,
- parsing the group of text segments to identify the sentence within the group, and
- using the timestamps of each text segment that is at least partially included within the sentence to determine a start time and a duration for the sentence by:
- (i) identifying a first text segment that is at least partially included in the sentence,
- (ii) determining a number of syllables of the first text segment that are in the sentence and a total number of syllables in the first text segment,
- (iii) determining a ratio of the number of syllables in the first text segment that are in the sentence and the total number of syllables in the first text segment,
- (iv) multiplying the ratio by a duration of the first text segment to yield a segment duration for the first text segment,
- (v) repeating steps (i)-(iv) for each text segment that is at least partially included in the sentence, and
- (vi) summing the segment durations for each text segment that is at least partially included in the sentence to yield the duration for the sentence
- generate a digital media clip that corresponds to the sentence, wherein the digital media clip has a start time in the digital programming file that corresponds to the start time of the sentence;
- and
- a lesson generation engine comprising programming instructions that are configured to cause a processor to generate a lesson comprising an exercise that includes:
- a prompt that uses one or more key words that are extracted from the sentence, and
- the digital media clip.
-4. (canceled)
A method of automatically generating lessons based on content of a digital programming file, the method comprising:
- by a content analysis engine processor, executing programming instructions that cause the content analysis engine processor to:
- analyze a set of text ,corresponding to words spoken in a digital programming file, wherein the set of text comprises a transcript that includes a plurality of text segments and a plurality of timestamps each corresponding to one of the text segments
- extract a sentence from the set of text by:
- extracting a sequential group of the text segments from the set of text,
- parsing the group of text segments to identify the sentence within the group, and
- using the timestamps of each text segment that is at least partially included within the sentence to determine a start time and a duration for the sentence by:
- (i) identifying a first text segment that is at least partially included in the sentence,
- (ii) determining a number of syllables of the first text segment that are in the sentence and a total number of syllables in the first text segment,
- (iii) determining a ratio of the number of syllables in the first text segment that are in the sentence and the total number of syllables in the first text segment,
- (iv) multiplying the ratio by a duration of the first text segment to yield a segment duration for the first text segment,
- (v) repeating steps (i)-(iv) for each text segment that is at least partially included in the sentence, and
- (vi) summing the segment durations for each text segment that is at least partially included in the sentence to yield the duration for the sentence
- generate a digital media clip that corresponds to the sentence, wherein the digital media clip has a start time in the digital programming file that corresponds to the start time of the sentence;
- and
- by a lesson generation engine processor, executing programming instructions that cause the lesson generation engine processor to generate a lesson comprising an exercise that includes:
- a prompt that uses one or more key words that are extracted from the sentence, and
- the digital media clip.
-14. (canceled)
A system for automatically generating lessons based on content of a digital programming file, comprising:
- a content analysis engine comprising programming instructions that are configured to cause a processor to:
- analyze a set of text corresponding to words spoken in a digital programming file, wherein the set of text comprises a transcript that includes a plurality of text segments and a plurality of timestamps each corresponding to one of the text segments,
- extract a sentence from the set of text by:
- extracting a sequential group of the text segments from the set of text,
- parsing the group of text segments to identify the sentence within the group, and
- using the timestamps of each text segment that is at least partially included within the sentence to determine a start time and a duration for the sentence by:
- identifying a first text segment that is at least partially included in the sentence,
- if the sentence starts at the beginning of the first text segment, using a start time from the timestamp of the first text segment as the start time for the sentence, and
- if the sentence does not start at the beginning of the first text segment:
- determining a number of syllables of the first text segment that are in the sentence and a total number of syllables in the first text segment,
- determining a ratio of the number of syllables in the first text segment that are in the sentence and the total number of syllables in the first text segment,
- multiplying the ratio by a duration of the first text segment to yield a segment duration for the first text segment, and
- calculating the start time of the sentence as a sum of the start time from the timestamp of the first text segment plus the segment duration for the first text segment, and
- generate a digital media clip that corresponds to the sentence, wherein the digital media clip has a start time in the digital programming file that corresponds to the start time of the sentence;
- and
- a lesson generation engine comprising programming instructions that are configured to cause a processor to generate a lesson comprising an exercise that includes:
- a prompt that uses one or more key words that are extracted from the sentence, and
- the digital media clip.
A method of automatically generating lessons based on content of a digital programming file, the method comprising:
- by a content analysis engine processor, executing programming instructions that cause the content analysis engine processor to:
- analyze a set of text corresponding to words spoken in a digital programming file, wherein the set of text comprises a transcript that includes a plurality of text segments and a plurality of timestamps each corresponding to one of the text segments,
- extract a sentence from the set of text by:
- extracting a sequential group of the text segments from the set of text,
- parsing the group of text segments to identify the sentence within the group, and
- using the timestamps of each text segment that is at least partially included within the sentence to determine a start time and a duration for the sentence by:
- identifying a first text segment that is at least partially included in the sentence,
- if the sentence starts at the beginning of the first text segment, using a start time from the timestamp of the first text segment as the start time for the sentence, and
- if the sentence does not start at the beginning of the first text segment:
- determining a number of syllables of the first text segment that are in the sentence and a total number of syllables in the first text segment,
- determining a ratio of the number of syllables in the first text segment that are in the sentence and the total number of syllables in the first text segment,
- multiplying the ratio by a duration of the first text segment to yield a segment duration for the first text segment, and
- calculating the start time of the sentence as a sum of the start time from the timestamp of the first text segment plus the segment duration for the first text segment, and
- generate a digital media clip that corresponds to the sentence, wherein the digital media clip has a start time in the digital programming file that corresponds to the start time of the sentence;
- and
- by a lesson generation engine processor, executing programming instructions that cause the lesson generation engine processor to generate a lesson comprising an exercise that includes:
- a prompt that uses one or more key words that are extracted from the sentence, and
- the digital media clip.
Dependencies are inferred from the claim text.