1 / 57

Crowd DB : Answering Queries with Crowdsourcing

Crowd DB : Answering Queries with Crowdsourcing. ارائه دهندگان: مجتبی بلبلی،احمد رحمانی،مجتبی صادقی استاد درس: دکتر شیخ اسماعیلی درس : پایگاه داده پیشرفته بهار91 دانشگاه آزاد اسلامی واحد علوم و تحقیقات کردستان. Relational database.

mura
Télécharger la présentation

Crowd DB : Answering Queries with Crowdsourcing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Crowd DB: Answering Queries with Crowdsourcing ارائه دهندگان: مجتبی بلبلی،احمد رحمانی،مجتبی صادقی استاد درس: دکتر شیخ اسماعیلی درس : پایگاه داده پیشرفته بهار91 دانشگاه آزاد اسلامی واحد علوم و تحقیقات کردستان SRB of Islamic Azad University, Kurdistan

  2. Relational database • Relational database systems have achieved widespread adoption: • business environments for which they were originally envisioned • many types of structured data like personal, social, and even scientific information • as data creation and use become increasingly democratized through web, mobile and other technologies, the limitations of the technology are becoming more apparent !! SRB of Islamic Azad University, Kurdistan

  3. RDBMS unambiguity completeness correctness SRB of Islamic Azad University, Kurdistan

  4. RDBMS unambiguity completeness correctness No| Incomplete | Incorrect Answers SRB of Islamic Azad University, Kurdistan

  5. Power to the People • One obvious situation where existing systems produce wrong answers is when they are missing information required for answering the question SRB of Islamic Azad University, Kurdistan

  6. SELECT market_capitalization FROM company WHERE name = "I.B.M."; • return an empty answer if the company table instance in the database at that time does not contain a record for “I.B.M.” • Reasons : • a data entry mistake may have omitted the I.B.M. record or the record may have been inadvertently deleted. • the record was entered incorrectly, like “I.B.N.” • Traditional systems can erroneously return an empty result even when no errors are made. Like “International Business Machines” instead of “IBM” SRB of Islamic Azad University, Kurdistan

  7. Fundamental problems • relational database systems are based on the Closed World Assumption (information that is not in the database is considered to be false or non-existent). • relational databases are extremely literal: • They expect that data has been properly cleaned and validated before entry and do not natively tolerate inconsistencies in data or queries. SRB of Islamic Azad University, Kurdistan

  8. consider a query to find the best among a collection of images to use in a motivational slide show: • unless the relevance of pictures to specific topics has been previously obtained and stored, there is simply no good way to ask this question of a standard RDBMS SELECT image FROM picture WHERE topic = "Business Success" ORDER BY relevance LIMIT 1; SRB of Islamic Azad University, Kurdistan

  9. SELECT market_capitalization FROM company WHERE name = "I.B.M."; SELECT image FROM picture WHERE topic = "Business Success" ORDER BY relevance LIMIT 1; above queries, however, while unanswerable by today’s relational database systems, could easily be answered by people, especially people who have access to the Internet. SRB of Islamic Azad University, Kurdistan

  10. CrowdDB • Recently, there has been substantial interest in harnessing Human Computation for solving problems that are impossible or too expensive to answer correctly using computers. • The approach we take in CrowdDB is to exploit the extensibility of the iterator based query processing paradigm to add crowd functionality into a DBMS. • CrowdDBextends a traditional query engine with a small number of operators that solicit human input by generating and submitting work requests to a microtask crowdsourcing platform. SRB of Islamic Azad University, Kurdistan

  11. Capabilities of humancomputation Vs. traditional query processing • Finding new data : • recall that a key limitation of relational technology stems from the Closed World Assumption. People, on the other hand, aided by tools such as search engines and reference sources, are quite capable of finding information that they do not have readily at hand. • Comparing data : • people are skilled at making comparisons that are difficult or impossible to encode in a computer algorithm. For example, it is easy for a person to tell, if given the right context, if “I.B.M.” and “International Business Machines” are names for the same entity. Likewise, people can easily compare items such as images along many dimensions, such as how well the image represents a particular concept. SRB of Islamic Azad University, Kurdistan

  12. Benefits : • by using SQL we create a declarative interface to the crowd . • Crowd DB provides Physical Data Independence for the crowd. • user interface design is a key factor in enabling questions to be answered by people. leverages schema information to support the automatic generation of effective user interfaces for crowd sourced tasks. • because of its declarative programming environment and operator-based approach, Crowd DB presents the opportunity to implement cost-based optimizations to improve query cost, time, and accuracy. SRB of Islamic Azad University, Kurdistan

  13. Crowdsourcing • Crowdsourcing is a distributed problem solving and production model. • A crowdsourcing platform creates a marketplace on which requesters offer tasks and workers accept and work on the tasks SRB of Islamic Azad University, Kurdistan

  14. Amazon Mechanical Turk • is a crowdsourcing Internet marketplace that enables computer programmers (known as Requesters) to co-ordinate the use of human intelligence to perform tasks that computers are unable to do yet. • AMT provides an API for requesting and managing work, which enables us to directly connect it to the Crowd DB query processor. • In AMT, as part of specifying a task, a requester defines a price/reward (minimum $0.01) that the worker receives if the task is completed satisfactorily. • In AMT , workers from anywhere in the world can participate but requesters must be holders of a US credit card. SRB of Islamic Azad University, Kurdistan

  15. Mechanical Turk Basics • HIT: • is the smallest entity of work a worker can accept to do • Assignment: • Every HIT can be replicated into multiple assignments. • HIT Group: • AMT automatically groups similar HITs together into HIT Groups based on the requester, the title of the HIT, the description, and the reward. SRB of Islamic Azad University, Kurdistan

  16. Requester HITs/ Assignment Workflow : AMT Groups HIT Groups Workers SRB of Islamic Azad University, Kurdistan

  17. Worker ‘s web interfaces Main AMT interface Worker Provided by Requester SRB of Islamic Azad University, Kurdistan

  18. Mechanical Turk API createHIT(title, description, question, keywords, reward, duration, max Assignments, lifetime) HitID SRB of Islamic Azad University, Kurdistan

  19. Mechanical Turk API getAssignmentsForHIT(HitID) list(asnId, workerId , answer) SRB of Islamic Azad University, Kurdistan

  20. Mechanical Turk API approveAssignment(asnID) / rejectAssignment(asnID) reward to the worker and the commission to Amazon / no reward to the worker and the commission to Amazon SRB of Islamic Azad University, Kurdistan

  21. Mechanical Turk API forceExpireHIT(HitID) Expires a HIT immediately SRB of Islamic Azad University, Kurdistan

  22. Crowd • The crowd can be seen as a set of specialized processors. • Humans are good at certain tasks (e.g., image recognition) • machines are good at certain tasks (e.g., numbers). Human Machine Crowd SRB of Islamic Azad University, Kurdistan

  23. Key issues that have influenced the design of CrowdDB • Performance and Variability • Task Design and Ambiguity • Affinity and Learning • Relatively Small Worker Pool • Open vs. Closed World SRB of Islamic Azad University, Kurdistan

  24. CrowdDB SRB of Islamic Azad University, Kurdistan

  25. New Components • Turker Relationship Management • User Interface Management • HIT Manager SRB of Islamic Azad University, Kurdistan

  26. CrowdSQL • a SQL extension that supports crowdsourcing. • Involvemissing dataandsubjectivecomparisons • SQL code in the same way as they do for traditional databases. • developers are not aware thattheir code involves crowdsourcing. SRB of Islamic Azad University, Kurdistan

  27. Incomplete Data • SQL DDL Extensions • specific attributesof tuples could becrowdsourced. • entire tuples could becrowdsourced. • special keyword,CROWD SRB of Islamic Azad University, Kurdistan

  28. CREATE TABLE Department (university STRING,name STRING,url CROWD STRING,phone STRING,PRIMARY KEY (university, name) ); Crowdsourced Column In the following Department table, the url is marked as crowdsourced. SRB of Islamic Azad University, Kurdistan

  29. CREATE CROWD TABLE Professor (name STRING PRIMARY KEY,email STRING UNIQUE,university STRING,department STRING,FOREIGN KEY (university, department)REF Department(university, name) ); Crowdsourced Table This example models a Professor table as a crowdsourcedtable. SRB of Islamic Azad University, Kurdistan

  30. CrowdDBallows any column and any table to be marked with the CROWD keyword. • CrowdDB does not impose any limitations with regard to SQL types and integrity constraints • CROWD tables must have a primary key SRB of Islamic Azad University, Kurdistan

  31. DML (Data Manipulation Language ) • SELECT - UPDATE - DELETE - INSERT INTO • DDL (Data Definition Language) • CREATE TABLE - ALTER TABLE - DROP TABLE - CREATE INDEX - DROP INDEX • DCL (Data Control Language) • GRANT -REVOKE SRB of Islamic Azad University, Kurdistan

  32. SQL DML Semantics • In order to represent values in crowdsourcedcolumns • It is also possible to specify the value of a CROWD column as part of an INSERT statement INSERT INTO Department(university, name) VALUES ("UC Berkeley", "EECS"); INSERT INTO Department(university, name, url) VALUES ("ETH Zurich", "CS", "inf.ethz.ch"); SRB of Islamic Azad University, Kurdistan

  33. Query Semantics • CrowdDBsupports any kind of SQL query on CROWD tables and columns • joins and sub-selects between two CROWD tables are allowed SRB of Islamic Azad University, Kurdistan

  34. Subjective Comparisons • two new built in functions CROWDEQUAL and CROWDORDER. • CROWDEQUAL • takes two parameters (an lvalue and an rvalue) INSERT INTO Department(university, name, url) VALUES ("ETH Zurich", "CS", "inf.ethz.ch"); SRB of Islamic Azad University, Kurdistan

  35. CROWDORDER • rank or order results. CREATE TABLE picture (p IMAGE,subject STRING); SELECT p FROM picture WHERE subject = "Golden Gate Bridge" ORDER BY CROWDORDER (p,"Which picture visualizes better %subject"); SRB of Islamic Azad University, Kurdistan

  36. CrowdSQL in Practice • Minimal extension to SQL • CrowdSQL changes the closed-world to an open-world assumption • cost and response time of queries can be unbounded • provide a way to define a budget for a query • Only one way to specify a budget—using a LIMIT SRB of Islamic Azad University, Kurdistan

  37. Lineage • query the lineage in order to take actions. cleansing of crowdsourceddata • entity resolution of crowdsourceddata • all CROWD tables must have a primary key SRB of Islamic Azad University, Kurdistan

  38. USER INTERFACE GENERATION • provision of effective user interfaces. • automatically generates user interfaces. • two-step process in CrowdDB • user interfaces are HTML (and JavaScript) forms SRB of Islamic Azad University, Kurdistan

  39. Basic Interfaces • The title of the HTML is the name of the Table. • ask the worker to input the missing information. • copying the known field values intothe HTML form. • generates JavaScript code to check for the correct types of input. SRB of Islamic Azad University, Kurdistan

  40. Multi-Relation Interfaces • the foreign key references a non-crowdsourced table. • generated user interface shows a drop-down box. • Ajax-based “suggest” function is provided. • CrowdDB supports two types of user interfaces: • normalized interface. • denormalizedinterface. SRB of Islamic Azad University, Kurdistan

  41. QUERY PROCESSING • query plan generation and execution follows a largely traditional approach. • The main differences are that the CrowdDBparser. SRB of Islamic Azad University, Kurdistan

  42. Crowd Operators • implements all operators of the relational algebra, just like any traditional database system. • initialized with a user interface template and the standard HIT parameters. • quality control is carried out by a majority vote. SRB of Islamic Azad University, Kurdistan

  43. CrowdDBhas three Crowd operators: • CrowdProbe: • crowdsources missing information of CROWD columns. • CrowdJoin: • implements an index nested-loop join over two tables. • CrowdCompare: • implements the CROWDEQUAL and CROWDORDER functions SRB of Islamic Azad University, Kurdistan

  44. Physical Plan Generation • A query is first parsed. • optimized using traditional and crowdspecificoptimizations. • only predicate push-down was applied. • the logical plan is translated into a physical plan SRB of Islamic Azad University, Kurdistan

  45. Heuristics • based on a simple rule-based optimizer. • implements several essential query rewriting rules such as predicate push-down. • annotates the query plan with the cardinality predictions between the operators. • re-order the operators to minimize the requests. • in contrast to a cost-based optimizer, a rule-based optimizer is not able to exhaustively explore all parameters. SRB of Islamic Azad University, Kurdistan

  46. EXPERIMENTS AND RESULTS • We ran over 25,000 HITs on AMT and measured the response time and quality of the answers provided by the workers. • It is important to note that the results presented in this section are highly dependent on the properties of the AMT platform at a particular point in time. • our results are highly-dependent on the specific tasks we sent to the crowd SRB of Islamic Azad University, Kurdistan

  47. Micro Benchmarks • We begin by describing the results of experiments with simple tasks requiring workers to find and fill in missing data for a table with two crowdsourced columns: CREATE TABLE businesses ( name VARCHAR PRIMARY KEY, phone_number CROWD VARCHAR(32), address CROWD VARCHAR(256) ); SRB of Islamic Azad University, Kurdistan

  48. Experiment 1: Response Time, Vary HIT Groups • In the first set of experiments we examined the response time of assignments as a function of the number of HITs in a HIT Group. • The results show that response times decrease dramatically as the size of the HIT Groups is increased.(figure 4) SRB of Islamic Azad University, Kurdistan

  49. Experiment 1: Response Time, Vary HIT Groups(2) • This graph shows that there is a tradeoff between throughput (in terms of HITs completed per unit time) and completion percent.(Figure 5) That is, while the best throughput obtained was for the largest Group size (223.8 out of a Group of 400 HITs), the highest completion rates were obtained with roups of 50 or 100 HITs. SRB of Islamic Azad University, Kurdistan

  50. Experiment 2: Responsiveness, Vary Reward • Figure 6 shows the fraction of HITs (i.e., all five assignments) that were completed as a function of time. The figure shows the results for HITs with a reward of (from the bottom up) 1, 2, 3, and 4 cents per assignment. Obviously, for all rewards, the longer we wait the more HITs are completed. The results show that for this particular task, paying 4 cents gives the best performance, while paying 1 cent gives the worst. SRB of Islamic Azad University, Kurdistan

More Related