不僅僅用CTR:通過人工評估得到更好的推薦

2020-01-17     AI公園

作者:Edwin Chen

編譯:ronghuaiyang

導讀

用CTR來評估推薦算法是一個非常常用的度量,但並非是最好的度量。

假設你正在為一個新在線網站構建一個推薦算法。你如何衡量它的質量,以確保它發送給用戶相關和個性化的內容?剛開始的時候,你希望點擊率可以進行衡量,但經過一番思考,它到底是不是最好的衡量標準還不清楚。

以谷歌的搜尋引擎為例 在很多情況下,提高搜索結果的質量會降低點擊率!例如,對於像 Barack Obama 什麼時候出生?用戶永遠不需要點擊,因為問題在頁面上就得到回答了。

以 Twitter 為例,有一天它可能會向你推薦有趣的 tweet 像點擊率這樣的指標,甚至是收藏和轉發的數量,可能會優化以顯示快速的笑話和有趣的貓的圖片。但是,像 reddit 這樣的網站是 Twitter 真正想要的嗎?對很多人來說,Twitter 最初是一個新聞網站,所以用戶可能更喜歡看到更深入、更有趣的內容的連結,即使他們不太可能點擊每一條推薦。

以 eBay 為例,它可以幫你找到你想買的產品 CTR 是個好方法嗎?也許不是:更多的點擊可能表明你很難找到你要找的東西。收入怎麼樣?這可能也不太理想:從用戶的角度來看,希望以儘可能低的價格進行購買,通過優化收益,eBay 可能會將你轉向更昂貴的產品,從長遠來看,這將使你成為非常用客戶。

等等。

因此,在許多網站上,還不清楚如何使用諸如點擊率、收入、停留時間等指標來衡量個性化和推薦的質量。工程師該做什麼?

那麼,考慮一下這樣一個事實:其中許多是「相關性」算法。谷歌希望向你顯示相關的搜索結果。Twitter 想向你展示相關的推文和廣告,Netflix 想向你推薦相關的電影。LinkedIn 希望找到相關的人關注你。那麼,為什麼我們不去衡量我們的模型的相關性呢

所以為了解決這個問題,我要講一個人類的評估方法來度量個性化和發現產品的性能。我會使用 Amazon 上相關書籍推薦的例子來貫穿文章的剩餘部分。

Amazon,不再局限於基於日誌的度量

(讓我們繼續討論為什麼基於日誌的度量常常是不完善的相關性和質量度量,因為這一點很重要,但是很難理解。)

所以,以亞馬遜的顧客為例,他們買了這個商品,也買了這個功能,它會向你展示相關的書籍。

要度量它的有效性,標準的方法是進行一個現場實驗,並度量收入或 CTR 等指標的變化。

但想像一下,我們突然把亞馬遜所有的圖書推薦都換成了色情內容。會發生什麼?

或者假設我們把亞馬遜所有的相關書籍都換成更炫、更貴的商品。同樣,隨著更炫的內容吸引眼球,點擊率和收入可能會增加。但這只是短期的刺激嗎?從長遠來看,這種變化可能會降低總銷售額,因為消費者開始發現亞馬遜的產品對他們的口味來說太貴了,於是他們轉向了其他市場。

像這樣的場景是機器學習的模擬,把廣告變成閃爍的幕布。雖然一開始它們可能會增加點擊量和瀏覽量,但它們可能不會為將來優化用戶的幸福度或網站的質量。那麼,我們如何才能避免這些問題,並確保我們的建議始終保持高質量呢?畢竟,這是一個與書籍相關的算法 —— 那麼,為什麼我們堅持使用實際的實驗和類似於 CTR 的指標,卻沒有檢查我們的推薦的相關性呢?

人類的評估

解決方案:讓我們將人員注入到流程中。計算機不能度量相關關係,但人當然可以。

例如,在下面的截圖中,我讓一名工作人員(在我自己建立的一個眾包平台上)給前三名購買了這款產品的顧客評分,這些顧客既買了這本書,還買了推薦的書。

