Amazon Mechanical Turk 前景如何?

https://www.mturk.com/


因為我是AMT的重度用戶,我來貢獻一下自己關於AMT的見解。

我從2013年到2014年使用AMT標定了整個Places Database (Places2: A Large-Scale Database for Scene Understanding)。這是一個關於場景分析和分類的圖片資料庫,包括了10 million的標定圖片,每張標定圖片都經過了至少3個AMT worker的標定。具體的標定過程大家可以參加剛release出來的論文(笑,的確是軟廣告):http://places.csail.mit.edu/places2_arxiv.pdf

我覺得AMT是一個雙贏的market maker,跟證劵交易所和大眾商品交易所類似,讓資本家和勞動者的需求都得到了滿足。這裡資本家是requester,在AMT上發布數據標定任務,勞動者是worker,標定數據掙錢。在我研究領域(計算機視覺和人工智慧)離,很多資料庫和benchmark都是通過AMT標定出來的,比如ImageNet,ActivityNet,Places。這些大規模資料庫推動了整個領域的進展。對於我們研究者來說,AMT是不可缺少的一個數據標定的工具,上面不僅可以進行數據標定,還可以獲取諸如眼動數據(http://gazecapture.csail.mit.edu/),動作場景表演(Charades Data Set a€」 Allen Institute for Artificial Intelligence)等有意思的試驗。對於Amazon自己來說,AMT也是個金缽缽,一年多以前Amazon把AMT的收費從10%加到20% (也就是說,requester發布10美元的任務,得多交2美元給Amazon),盈利翻倍。

我這裡其實更想給大家分享一下我對使用AMT標定數據的一些建議:

  • 盡量美化和優化標定的GUI,或者讓任務變得更有趣。一個好的GUI不僅可以使得AMT上的worker能更愉悅和迅速地標定數據,而且可以使得標定出的數據質量得到提升。其實也不用太fancy的前端設計,一個plain html加上一些簡單的css就足夠。把標定任務變成一個交互遊戲也是個路子,可以參見UNC的Tamara老師的這兩個設計ReferItGame: Referring to Objects in Photographs of Natural Scenes (EMNLP 2014) 和 HipsterWars: Discovering Elements of Fashion Styles
  • 給出詳盡和簡化的instruction。這裡『詳盡』和『簡化』並不矛盾。詳盡的意思是在讓worker進行數據標定前,給出具體的需求,到底需要得到怎樣的標定效果,最好能給出一些正例子和負例子。簡化的意思是讓instruction盡量簡潔,如果一個worker在做一個20美分的HIT之前還得花4-5分鐘讀懂instruction,那基本他會選擇其他的requester的HIT。
  • 分解標定任務成盡量小的子任務,發布給不同的worker完成。一個HIT裡面任務越複雜,完成的效果就越差。比如說要需要標定一個圖片場景裡面的所有人,可以先設計一個子任務讓某個worker把圖裡面每個人數出來(每人頭上點個點),然後讓另外一批worker對每個頭上有點的人進行boundary標定。
  • 如果有可能,在待標定數據中加入一些知道groundtruth的數據,這樣你可以寫一個簡單的verification javascript效驗worker在這些知道groundtruth數據點上的標定結果,如果太差可以禁止提交結果並自動提醒worker回去改進標定結果再嘗試提交。
  • 進行pilot test測試到底如何收費是最合適的。AMT其實是個market,有買賣雙方,那麼作為requester是有權進行價格歧視。怎麼以最少的花費收穫最多的標定數據天經地義。AMT上全球的worker都有,一般烙印worker是最便宜的,但標定質量會差一些(這就使得前一點特別重要,要防止worker惡意提交垃圾結果),歐美國家的worker會貴很多,但質量會更好。AMT裡面是可以限定某個人物的可能worker的地理區域的。對於一些簡單的任務,比如說圖片的標定,可以放開限制,壓低報酬。對於另外一些特定任務,比如說收集英語語言描述,只能限制worker來自歐美國家,那麼就地提高報酬。報酬高任務自然完成快。這點比較tricky,大家可以多試試不同的報酬參數。

最後,AMT上其實是『人的江湖』,在上面工作的worker其實很多有自己的難處,畢竟天天對著電腦完成這些標定任務是非常單調和乏味的。把任務做得有趣和精美一點很有必要,另外如果大家的經費充裕,不妨多pay一點。我曾經就收到過一些worker的郵件讓我觸動:其中有一封是來自美國某州的單身母親,說她非常感謝這些圖片標定任務,她自己一人在家帶孩子,只能靠AMT掙錢養家。另外一個看圖說話的HIT,也收到一個哥們的感謝郵件,說通過做這些看圖寫話task,讓他突破了自己的語言障礙重新建立起了生活信心。


Amazon Mechanical Turk (MTurk) 是一個並不被大眾所了解,嚴重被低估的平台。它提供了一種標準化的向人類發布任務並收集數據的方式,而且完全由價格驅動,你可以把它想像成一個 Human As a Service。MTurk 繼承了 Amazon 一貫不重視 UI 但是重視 API 的策略,對於入門用戶來說非常不友好。但是一旦深入使用,一定會越用越依賴。

我們組在 Trulia 的日常工作非常依賴 MTurk。我們使用 MTurk 標註數據,驗證數據,甚至生產數據。我認為 MTruk 未來的前景無限好,原因有以下三點:

- 真實世界演算法的開發是動態的,需要人類不斷參與的

- MTurk 可以完成的任務遠遠超過想像,是虛擬世界與真實世界互動的介面

- 短期來看,人類比機器人強的地方在於我們有更高效的大腦

甚至我可以說,如果我正在訓練一個試圖在真實世界中生存的 AI,我的第一件事情就是教會它如何生活在 MTurk 中。它可以通過完成圖像識別等簡單任務獲得收入,並同時將不確定的任務發布在 MTurk 上交由人類來解決,並自己學習,這是一種無風險的套利以及進化的過程。

1. 工業界演算法的開發是持續地,需要人類不斷參與地

學術界做演算法更多的關注是否優雅與科學,因此常做端到端的模型,同時使用相對固定的數據集。但在真實世界中我們更看重結果,需要不斷地反饋,也因此更關注打造系統的閉環。同時,我們也認識到模型的能力有限,越來越多的系統不僅僅依賴模型,更是試圖讓人類也參與到整個系統中。因此,MTurk 的作用也越來越大。

2. MTurk 可以完成的任務遠遠超過想像,是虛擬世界與真實世界互動的介面

Amazon Mechanical Turk 前景如何? - 周博磊的回答 的答案中提到了用 MTurk 做標註。我們組也用做大量的標註數據,包括圖片的標註,文本的標註等等。MTurk 也被使用做衡量數據,比如NLG系統裡面。同時,我們也大量使用 MTurk 生產數據。比如做 Chatbot 的時候,NLG 系統的時候,做文本縮寫的時候,你可以使用 MTurk 而生成文本。Amazon Mechanical Turk 前景如何?的答案中提到了可以讓 MTurk 完成某些行為,也是很好的用法。為了方便我們 內部使用,我們搭建了一個更好用的平台:Interning on Trulia』s Data Science Team - Trulia"s Blog

從更高的角度來看, MTurk 提供的 API 系統本質上就是虛擬世界與真實世界的介面,而且是真實有效的介面。只要有錢,就可以大規模的使用人類的大腦和做簡單的行為。換句話說,是一種拿錢換取信息或者行為的方式。人類知道通過付費來獲得更高質量的答案,對於 AI 來講也是如此。互聯網上海量的信息可以幫助 AI 理解世界,但對於不確定的事情,在 MTurk 上花錢與人類溝通也能幫助他找到答案,變得更加智能。

3. 短期來看,人類比機器人強的地方在於我們有更高效的大腦

如果你也認為,人類獲得收入是因為可以完成一些不能被機器替代的事情,現在 AI 還沒有聰明到訓練 AI。MTurk 提供個一個平台使得 AI 可以向人類尋求幫助並給予金錢,在沒有別的生產要素的情況下,以此來幫助人類脫離貧困,可能是一個好方法。

總結一下,MTurk 是一個前景無限的平台,它通過 API 和金錢連接了虛擬世界和真實世界。越早使用,就收益越多。

----

@陳然


正在同一領域創業,覺得Mturk代表著人力資源的未來,按需取用的未來。

類比下伺服器資源的發展歷程:

1)2011年創業,先要自己買伺服器,然後託管在機房,再負責以後的維護升級種種。

