SlideShare une entreprise Scribd logo
1  sur  32
TurKit: Tools for Iterative Tasks on Mechanical Turk Paper by Greg Little, Lydia B. Chilton, Rob Miller, and Max Goldman (MIT CSAIL) Presented by Sanjay Kairam (Stanford)
Human Computation There are still some tasks that are too difficult for computers to do well. Examples: Labeling Images Tagging Documents Proofreading Text Writing Novel Content Simple solution: Get humans to do it!
Motivation and Participation Why would humans want to do these things? Reputation (Q&A Sites, Review Sites) Contribution (Wikipedia) Fun (Games with a Purpose) $$$
Amazon Mechanical Turk Marketplace for “Human Intelligence Tasks” (HITs). Small amounts of money per task.
Amazon Mechanical Turk
Traditional Workflow HIT HIT Data Collected in CSV File Requester Posts HIT Group to Mechanical Turk HIT Data Exported for Use HIT HIT HIT
Traditional Workflow: Pros & Cons Easy to run simple, parallelized tasks. Not so easy to run tasks in which turkers improve on or validate each others’ work. TurKit to the rescue!
Iterative Improvement and Voting improved text output original Vote Improve
“Improve” and “Vote” Tasks Improve-HIT: Improve a given body of text according to some instructions. Vote-HIT: Choose which of two bodies of text is better according to some criteria.
“Improve Task” Please improve the description for this image. People will vote whether to approve your changes. Use no more than 500 characters. “Vote Task” Please select the better description for this image. Your vote must agree with the majority to be approved. Differences are highlighted in yellow. Image Description
Image Description Version 1: A parial view of a pocket calculator together with some coins and a pen.
Image Description Version 2:  A view of personal items a calculator, and some gold and copper coins, and a round tip pen, these are all pocket and wallet sized item used for business, writing, calculating prices or solving math problems and purchasing items. [Voted down in favor of Version 1]
Image Description Version 3: A close-up photograph of the following items: A CASIO multi-function calculator A ball point pen, uncapped Various coins, apparently European, both copper and gold Seems to be a theme illustration for a brochure or document cover treating finance, probably personal finance.
Image Description Version 4: [Builds on Version 3] …Various British coins; two of £1 value, three of 20p value and one of 1p value... Further versions continued to iterate on Version 3.
Experiment: Iterative vs. Single HIT 11 image description tasks In each task: Image selected randomly from set of 10 Budget chosen (either $0.25 or $0.50) Iterative HIT Condition: $0.02/Improve & $0.01/Vote Single HIT Condition: Single HIT with $0.25 or $0.50 Reward
Experiment: Iterative vs. Single HIT 20 Turkers voted on each pair. Votes favored the iteratively generated description in 9 out of 11 cases (82%).
Writing Tasks: Outline to Prose Improve letter to convey this outline: Somehow I need this to sound diplomatic: I am grateful for job offer I got another offer they pay $10,000 more I’ll work for you if you can match their offer Version 1: I want to thank you for your gracious job offer. However, I have had another job offer willing to pay me $10,000 more for the same job. But, I am willing to forgoe that job offer because working with your company would be a great opportunity, that is, if you would like to match their offer.
Writing Tasks: Outline to Prose Improve letter to convey this outline: Somehow I need this to sound diplomatic: I am grateful for job offer I got another offer they pay $10,000 more I’ll work for you if you can match their offer Version 3: I would like to thank you very much for your offer, however, I have received a better package from another firm. I still would like to work for company and would like to speak with you to see if there is anyway we could make that occur.
Writing Tasks: Outline to Prose Improve letter to convey this outline: Somehow I need this to sound diplomatic: I am grateful for job offer I got another offer they pay $10,000 more I’ll work for you if you can match their offer Version 9: Thank you very much for your offer. At this time, I have a competing offer on the table at a higher salary. If the remuneration packages were equal I would much prefer to work for yourselves, and I am open to discussing the possibility of your matching this offer. If this is possible, please contact me at your earliest convenience.
Handwriting Recognition Version 1: You (?) (?) (?) (work). (?) (?) (?) work (not) (time). I (?) (?) a few grammatical mistakes. Overall your writing style is a bit too (phoney). You do (?) have good (points), but they got lost amidst the (writing). (signature)
Handwriting Recognition Version 2: You (?) (?) (?) (work). (?) (?) (?) work (not) (time). I (?) (?) a few grammatical mistakes. Overall your writing style is a bit too (phoney). You do (?) have good (points), but they got lost amidst the (writing). (signature)
Handwriting Recognition Version 4: You (misspelled) (several) (words). (?) (?) (?) work next (time). I also notice a few grammatical mistakes. …
Handwriting Recognition Version 5: You (misspelled) (several) (words). (Plan?) (spellcheck) (your) work next time. I also notice a few grammatical mistakes. Overall your writing style is a bit too phoney. You do make some good (points), but they got lost amidst the (writing). (signature)
Handwriting Recognition Final Version: You (misspelled) (several) (words). Please spellcheck your work next time. I also notice a few grammatical mistakes. Overall your writing style is a bit too phoney. You do make some good (points), but they got lost amidst the (writing). (signature)
Task Time & Cost
The TurKit Toolkit Turkers Arrows indicate the flow of information. Programmer writes 2 sets of source code: HTML files for web servers JavaScript executed by TurKit Output is retrieved via a JavaScript database. Mechanical Turk Web Server TurKit JavaScript Database *.js *.html Programmer
TurKit APIs MTurk API: JavaScript wrapper for the MTurk API Trace API: Uses the database to store information about program execution Utility API: Covers some common higher level MTurk tasks. waitForHit: accepts a HIT ID and returns a JavaScript object containing answers. vote: manages a HIT where turkers vote between two or more options. sort: takes two parameters and a comprator
TurKit Demo Iterative Text Improvement
TurKit Demo: Properties Fields to define: Mode = {Sandbox, Offline, Real} maxMoney & maxHITs = budget, HIT limits repeatInterval = wait time before re-running script You will also need: AWS Developer Access Key AWS Secret Key
TurKit Demo: Code // improve text varhitID = createImproveHIT(text, 0.02) var hit = mturk.waitForHIT(hitId) varnewText = hit.assignments[0].answer.newText print(“-------------”) print(newText) print(“-------------”)
TurKit Demo: Code // verify improvement if (vote(text, newText, 0.01)) { text = newText mturk.approveAssignment(hit.assignments[0]) print(“vote = keep”) } else { Mturk.rejectAssignment(hit.assignments[0]) print(“vote = reject”)
TurKit Demo: Code HITs are created using XML schemas defined by Amazon. Referred to by URL: Example:http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2005-10-01/QuestionForm.xsd;