從截圖中複製文本:

  • Fool's Assassin, by Robin Hobb.。(原書),我最近才讀到這本書,但它是我今年最喜歡的書之一。這本書寫得真漂亮。我一直都是奇幻類型的粉絲,但很多時候在風格上都很相似。Hobb 對人物和敘事都有很好的處理方式。這個故事絕對令人心碎,讓我想再看一本書。
  • The Broken Eye (Lightbringer Series #3), by Brent Weeks. (第一相關的書),這是一個好的推薦,但不是非常好。這本書聽起來很有趣。不過它是一個系列的第三本,所以我得先看看我對前幾本書的感覺如何。
  • Dust and Light: A Sanctuary Novel*, by Carol Berg. (第二相關的書) 這是個不錯的推薦。我對這位作者不是很熟悉,但我喜歡這本書的一些前言。我知道「不要以貌取人」這句話。但封面設計並沒有真正吸引我,反而讓我對這本書失去了興趣。
  • Tower Lord, by Anthony Ryan. (第三相關的書) 這是一個不錯的推薦,但不是非常好。這是另一個我完全不熟悉的作者(有點像給我展示了一個尋找書籍的新地方)不過,這也是一部續集,所以在買這本書之前,我得先看看我對第一本書的感覺如何。

這些建議還不錯,但我們已經看到了一些改進的方法:

  • 首先,其中的兩個推薦(the Broken Eye和Tower Lord)是一個系列的一部分,但不是第一本。因此,一個改進是確保只顯示系列介紹,除非它們是書的後續內容。
  • 書的封面很重要!事實上,第二個建議看起來更像是奇幻愛情小說,而不是 Robin Hobb 傾向於寫的那種奇幻。

CTR 和 revenue 當然不會給我們提供這麼多的信息,也不清楚他們是否能告訴我們,我們的算法在一開始就產生了不相關的建議。並沒有地方明確指出其中兩本書是系列的一部分,因此這兩本書的 CTR 將與系列介紹一樣高。如果收入較低,就不清楚這是因為推薦不好,還是因為我們的定價算法需要改進。

所以一般來說,這裡有一個方法來理解一個算法的質量:

  1. 拿一堆商品(比如 Amazon 或 Barnes & Noble 的書),生成和它們相關的兄弟書籍。
  2. 把這些生成的兄弟書籍發給一群評委(比如,通過使用 Hybrid 這樣的眾包平台),讓他們評價這些書的相關性。
  3. 分析返回的數據。

亞馬遜、Barnes & Noble 和谷歌的算法相關性

讓我們把這個過程具體化。假設我是負責亞馬遜客戶推薦購買產品的新副總裁,我想了解產品的缺陷和亮點。

我首先讓我的幾百名員工拿一本他們去年喜歡的書,然後在亞馬遜上找到它。然後他們會從不同的作者那裡得到前三個相關書籍的推薦,在接下來的表中對它們進行評分,並解釋他們的評分。

  • 非常好的推薦。我一定會買的。(高 positive)
  • 還不錯的推薦。我可能會買。(中 positive)
  • 這個推薦不太好。我可能不會買它。(中 negative)
  • 很差的推薦。我絕對不會買的。(高 negative)

(註:我通常更喜歡 3 分或 5 分的表來度量)

例如,下面是一位評審人員對 Anne Rice 的The Wolves of Midwinter相關書籍的評論。

那麼亞馬遜的推薦有多好呢?事實上,相當不錯:47%的評分員說他們肯定會買第一本相關的書,另外 29%的評分員說他們可能會買,只有 24%的評分員不喜歡這個推薦。

第二和第三本書的推薦,雖然有點糟糕,但似乎也表現得很好:大約 65%的評分者對它們的評價是正面的。

我們能從糟糕的評級中學到什麼?我進行了一項後續任務,要求工作人員對相關的不好的推薦書籍進行分類。

  • 相關但是屬於不同的子主題。這些書的推薦一般都與原著相關,但屬於不同的子主題,作者並不感興趣。例如,第一個和書《孫子兵法》(名義上是一本關於戰爭的書,但現在已經變成了一種生活黑客的書)相關的書是On War,但實際上用戶並不是對軍事感興趣方面:」我不會買這本書,因為它只專注于軍事戰爭。我對那個不感興趣。我對能幫助我在生活中成功的心理戰術感興趣。「
  • 完全不相關。這些都是與原著完全無關的書籍推薦。例如,一本詞典出現在《孫子兵法》的頁面上。
  • 不感興趣。這些書都是相關的推薦,但它們的故事情節並不吸引評分者。「故事情節似乎不那麼激動人心。我不喜歡狗,這是關於狗的。」
  • 錯誤的受眾。這些推薦的書,它們的目標讀者與原著的讀者有很大的不同。例如,在很多情況下,相關的推薦的書籍是一本兒童書籍,但原來的書是針對成年人的。「這似乎是一本兒童讀物。如果我有個孩子,我一定會買這個,可惜我沒有,所以我不需要它。」
  • 錯誤的類型。這一類的推薦是教科書出現在小說旁邊。
  • 不喜歡作者。這些推薦是通過相似的作者提出的,但這個作者用戶不喜歡。「我不喜歡 Amber Portwood。我絕對不想讀一本她的書。「
  • 不是系列的第一本。一些推薦的書可能是作者不熟悉的系列,但它們不是這個系列的第一本書。
  • 評分不好。這些推薦的書在亞馬遜上的評分特別低。

因此,為了改善他們的推薦,亞馬遜可以嘗試改進其主題模型,在其圖書中添加基於年齡的特徵,區分教科書和小說,並投入資源做一個系列檢測器。(當然,據我所知,他們已經這麼做了。)

競爭性分析

現在,我們已經大致了解了亞馬遜的相關書籍推薦,以及如何改進這些推薦,就像我們可以引用一個類似於 6.2%的點擊率之類的指標一樣,我們現在也可以引用一個「相關性得分」,為 0.62(或其他)。那麼,讓我們來看看亞馬遜與其他在線書店如 Barnes & Noble 和谷歌 Play 相比如何。

我採取了與上述相同的任務,但這次要求評分員也審查這兩個網站的相關推薦。

簡單來說

  • Barnes & noble 的算法幾乎和亞馬遜的一樣好:前三個推薦的正確率為 58%,而亞馬遜的正確率為 68%。
  • 但 Play Store 的推薦非常差:谷歌的相關書籍推薦中,有高達 51%被標為很差。

為什麼 Play Store 的推薦這麼差?讓我們看幾個例子。

這是 John Green 的The Fault in Our Stars的頁面,這是一本深受評論家喜愛的關於癌症和愛情的書(現在也是一部電影)。

其中兩個建議完全是隨機的:一個是評級很差的 Excel 手冊,另一個是評價很差的性健康教科書。其他的則是完全不相干的牛仔書,作者是另一位 John Green。

這是 The Strain的頁面。這裡,所有的推薦都是不同的語言的書!而且只有四個。

再一次要求評分員將 Play Store 所有不好的推薦進行分類……

  • 45%的情況下,相關的書籍建議推薦與原書完全無關。例如:在浪漫小說的頁面上顯示一本物理教科書。
  • 32%的情況下,根本就沒有關於書的推薦。(我猜書的目錄一定很有限。)
  • 14%的情況下,相關書籍是不同的語言。

因此,儘管谷歌在其他地方擁有最先進的機器學習技術,但它的 Play Store 推薦實在是糟透了。

並排比較

讓我們後退一步。到目前為止,我一直專注於一種「絕對」的判斷範式,在這種範式中,法官在絕對範圍內評估一本書與原著的相關性。這個模型對於理解 Amazon 相關書籍算法的整體質量非常有用。

然而,在許多情況下,我們希望使用人類評價來「比較」實驗。例如,在很多公司里,這樣的事情很常見:

  1. 在進行現場實驗之前進行「人工評估 A/B 測試」,既可以避免意外地向用戶發送錯誤百出的實驗,也可以避免現場測試所需的長時間等待。
  2. 在進行啟動決策時,使用人工生成的相關性評分作為實時實驗指標的補充。

對於這類任務,更可取的往往是並排模式,即給評委兩個選項,然後問他們哪個更好。畢竟,比較判斷往往比絕對判斷容易得多,而且我們可能希望在比絕對尺度更精細的層次上發現差異。

我們的想法是,我們可以給每一個評級賦值(例如,如果評分者更喜歡控制項,則為負,如果評分者更喜歡實驗項,則為正),我們將這些數據匯總,形成並排的總分。然後,就像 CTR 的下降可能會阻礙實驗的啟動一樣,負的人工評估分數也應該引起人們的擔憂。

不幸的是,我沒有一個簡單的方法來生成並排的數據(儘管我可以在 Amazon 和 Barnes & Noble 上並排執行),所以我將省略一個例子,但是思想應該很清楚。

個性化

這是另一個微妙變化。在上面的例子中,我讓評分員自己挑選一本書(一本他們在過去一年中讀過並喜歡的書),然後評分,他們個人是否願意閱讀相關的推薦。

另一種方法是為評分者挑選書籍,然後更客觀地對相關推薦進行評分,方法是試著設身處地為那些對起始書籍感興趣的人著想。

哪種方法更好?正如你可能猜到的,沒有明確的答案——這取決於手頭的任務和目標。

第一種方法的優點:

  • 更微妙。你很難設身處地地為別人著想:讀《哈利·波特》的人會對《暮光之城》感興趣嗎?一方面,它們都是奇幻小說,另一方面,《暮光之城》似乎更適合女性觀眾。

第二種方法的優點:

  • 有時候,客觀性是件好事。(如果有人因為愛德華讓她想起了她的男朋友而不喜歡《暮光之城》,推薦系統真的應該在乎嗎?)
  • 允許人們選擇他們的起始書可能會對某些指標產生偏見。例如,人們更有可能選擇流行的書籍進行評分,而我們可能希望在更廣泛、更有代表性的目錄中衡量亞馬遜推薦的質量。

回顧

讓我們回顧一下到目前為止所討論的內容。

  1. 像點擊率和收入這樣的基於日誌的在線指標並不一定是發現算法質量的最佳度量。例如,高點擊率的項目可能只是活躍和浮華的,而不是最相關的。
  2. 因此,與其依賴這些代理,不如讓我們通過詢問一群人來直接衡量我們的推薦的相關性。
  3. 有兩種不同的方法來發送要判斷的項目。我們可以讓評分者選擇項目(這是個性化算法經常需要的一種方法),或者我們可以自己生成項目,通常用於更客觀的任務,如搜索。這樣做還有一個好處,就是可以更容易地得出受歡迎程度加權或均勻加權的相關性指標。我們也可以採取絕對判斷的方法,或者使用並排的方法。
  4. 通過分析來自我們評估的數據,我們可以做出更好的啟動決策,發現我們的算法表現很好或很差的例子,並找到改進的模式。

有什麼好處和應用?

  1. 如前所述,像點擊率和收入這樣的基於日誌的指標並不總是能捕捉到我們想要的信號,因此,人為生成的相關性評分(或其他維度)是有用的補充。
  2. 人工評估可以使疊代更快更容易。一個算法的改變通常需要幾周的測試,然後我們才能收集到足夠的數據來了解它是如何影響用戶的,但是我們可以很容易地在幾個小時內讓人來判斷一個任務。
  3. 假設我們是一家廣告公司,我們根據點擊率和收入來選擇播放哪些廣告。一旦我們從評估中收集了成千上萬的相關判斷,我們就可以構建一個基於「相關性」的機器學習模型,從而將一個更直接的質量度量注入到系統中。
  4. 我們如何決定需要對我們的模型進行哪些改進?評估給我們非常具體的反饋和具體的例子,什麼是工作和什麼是錯誤的。

英文原文:http://blog.echen.me/2014/10/07/moving-beyond-ctr-better-recommendations-through-human-evaluation/

文章來源: https://twgreatdaily.com/zh-cn/WEdgtm8BbDmBVZuPeO2N.html