2)2016年創業,只需在阿里雲買個雲伺服器。

人力資源將來是不是也可以像伺服器資源一樣,可以按需取用?這是我們的目標!重點是取用的方式,伺服器可以通過遠程調用,如果人也能通過遠程調用呢?這就是Mturk的方式,也是我們薈萃的方式:以API介面形式提供雲人力服務

在程序員的眼中,世界上的事情只分兩種:一種是程序能夠處理的,一種是程序不能處理的,後者恰好是人類的強項,如果程序和人力能夠通過API形式互相調用,那幾乎能解決一切問題。

具體到人工智慧的發展就是,在演算法準確率跟產品化要求尚有不小差距的情況下,人工智慧從科研進入實用的關鍵就是引入大規模人工的輔助,即Human-in-the-Loop,讓人工處理演算法拿不準的問題,配合演算法一起解決問題,並利用人工反饋不斷改進演算法,示意圖如下:

Human-in-the-Loop,就是讓人成為程序中的一環,下面有個具體的例子:

HCrowd.prompt是讓薈萃上的五個人來指出紐約最好玩的地方,HCrowd.vote函數就是讓真人對五個結果排序,這樣人和程序就融合在了一起!Mturk只是個起點,如果程序能通過API調用真人,大家可以想下程序的世界將會發生哪些變化?