Contenu connexe

Similaire à TurKit: Tools for Iterative Tasks on Mechanical Turk [Little, et al. 2010]

lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
butest
 
Functional pogramming hl overview
Functional pogramming hl overviewFunctional pogramming hl overview
Functional pogramming hl overview
Elad Avneri
 
Questions4
Questions4Questions4
Questions4
hccit
 
Cracking the coding interview u penn - sept 30 2010
Cracking the coding interview   u penn - sept 30 2010Cracking the coding interview   u penn - sept 30 2010
Cracking the coding interview u penn - sept 30 2010
careercup
 

Similaire à TurKit: Tools for Iterative Tasks on Mechanical Turk [Little, et al. 2010] (20)

python.pdf
python.pdfpython.pdf
python.pdf
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
lec21.ppt
lec21.pptlec21.ppt
lec21.ppt
 
The System Metaphor Explored
The System Metaphor ExploredThe System Metaphor Explored
The System Metaphor Explored
 
Big Data, a space adventure - Mario Cartia - Codemotion Milan 2014
Big Data, a space adventure - Mario Cartia -  Codemotion Milan 2014Big Data, a space adventure - Mario Cartia -  Codemotion Milan 2014
Big Data, a space adventure - Mario Cartia - Codemotion Milan 2014
 
Functional pogramming hl overview
Functional pogramming hl overviewFunctional pogramming hl overview
Functional pogramming hl overview
 
Hacking and mash-ups for beginners at MCN2011
Hacking and mash-ups for beginners at MCN2011Hacking and mash-ups for beginners at MCN2011
Hacking and mash-ups for beginners at MCN2011
 
BD-ACA week7a
BD-ACA week7aBD-ACA week7a
BD-ACA week7a
 
