IP Library Granted Patent US 9,292,262
Granted Patent B2
US 9,292,262 · App. 14/509,844 · Granted Mar 22, 2016

Dynamically evolving cognitive architecture system based on contributions from third-party developers

Inventors: Mark Gabel (San Jose, CA); Christopher Brigham (San Jose, CA); Adam Cheyer (San Jose, CA); Joshua Levy (San Jose, CA)
Assignee: VIV LABS, INC.
G06F8/30G06F17/241G06F17/27G06Q30/02G06Q30/0631
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 9,292,262
App. No.
14/509,844
Filed
Oct 8, 2014
Granted
Mar 22, 2016
Kind
B2
Art Unit
2193
USPC
717/106
Abstract

A dynamically evolving cognitive architecture system based on contributions from third-party developers is described. A system receives a span of natural language annotated with an object from a first third-party developer. The system forms an intent based on a user input, which includes a natural language span which corresponds to an action object, a first concept object, and/or a second concept object. The action object, the first concept object, and/or the second concept object is provided by a second third-party developer. The annotating object is the action object, the first concept object, or the second concept object. Forming the intent enables executing the action object to transform the first concept object into the second concept object based on the annotated span of natural language, and also enables outputting a value associated with the second concept object associated with a goal of the intent.

Claims (28)

1. A system for a dynamically evolving cognitive architecture based on contributions from third party developers, the system comprising:

one or more processors; and

a non-transitory computer readable medium storing a plurality of instructions, which when executed, cause the one or more processors to:

receive a span of natural language annotated with an object from a first third-party developer; and

form an intent based on a user input, wherein the user input comprises a natural language span which corresponds to at least one of an action object, a first concept object, and a second concept object, wherein at least one of the action object, the first concept object, and the second concept object is provided by a second third-party developer, wherein the annotating object comprises one of the action object, the first concept object, and the second concept object, wherein forming the intent enables executing the action object to transform the first concept object into the second concept object based on the annotated span of natural language and outputting a value associated with the second concept object associated with a goal of the intent.

2. The system of claim 1 , wherein receiving the span of natural language annotated with the object comprises receiving another span of natural language annotated with another object, wherein the other annotating object comprises a different one of the action object, the first concept object, and the second concept object, and wherein enabling execution of the action object transforms the first concept object into the second concept object based further on the other annotated span of natural language.

3. The system of claim 1 , wherein the plurality of instructions, when executed, will further cause the one or more processors to output a comparison based on a confidence score associated with the span of natural language annotated by the annotating object and a confidence score associated with the span of natural language without annotation by the annotating object, wherein the comparison indicates an amount of training completion relative to the span of natural language annotated with the object from the first third-party developer.

4. The system of claim 1 , wherein the plurality of instructions, when executed, will further cause the one or more processors to match a first object with a first span of natural language from the user input and a second object with a second span of natural language from the user input, wherein the first object comprises one of the first action object, the first concept object, and the third concept object, and wherein the second object comprises another one of the first action object, the first concept object, and the third concept object.

5. The system of claim 1 , wherein the plurality of instructions, when executed, will further cause the one or more processors to provide compensation to at least one of the first third-party developer based on the annotating object and the second third-party developer based on at least one of the action object, the first concept object, and the second concept object provided by the second third-party developer.

6. The system of claim 5 , wherein the compensation increases a likelihood of further use of at least one of the annotating object provided by the first third-party developer and at least one of the action object, the first concept object, and the second concept object provided by the second third-party developer.

7. The system of claim 5 , wherein the compensation is based on a comparison based on a confidence score associated with the span of natural language annotated by the annotating object and a confidence score associated with the span of natural language without annotation by the annotating object, wherein the comparison indicates an amount of training completion relative to the span of natural language annotated with the object from the first third-party developer.

8. A computer-implemented method for a dynamically evolving cognitive architecture system based on contributions from third-party developers, the method comprising:

receiving a span of natural language annotated with an object from a first third-party developer; and

forming an intent based on a user input, wherein the user input comprises a natural language span which corresponds to at least one of an action object, a first concept object, and a second concept object, wherein at least one of the action object, the first concept object, and the second concept object is provided by a second third-party developer, wherein the annotating object comprises one of the action object, the first concept object, and the second concept object, wherein forming the intent enables executing the action object to transform the first concept object into the second concept object based on the annotated span of natural language and outputting a value associated with the second concept object associated with a goal of the intent.