不了解商用的情況,在我目前學習的研究領域,人機交互(Human Computer Interaction),AMT經常被用於做Crowdsourcing(多謝@韓易指出,國內翻譯為「眾包」 )類型的實驗,是一種獲取數據的方式,比如我們最近正在準備一個,需要在網上招募參與者完成一系列在線操作,就打算用這個平台。我的導師之前用這個平台招募志願者幫助盲人實時回答一些需要視力解決的小任務,比如盲人拍一張手中的物品(例如一瓶牛奶),錄下自己的問題(例如「這個是無脂的牛奶嗎」),上傳,就會得到AMT上返回來的答案。總之在人機交互的一些研究中,AMT得到的結果通常比較可信賴。也有人指出,AMT上的任務支付給「工人」的錢太少了(通常都是不高於10美分)。


看了下樓上的一些回答,有AMT 在CV, NLP, HCI, 人文調查實驗等的應用。

除此之外,AMT也吸引了做database management的人,一些資料庫操作,例如filtering,sorting, joining等,也可以僱傭crowd workers 來完成,即Human in the loop data management。這個領域的一些有趣的問題:1.如何設計好平台介面,讓使用者感覺不到 你的操作是 AMT workers還是computer 完成的 2.如何盡量降低價格、任務完成時間(延遲)、且 提高 workers質量(個人感覺像是各種誘榨workers,都想馬兒不吃草又要馬兒跑得快),目前看到的方法有 根據資料庫操作種類自動優化UI、設置的價格等,給workers最好的工作體驗;僱傭worker前做qualification test, 正式分布任務前訓練一下僱傭的workers,並定期抽取檢查,誰不合格我就踢掉誰,維持一個動態的高質量pool,等。。。。

另外還看到有CV researcher用crowd 來訓練生成fine-grained detector, 使用很少的訓練數據也可以得到好的performance: http://cs.brown.edu/~gen/pub_papers/patterson_hcomp2015.pdf


人工智慧,就是有多少人工,就有多少智能。通過這個b2c的平台完成了人工的智能的收集,並注入到機器里,確實牛逼。

另一方面,這個平台也提供了數據變現的一種方式。


感覺很有發展前景!看了前面的答案還說可以做人工智慧,機器學習,交互設計,連眼動數據都能採集,以前不知道,現在看還真是厲害了!

我做社會心理學實驗用到 過AMT, 用的感覺超級棒。問卷收費算下來遠比國內的問卷星的樣本服務費用低(當時做了個跨文化研究,所以兩個都用了,題量相當),回收數據非常快,很多用戶作答也很認真(當然,在問卷設計時候就加入一些題目篩查不認真的被試),還給我們提了很多意見和建議。

但是,據說只有有美國社保賬號的人才能作為發布者使用這個平台。在國內直接申請是不行的。這個就有點局限,我使用就是跟別人借的賬號,不能自己用。

很早以前知道這個平台的時候,還跟淘寶寫郵件建議他們開發這樣類似的平台,在國內複製類似的商業模式。我個人認為前景不錯,可惜沒人搭理我。


其實國內有另外一個比較成熟的平台-眾測學院 | 百度眾測平台

其實就是眾包的樣本標註吧,真實應用中,會有很多問題;

1. 標註的標準統一: 不同標註者的背景知識不一樣,判斷也就不一樣,對同一問題,不同人有不同的答案

2. 防作弊: 有可能答題者為了速度和收益會隨便答題

3. 答案的校驗和同一等

總的來說,不是所有的問題都適合用這套系統,特別是要求專業背景的


最近做的項目中有用到這個AMT做初始數據的採集,站在多一點的角度來看待AMT。

談論一個平台的前景首先離不開需求,現實的需求是什麼呢,就是以現在計算機的發展水平而言,在許多項目中,第一步的工作如果換做human來完成,會比程序更加靈活、也能得到更豐富的信息,是通過已有的經驗去完成的任務。這一點我相信隨著AI的發展,只會有越來越多的人意識到這種做法在某些情境下的合理性。而AMT正是這樣的一個平台,很多的回答也分享了自己使用AMT所得到的數據,毫無疑問的是這部分數據是非常有價值的。那麼既然有需求,憑藉著amazon的支撐(我認為是很重要的一點),這個平台就存在著能發展起來的合理性。

