crowddb answering queries with crowdsourcing
play

CrowdDB: Answering Queries with Crowdsourcing Michael - PowerPoint PPT Presentation

CrowdDB: Answering Queries with Crowdsourcing Michael Franklin et al., SIGMOD11 Lianghong Xu CMU 15-799 course presentaJon Power to the People


  1. CrowdDB: ¡Answering ¡Queries ¡ with ¡Crowdsourcing ¡ Michael ¡Franklin ¡et ¡al., ¡SIGMOD’11 ¡ Lianghong ¡Xu ¡ CMU ¡15-­‑799 ¡course ¡presentaJon ¡

  2. 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 ¡

  3. 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 ¡

  4. • Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡

  5. 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() ¡

  6. 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 ¡

  7. • Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡

  8. 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 ¡

  9. 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"; ¡

  10. 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"); ¡

  11. 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 ¡

  12. • Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡

  13. User ¡interface ¡ ¡ • Create ¡templates ¡in ¡compile-­‑Jme ¡ • AutomaJcally ¡instanJate ¡user ¡interface ¡ templates ¡in ¡the ¡runJme ¡ • Can ¡be ¡edited ¡for ¡customized ¡instrucJons ¡

  14. Basic ¡Interface ¡

  15. MulJ-­‑RelaJonal ¡Interfaces ¡

  16. Possible ¡OpJmizaJons ¡ • Batch ¡tuples ¡ – The ¡same ¡person ¡for ¡many ¡similar ¡tasks ¡ • Prefetch ¡aTributes ¡ – Crowdsource ¡more ¡than ¡needed ¡for ¡future ¡use ¡

  17. • Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡

  18. 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 ¡

  19. • Crowdsourcing ¡pla[orm ¡ • CrowdSQL ¡ • User ¡interface ¡ • Query ¡processing ¡ • EvaluaJon ¡

  20. Response ¡Time ¡

  21. CompleJon ¡with ¡Varied ¡Reward ¡

  22. HITs/Quality ¡by ¡Worker ¡

  23. 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