9. The computer-implemented method of claim 8 , wherein receiving the span of natural language annotated with the object comprises receiving another span of natural language annotated with another object, wherein the other annotating object comprises a different one of the action object, the first concept object, and the second concept object, and wherein enabling execution of the action object transforms the first concept object into the second concept object based further on the other annotated span of natural language.

10. The computer-implemented method of claim 8 , wherein the method further comprises outputting a comparison based on a confidence score associated with the span of natural language annotated by the annotating object and a confidence score associated with the span of natural language without annotation by the annotating object, wherein the comparison indicates an amount of training completion relative to the span of natural language annotated with the object from the first third-party developer.

11. The computer-implemented method of claim 8 , wherein the method further comprises matching a first object with a first span of natural language from the user input and a second object with a second span of natural language from the user input, wherein the first object comprises one of the first action object, the first concept object, and the third concept object, and wherein the second object comprises another one of the first action object, the first concept object, and the third concept object.

12. The computer-implemented method of claim 8 , wherein the method further comprises providing compensation to at least one of the first third-party developer based on the annotating object and the second third-party developer based on at least one of the action object, the first concept object, and the second concept object provided by the second third-party developer.

13. The computer-implemented method of claim 12 , wherein the compensation one of increases a likelihood of further use of at least one of the annotating object provided by the first third-party developer and at least one of the action object, the first concept object, and the second concept object provided by the second third-party developer, and is based on a comparison based on a confidence score associated with the span of natural language annotated by the annotating object and a confidence score associated with the span of natural language without annotation by the annotating object, wherein the comparison indicates an amount of training completion relative to the span of natural language annotated with the object from the first third-party developer.

14. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to:

receive a span of natural language annotated with an object from a first third-party developer; and

form an intent based on a user input, wherein the user input comprises a natural language span which corresponds to at least one of an action object, a first concept object, and a second concept object, wherein at least one of the action object, the first concept object, and the second concept object is provided by a second third-party developer, wherein the annotating object comprises one of the action object, the first concept object, and the second concept object, wherein forming the intent enables executing the action object to transform the first concept object into the second concept object based on the annotated span of natural language and outputting a value associated with the second concept object associated with a goal of the intent.

15. The computer program product of claim 14 , wherein receiving the span of natural language annotated with the object comprises receiving another span of natural language annotated with another object, wherein the other annotating object comprises a different one of the action object, the first concept object, and the second concept object, and wherein enabling execution of the action object transforms the first concept object into the second concept object based further on the other annotated span of natural language.

16. The computer program product of claim 14 , wherein the program code further includes instructions to output a comparison based on a confidence score associated with the span of natural language annotated by the annotating object and a confidence score associated with the span of natural language without annotation by the annotating object, wherein the comparison indicates an amount of training completion relative to the span of natural language annotated with the object from the first third-party developer.

17. The computer program product of claim 14 , wherein the program code further includes instructions to match a first object with a first span of natural language from the user input and a second object with a second span of natural language from the user input, wherein the first object comprises one of the first action object, the first concept object, and the third concept object, and wherein the second object comprises another one of the first action object, the first concept object, and the third concept object.

18. The computer program product of claim 14 , wherein the program code further includes instructions to provide compensation to at least one of the first third-party developer based on the annotating object and the second third-party developer based on at least one of the action object, the first concept object, and the second concept object provided by the second third-party developer.

19. The computer program product of claim 18 , wherein the compensation increases a likelihood of further use of at least one of the annotating object provided by the first third-party developer and at least one of the action object, the first concept object, and the second concept object provided by the second third-party developer.

20. The computer program product of claim 18 , wherein the compensation is based on a comparison based on a confidence score associated with the span of natural language annotated by the annotating object and a confidence score associated with the span of natural language without annotation by the annotating object, wherein the comparison indicates an amount of training completion relative to the span of natural language annotated with the object from the first third-party developer.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2021
From: VIV LABS, INC.
To: SAMSUNG ELECTRONICS CO., LTD
Reel/Frame 055432/0711 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2014
From: GABEL, MARK; BRIGHAM, CHRISTOPHER; CHEYER, ADAM; LEVY, JOSHUA
To: VIV LABS, INC.
Reel/Frame 033931/0931 →
Continuity (3)
Provisional Application 61888907 · Oct 9, 2013
Provisional Application 61917541 · Dec 18, 2013
Related Publication 20150100943A1 · Apr 9, 2015