IP Library Granted Patent US 9,928,278
Granted Patent B2
US 9,928,278 · App. 14/198,873 · Granted Mar 27, 2018

Systems and methods for distributed data annotation

Inventors: Peter Welinder (San Diego, CA); Pietro Perona (Altadena, CA)
Assignee: California Institute of Technology
G06F17/30525G06F17/301G06F17/30864G06F17/30997G06Q10/101G06Q50/24G06F17/30011G06F17/30867
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,928,278
App. No.
14/198,873
Granted
Mar 27, 2018
Kind
B2
Abstract

Systems and methods for distributed data annotation in accordance embodiments of the invention are disclosed. In one embodiment of the invention, a distributed data annotation server system includes a storage device configured to store source data, one or more annotators, annotation tasks and a processor, wherein a distributed data annotation application configures the processor to receive source data including one or more pieces of source data, select one or more annotators, create one or more annotation tasks for the selected annotators and source data, request one or more annotations for the source data using the annotation tasks, receive annotations, determine source data metadata for at least one piece of source data using the received annotations, generate annotator metadata for at least one annotator using the received annotations and the source data, and estimate the ground truth for the source data using the source data metadata and the annotator metadata.

Claims (54)

1. A system comprising:

a memory configured to store source data, at least one annotator, annotation tasks, and a distributed data annotation application; and

a processor;

wherein the distributed data annotation application configures the processor to:

receive a set of source data, where the source data comprises at least one piece of source data;

select at least one annotator for at least one piece of source data;

create at least one annotation task for the selected annotators and the at least one piece of source data;

request at least one annotations for the at least one piece of source data using the created annotation tasks;

receive annotations for the at least one piece of source data; and

generate annotator metadata for at least one annotator using an iterative maximum a posteriori estimation based on the received annotations and at least one piece of source data, wherein the annotator metadata describes annotator characteristics;

determine source data metadata for at least one piece of source data using the received annotations, where the source data metadata comprises source data characteristics; and

estimate a ground truth for at least one piece of source data using the source data metadata and the annotator metadata by iteratively:

updating source data metadata for at least one piece of source data based on at least the previously determined source data metadata and annotator metadata;

updating annotator metadata for at least one annotator based on at least the previously determined source data metadata and annotator metadata; and

estimating the ground truth for at least one piece of source data using the updated source data metadata and the updated annotator metadata when a termination condition occurs.

2. The system of claim 1 , wherein the iterative maximum a posteriori estimation is selected from the group consisting of gradient ascent, gradient descent, and estimation-maximization.

3. The system of claim 1 , wherein the distributed data annotation application further configures the processor to determine a confidence threshold value regarding the ground truth of at least one piece of source data.

4. The system of claim 1 , wherein the distributed data annotation application further configures the processor to update source data metadata for at least one piece of source data using the received annotations and the annotator metadata.

5. The system of claim 4 , wherein the source data metadata includes a measure of the difficulty of describing the source data.

6. The system of claim 5 , wherein the source data metadata further comprises source data characteristics selected from the group consisting of annotations applied to the piece of source data, features of the source data, and annotators who have previously annotated the piece of source data.

7. The system of claim 1 , wherein the distributed data annotation application further configures the processor to update annotator metadata for at least one annotator using the received annotations and the source data metadata.

8. The system of claim 7 , wherein the annotator metadata includes a measure of competence of the annotator.

9. The system of claim 8 , wherein the annotator metadata further comprises annotator characteristics selected from a group consisting of an expertise of the annotator, bias of the annotator regarding mislabeling of source data, annotations previously provided by the annotator, and references to source data previously annotated by the annotator.

10. The system of claim 1 , wherein selecting at least one annotator for at least one piece of source data comprises selecting at least one annotator based on at least one source data characteristic in the source data metadata.

11. The system of claim 1 , wherein the distributed data annotation application further configures the processor to determine a cost for performing the annotation task.

12. The system of claim 1 , wherein:

the annotation task is a human intelligence task; and

the distributed data annotation application further configures the processor to request at least one annotations by submitting at least one annotation task to a human intelligence task marketplace.

13. The system of claim 1 , wherein:

the annotation task is a machine intelligence task; and

the distributed data annotation application further configures the processor to request at least one annotations by submitting at least one annotation task to an annotation device configured to perform machine intelligence tasks.

14. The system of claim 1 , wherein selecting at least one annotator for at least one piece of source data comprises selecting at least one annotator based on at least one annotator characteristic in the annotator metadata describing the at least one annotator.

15. A method, comprising:

receiving a set of source data using a distributed data annotation server system, where the set of source data comprises at least one pieces of source data;

selecting at least one annotator for at least one piece of source data using the distributed data annotation server system;

creating at least one annotation tasks for the selected annotators and the at least one piece of source data using the distributed data annotation server system;

requesting at least one annotations for the at least one piece of source data using the created annotation tasks and the distributed data annotation server system;

receiving annotations for the at least one piece of source data using the distributed data annotation server system; and

generating annotator metadata for at least one annotator using an iterative maximum a posteriori estimation based on the received annotations, at least one piece of source data, and the distributed data annotation server system, wherein the annotator metadata describes annotator characteristics;

determining source data metadata for at least one piece of source data based on the received annotations using the distributed data annotation server system, where the source data metadata comprises source data characteristics; and

estimate a ground truth for at least one piece of source data based on the source data metadata and the annotator metadata using the distributed data annotation server system by iteratively:

updating source data metadata for at least one piece of source data based on at least the previously determined source data metadata and annotator metadata;

updating annotator metadata for at least one annotator based on at least the previously determined source data metadata and annotator metadata; and

estimating the ground truth for at least one piece of source data using the updated source data metadata and the updated annotator metadata when a termination condition occurs.

16. The method of claim 15 , further comprising updating source data metadata for at least one piece of source data using the received annotations, the annotator metadata, and the distributed data annotation server system.

17. The method of claim 15 , further comprising updating annotator metadata for at least one annotator using the received annotations, the source data metadata, and the distributed data annotation server system.

18. The method of claim 15 , further comprising determining a confidence threshold value regarding the ground truth of at least one piece of source data using the distributed data annotation server system.

19. The method of claim 15 , further comprising determining a cost for performing the annotation task using the distributed data annotation server system.

20. The method of claim 15 , wherein:

the annotation task is a human intelligence task; and

requesting at least one annotations further comprises submitting at least one annotation task to a human intelligence task marketplace using the distributed data annotation server system.

21. The method of claim 15 , wherein:

the annotation task is a machine intelligence task; and

requesting at least one annotations further comprises submitting at least one annotation task to an annotation device using the distributed data annotation server system, where the annotation device is configured to perform machine intelligence tasks.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069635/0332 →
RELEASE OF SECURITY INTEREST Recorded Dec 12, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069613/0744 →
PATENT SECURITY AGREEMENT Recorded Mar 10, 2021
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 055670/0219 →
SECURITY INTEREST Recorded Apr 14, 2017
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 042254/0001 →
CONFIRMATORY LICENSE Recorded Jun 18, 2014
From: CALIFORNIA INSTITUTE OF TECHNOLOGY
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 033193/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2014
From: WELINDER, PETER; PERONA, PIETRO
To: CALIFORNIA INSTITUTE OF TECHNOLOGY
Reel/Frame 032466/0754 →
Continuity (3)
Continuation 13651108 · Oct 12, 2012
Provisional Application 61546386 · Oct 12, 2011
Related Publication 20140188879A1 · Jul 3, 2014