它的使用在藉助一些輪子的情況下也是非常便捷,例如我們組使用的jcjohnson/simple-amt,已經封裝好了大部分api,用起來也非常簡單。而且最重要的是,既然能以網頁形式來展現,那麼幾乎你想做什麼都可以做啊 (′д` )…彡…彡 比如我們這一次的項目,自己寫了一部分RESTful服務,直接在網頁中跨域去調用,可定製性非常高。有的答案中提到的quality control和控制人均完成數等的問題,完全是可以這些來自己完成,比如我們就是加入了groundtruth進行一些簡單的驗證,代價也處於可接受的範圍。這一套流程下來,對於做過小工程的人來說還是蠻順暢的。

在使用過程中,workder的質量也比較滿意,只要不是太複雜的問題,quality基本上都能得到保證。而且會有一些worker去pm你,提出自己的一些想法來改進任務。和他們的交談也讓我對這個平台的好感有了一些提高。而且目前這個價格的確在可接受的範圍內。

所以從這些角度來看,目前AMT對一些特定的需求還是有著不可替代性,看好其前景。有相關需求的可以去了解,也可以交流相關經驗。竊以為在目前的某浪潮下,使用AMT的組應該會越來越多(


amt現在有多少用戶在使用?


要說前景的話,說不定未來會開發出腦域的商業模式。XD


亞馬遜土耳其機器人(Amazon Mechanical
Turk)是一個Web服務應用程序介面(API),開發商通過它可以將人的智能整合到遠程過程調用(RPC)。亞馬遜土耳其機器人利用人的網路來執行不
適合計算機執行的任務。亞馬遜調用那些計算機很難完成但「人工的人工智慧」卻能很容易執行的任務。執行人工智慧任務(HIT)的人可能會被要求寫產品描
述,對移動語音搜索查詢作出回應或選擇某一主題的最佳照片等等。

  下面是它的工作過程:當用戶提出一個要求,應用程序就會將這一請求發送到執行任務的人。人就會對此作出應答,然後伺服器將回應傳給請求者。土
耳其工人的工資是按成功完成人工智慧任務來計算的。亞馬遜(Amazon)通過收取成功完成請求者人工智慧任務的百分之十的價格來獲利。

  土耳其機器人(Mechanical
Turk)這個名字是從18世紀的一個國際象棋遊戲機器人得來的,這個機器人在歐洲參觀並與名人比賽下象棋,其中包括拿破崙和本?富蘭克林。每場演出之
前,觀眾都可以檢查土耳其機器人,以查看它的許多職能齒輪和槓桿。然而,和所有神奇的事物一樣,土耳其機器人只是一種幻想。其實在機器人中有一個真人躲在
一個秘密隔間中,是他在操縱機器人和玩象棋。

  亞馬遜(Amazon)選擇土耳其機器人(Mechanical Turk)這個名字來命名他們的網路服務,是因為人類的智慧隱藏在最終用戶,這樣服務看起來就像是自動進行的。

------------------豆瓣


昨天剛看到一個例子…

我先去找找…

挖坑…


我用過,感覺有一些小問題:

  • 單個任務只能選擇分配給1個或2個worker,至少開放到3個人呀,偶數算什麼鬼啦
  • 不能控制每個worker完成任務的個數(雖然可以用qulification施加一些限制,但是自由度有限)
  • worker看到的UI不夠友好,尤其多分類的時候非常容易誤點

但總體來說使用還是挺方便的,對於不是太難的任務準確率還不錯,價格也不貴。

至於前景。不像 Kaggle,在機器學習的實際應用中,往往是沒有標註好的數據的。很多場景下,與其費盡心思尋找一個 unsupervised 的解決方案,不如去 mturk 上花點小錢,然後拿來做 supervised learning。這塊的市場應該會越來越大,mturk 如果能不斷改進細節提高用戶體驗,還是相當有前景的。


推薦閱讀:

在做出「只用 Linux 不用 Windows」的決定前,有什麼需要注意的?
想學習深度學習,有哪些中文資源,教程推薦?
如何評價搜狗在清華建立的「天工研究院」?
如何評價在計算機主導的經濟環境里行為經濟學的意義?
如何評價在AlphaGo大戰李世石之前突然出現的「異構神機」?

TAG:亞馬遜Amazoncom | 人工智慧 | 眾包 | 機器學習 |