How to Teach and Learn with ChatGPT - BETT 2023
How to Teach and Learn with ChatGPT - BETT 2023How to Teach and Learn with ChatGPT - BETT 2023
How to Teach and Learn with ChatGPT - BETT 2023
 
Questions4
Questions4Questions4
Questions4
 
Mastering Python lesson3b_for_loops
Mastering Python lesson3b_for_loopsMastering Python lesson3b_for_loops
Mastering Python lesson3b_for_loops
 
Big Data, a space adventure - Mario Cartia - Codemotion Rome 2015
Big Data, a space adventure - Mario Cartia - Codemotion Rome 2015Big Data, a space adventure - Mario Cartia - Codemotion Rome 2015
Big Data, a space adventure - Mario Cartia - Codemotion Rome 2015
 
C++ lecture 01
C++   lecture 01C++   lecture 01
C++ lecture 01
 
Cracking the coding interview u penn - sept 30 2010
Cracking the coding interview   u penn - sept 30 2010Cracking the coding interview   u penn - sept 30 2010
Cracking the coding interview u penn - sept 30 2010
 

Dernier

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

TurKit: Tools for Iterative Tasks on Mechanical Turk [Little, et al. 2010]

  • 1. TurKit: Tools for Iterative Tasks on Mechanical Turk Paper by Greg Little, Lydia B. Chilton, Rob Miller, and Max Goldman (MIT CSAIL) Presented by Sanjay Kairam (Stanford)
  • 2. Human Computation There are still some tasks that are too difficult for computers to do well. Examples: Labeling Images Tagging Documents Proofreading Text Writing Novel Content Simple solution: Get humans to do it!
  • 3. Motivation and Participation Why would humans want to do these things? Reputation (Q&A Sites, Review Sites) Contribution (Wikipedia) Fun (Games with a Purpose) $$$
  • 4. Amazon Mechanical Turk Marketplace for “Human Intelligence Tasks” (HITs). Small amounts of money per task.
  • 6. Traditional Workflow HIT HIT Data Collected in CSV File Requester Posts HIT Group to Mechanical Turk HIT Data Exported for Use HIT HIT HIT
  • 7. Traditional Workflow: Pros & Cons Easy to run simple, parallelized tasks. Not so easy to run tasks in which turkers improve on or validate each others’ work. TurKit to the rescue!
  • 8. Iterative Improvement and Voting improved text output original Vote Improve
  • 9. “Improve” and “Vote” Tasks Improve-HIT: Improve a given body of text according to some instructions. Vote-HIT: Choose which of two bodies of text is better according to some criteria.
  • 10. “Improve Task” Please improve the description for this image. People will vote whether to approve your changes. Use no more than 500 characters. “Vote Task” Please select the better description for this image. Your vote must agree with the majority to be approved. Differences are highlighted in yellow. Image Description
  • 11. Image Description Version 1: A parial view of a pocket calculator together with some coins and a pen.
  • 12. Image Description Version 2: A view of personal items a calculator, and some gold and copper coins, and a round tip pen, these are all pocket and wallet sized item used for business, writing, calculating prices or solving math problems and purchasing items. [Voted down in favor of Version 1]
  • 13. Image Description Version 3: A close-up photograph of the following items: A CASIO multi-function calculator A ball point pen, uncapped Various coins, apparently European, both copper and gold Seems to be a theme illustration for a brochure or document cover treating finance, probably personal finance.
  • 14. Image Description Version 4: [Builds on Version 3] …Various British coins; two of £1 value, three of 20p value and one of 1p value... Further versions continued to iterate on Version 3.
  • 15. Experiment: Iterative vs. Single HIT 11 image description tasks In each task: Image selected randomly from set of 10 Budget chosen (either $0.25 or $0.50) Iterative HIT Condition: $0.02/Improve & $0.01/Vote Single HIT Condition: Single HIT with $0.25 or $0.50 Reward
  • 16. Experiment: Iterative vs. Single HIT 20 Turkers voted on each pair. Votes favored the iteratively generated description in 9 out of 11 cases (82%).
  • 17. Writing Tasks: Outline to Prose Improve letter to convey this outline: Somehow I need this to sound diplomatic: I am grateful for job offer I got another offer they pay $10,000 more I’ll work for you if you can match their offer Version 1: I want to thank you for your gracious job offer. However, I have had another job offer willing to pay me $10,000 more for the same job. But, I am willing to forgoe that job offer because working with your company would be a great opportunity, that is, if you would like to match their offer.
  • 18. Writing Tasks: Outline to Prose Improve letter to convey this outline: Somehow I need this to sound diplomatic: I am grateful for job offer I got another offer they pay $10,000 more I’ll work for you if you can match their offer Version 3: I would like to thank you very much for your offer, however, I have received a better package from another firm. I still would like to work for company and would like to speak with you to see if there is anyway we could make that occur.
  • 19. Writing Tasks: Outline to Prose Improve letter to convey this outline: Somehow I need this to sound diplomatic: I am grateful for job offer I got another offer they pay $10,000 more I’ll work for you if you can match their offer Version 9: Thank you very much for your offer. At this time, I have a competing offer on the table at a higher salary. If the remuneration packages were equal I would much prefer to work for yourselves, and I am open to discussing the possibility of your matching this offer. If this is possible, please contact me at your earliest convenience.
  • 20. Handwriting Recognition Version 1: You (?) (?) (?) (work). (?) (?) (?) work (not) (time). I (?) (?) a few grammatical mistakes. Overall your writing style is a bit too (phoney). You do (?) have good (points), but they got lost amidst the (writing). (signature)
  • 21. Handwriting Recognition Version 2: You (?) (?) (?) (work). (?) (?) (?) work (not) (time). I (?) (?) a few grammatical mistakes. Overall your writing style is a bit too (phoney). You do (?) have good (points), but they got lost amidst the (writing). (signature)
  • 22. Handwriting Recognition Version 4: You (misspelled) (several) (words). (?) (?) (?) work next (time). I also notice a few grammatical mistakes. …
  • 23. Handwriting Recognition Version 5: You (misspelled) (several) (words). (Plan?) (spellcheck) (your) work next time. I also notice a few grammatical mistakes. Overall your writing style is a bit too phoney. You do make some good (points), but they got lost amidst the (writing). (signature)
  • 24. Handwriting Recognition Final Version: You (misspelled) (several) (words). Please spellcheck your work next time. I also notice a few grammatical mistakes. Overall your writing style is a bit too phoney. You do make some good (points), but they got lost amidst the (writing). (signature)
  • 25. Task Time & Cost
  • 26. The TurKit Toolkit Turkers Arrows indicate the flow of information. Programmer writes 2 sets of source code: HTML files for web servers JavaScript executed by TurKit Output is retrieved via a JavaScript database. Mechanical Turk Web Server TurKit JavaScript Database *.js *.html Programmer
  • 27. TurKit APIs MTurk API: JavaScript wrapper for the MTurk API Trace API: Uses the database to store information about program execution Utility API: Covers some common higher level MTurk tasks. waitForHit: accepts a HIT ID and returns a JavaScript object containing answers. vote: manages a HIT where turkers vote between two or more options. sort: takes two parameters and a comprator
  • 28. TurKit Demo Iterative Text Improvement
  • 29. TurKit Demo: Properties Fields to define: Mode = {Sandbox, Offline, Real} maxMoney & maxHITs = budget, HIT limits repeatInterval = wait time before re-running script You will also need: AWS Developer Access Key AWS Secret Key
  • 30. TurKit Demo: Code // improve text varhitID = createImproveHIT(text, 0.02) var hit = mturk.waitForHIT(hitId) varnewText = hit.assignments[0].answer.newText print(“-------------”) print(newText) print(“-------------”)
  • 31. TurKit Demo: Code // verify improvement if (vote(text, newText, 0.01)) { text = newText mturk.approveAssignment(hit.assignments[0]) print(“vote = keep”) } else { Mturk.rejectAssignment(hit.assignments[0]) print(“vote = reject”)
  • 32. TurKit Demo: Code HITs are created using XML schemas defined by Amazon. Referred to by URL: Example:http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2005-10-01/QuestionForm.xsd;

Notes de l'éditeur

  1. Some trade-offs here. These are AI-Hard tasks, so we need humans to do it.This method may take a long amount of time, but is fairly reliable and cheap!
  2. Programmer writes HTML\\XML files for HITsJavaScript for scripting program flow