CrowdDB: ¡Answering ¡Queries ¡ with ¡Crowdsourcing ¡ Michael ¡Franklin ¡et ¡al., ¡SIGMOD’11 ¡ Lianghong ¡Xu ¡ CMU ¡15-‑799 ¡course ¡presentaJon ¡
Power ¡to ¡the ¡People ¡ • Some ¡queries ¡cannot ¡be ¡easily ¡answered ¡by ¡ machines ¡ – “I.B.M.”, ¡“IBM”, ¡“I.B.N”, ¡“Big ¡Blue”, ¡etc. ¡ – Which ¡picture ¡shows ¡the ¡golden ¡bridge ¡beTer? ¡ • Human ¡labor ¡can ¡be ¡beTer ¡and ¡cheaper ¡ – SomeJmes ¡humans ¡are ¡smarter ¡than ¡computers ¡ – Ability ¡to ¡find ¡new ¡data ¡in ¡the ¡open ¡world ¡
CrowdDB: ¡IntuiJon ¡ • Complement ¡tradiJonal ¡database ¡systems ¡ with ¡human ¡knowledge, ¡whenever ¡needed ¡ • Leverage ¡the ¡best ¡from ¡both ¡sides ¡ – Human ¡power ¡for ¡comparing ¡and ¡finding ¡data ¡ – Machine ¡power ¡for ¡heavy-‑liZing ¡computaJon ¡ • Automate ¡task ¡assignment ¡
• Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡
Crowdsourcing ¡pla[orm: ¡AMT ¡ • Amazon ¡Mechanical ¡Turk ¡ • Basic ¡concepts ¡ – HIT: ¡Human ¡Intelligent ¡Task. ¡Smallest ¡enJty ¡of ¡work ¡ – Assignment: ¡1 ¡HIT ¡replicated ¡to ¡N ¡assignments ¡ – HIT ¡group: ¡similar ¡HITs ¡ • Mechanical ¡Turk ¡APIs ¡ – Requester: ¡createHIT(), ¡approve/rejectAssignment() ¡ – Worker: ¡getAssignmentForHIT() ¡
Design ¡ConsideraJons ¡ • Performance ¡and ¡variability ¡ – Difference ¡in ¡worker ¡producJvity ¡ • Task ¡design ¡and ¡ambiguity ¡ – Need ¡user-‑friendly ¡interface ¡ • Affinity ¡and ¡learning ¡ – Workers ¡learn ¡and ¡become ¡more ¡experienced ¡ ¡ • RelaJvely ¡small ¡worker ¡pool ¡ • Open ¡vs. ¡closed ¡world ¡
• Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡
CrowdSQL ¡ • Superset ¡of ¡SQL ¡ – With ¡minimal ¡extension ¡to ¡support ¡crowdsourcing ¡ – Expressive ¡semanJcs ¡ • Incomplete ¡data ¡ – Crowdsource ¡new ¡column/record ¡if ¡not ¡exist ¡ • SubjecJve ¡comparisons ¡ – Compare/order ¡values ¡
Example: ¡Crowdsourced ¡Column ¡ CREATE ¡TABLE ¡Department ¡( ¡ ¡ ¡university ¡STRING, ¡ ¡ ¡name ¡STRING, ¡ ¡ ¡url ¡CROWD ¡STRING, ¡ ¡ ¡phone ¡STRING, ¡ ¡ ¡PRIMARY ¡KEY ¡(university, ¡name) ¡); ¡ SELECT ¡url ¡FROM ¡Department ¡WHERE ¡ name ¡= ¡"Math"; ¡
Example: ¡CROWDORDER ¡ CREATE ¡TABLE ¡picture ¡( ¡ ¡ ¡p ¡IMAGE, ¡ ¡subject ¡STRING); ¡ ¡ SELECT ¡p ¡FROM ¡picture ¡ ¡ WHERE ¡subject ¡= ¡"Golden ¡Gate ¡Bridge” ¡ ORDER ¡BY ¡CROWDORDER(p, ¡ ¡ "Which ¡picture ¡visualizes ¡beTer ¡%subject"); ¡
PotenJal ¡issues ¡in ¡CrowdSQL ¡ • Unbounded ¡cost ¡and ¡latency ¡ – #items ¡to ¡be ¡crowdsourced ¡is ¡unclear ¡ – Can ¡be ¡miJgated ¡by ¡senng ¡query ¡“budget” ¡ • Lineage ¡ – Track ¡source ¡of ¡data ¡to ¡take ¡acJons ¡ • Cleansing ¡of ¡crowdsourced ¡data ¡ – Reduce ¡data ¡redundancy ¡due ¡to ¡human ¡input ¡
• Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡
User ¡interface ¡ ¡ • Create ¡templates ¡in ¡compile-‑Jme ¡ • AutomaJcally ¡instanJate ¡user ¡interface ¡ templates ¡in ¡the ¡runJme ¡ • Can ¡be ¡edited ¡for ¡customized ¡instrucJons ¡
Basic ¡Interface ¡
MulJ-‑RelaJonal ¡Interfaces ¡
Possible ¡OpJmizaJons ¡ • Batch ¡tuples ¡ – The ¡same ¡person ¡for ¡many ¡similar ¡tasks ¡ • Prefetch ¡aTributes ¡ – Crowdsource ¡more ¡than ¡needed ¡for ¡future ¡use ¡
• Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡
Query ¡Processing ¡ ¡ • Extended ¡operators ¡to ¡support ¡CrowdSQL ¡ – CrowdProbe, ¡CrowdJoin, ¡CrowdCompare ¡ • Create ¡HIT ¡(group) ¡using ¡AMT ¡APIs ¡ • Parse ¡crowdsourced ¡results ¡ – Perform ¡majority-‑based ¡quality ¡control ¡ • Rule-‑based ¡opJmizer ¡ – Basic ¡parameter ¡senng ¡(e.g., ¡price, ¡batching ¡size) ¡ – BeTer ¡candidate: ¡cost-‑based ¡opJmizer ¡
• Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡
Response ¡Time ¡
CompleJon ¡with ¡Varied ¡Reward ¡
HITs/Quality ¡by ¡Worker ¡
InteresJng ¡ObservaJons ¡ • Crowdsourcing ¡involves ¡long-‑term ¡relaJonship ¡ – Keep ¡the ¡workers ¡happy ¡ • Interface ¡design ¡maTers ¡ – A ¡good ¡interface ¡improves ¡result ¡quality ¡and ¡worker ¡ efficiency ¡ • Need ¡of ¡data ¡independence ¡ – Free ¡applicaJon ¡writers ¡from ¡worrying ¡about ¡changing ¡ environment ¡
Recommend
More recommend