Application Layer: Crowdsourcing-Based Operators

To reduce the burden of designing and publishing crowdsourcing tasks, the application layer provides a set of semantic operators. Using these operators, a requester can publish their tasks without caring about the designing details. Furthermore, the requester can compose the operators to express more complicated crowdsourcing jobs. Given the operators, the application layer also provides optimization techniques to generate execution plan for effective crowdsourcing.


App Layer

The overview of the application layer is shown above, equiped with four operators:

  • Comparison Operator returns the partial order for a pair of objects. For example, a requester can use the operator to examine whether two representations referring to the same entity.
  • Selection Operator returns a subset of objects satisfying requester-defined relevance. For instance, the operator is helpful for selecting the best or relevant concepts for a representation.
  • Grouping Operator groups a set of "equivalent" objects, where the equivalence is defined by the requester. In our example, the requester can use the operator to put the representations referring to the same entity in one group.
  • Inference Operator smartly selects a subset of tasks to be published for crowdsourcing. Then, it infers the results of the "uncrowdsourced" tasks based on crowdsourcing results. The operator can improve the job quality with limited budgets. For example, the operator can utilize the transitive property to reduce the number of entity resolution tasks.