破解 YouTube 的視訊推薦演算法

發表於2016-11-28

如果你是某個發行渠道(比如電影、戲劇、電視節目、網路視訊)的內容工作者,那麼內容的成敗就取決於發行機制的運轉邏輯。比如說,你製作了一檔電視節目,你很想它能火起來,那麼你就得知道該在哪裡切入廣告,怎麼宣傳節目,上哪個頻道播放,所選的頻道能被多少家庭收看,等等,諸如此類。

如果你的發行渠道是YouTube,那麼你最應該搞清楚的是YouTube的演算法是怎麼工作的。然而,全天下所有由演算法來運營的平臺,要搞清楚這一點那不是一般的困難。

YouTube沒有把他們演算法用到的變數公之於眾。要搞清楚其演算法的運轉原理,即使資料很有限,我們也得對這個大大的黑盒子一探究竟。有些演算法倚重的變數,我們是一點資料也拿不到的(比如縮圖,標題印象,使用者訪問歷史,使用者行為,會話資訊,等),如果能拿到這些資料,那等於就是把YouTube的演算法脫光了讓我們看,然而呢,呵呵噠,並沒有。

看起來我們啥都沒有,但還是想盡可能用手上這點資料大致搞清楚其演算法邏輯。所以,我的前同事(為什麼是“前”同事呢?因為我最近從Frederator離職啦,哇咔咔)Jeremy Rosen花了半年時間分析Frederator自己掌握和運營的頻道資料,想搞清楚YouTube的演算法。

開始之前,先明確一下:這篇文章內所指的演算法包含多個YouTube增長類演算法(為你推薦(Recommended),建議觀看(Suggest),相關視訊(Related),搜尋(Search),原始評分(MetaScore),等等)。這些不同的演算法產品,各有側重,但有一個共同點,那就是它們的優化目標相同,都是觀看時長(Watch Time)。

觀看時長

先要說清楚的,“觀看時長”並不是說觀看過的分鐘數。這個概念我們之前也討論過[1],觀看時長由以下指標構成:

  • 訪問次數
  • 訪問停留
  • 會話開始
  • 上傳頻率
  • 會話時長
  • 會話結束

本質上以上每一項都關係著頻道以及頻道的視訊表現好壞,人們是不是經常來訪問(開始一次頁面訪問的會話)以及是不是停留很長時間。

要在演算法那裡積累下任何變數的取值,你的頻道和視訊首先得有人來訪問你才行。一個視訊要成功(成功定義為訂閱者中超過一半的人在前30天訪問過)需要視訊釋出的前幾分鐘、前幾小時、前幾天內得到大量的訪問,我們把這稱之為訪問速率( View Velocity)

訪問以及訪問速率

我們分析Frederator的訪問速率,發現整個生命週期內累計訪問次數與前48小時內訂閱使用者訪問百分比呈指數關係。

cd1

48小時內訪問的訂閱使用者百分比與得到的平均訪問次數

基於這個觀察,我們稍微深挖了一下,發現用這個速率規律去預測一個視訊是否會成功,可以做到92%的準確率。其實,還存在一個更直接的相關性:72小時內訪問的訂閱使用者百分比,與視訊整個生命週期的累計被訪問次數之間。

cd2

72小時內訪問的訂閱使用者百分比與整個生命週期內累計的訪問次數

這兩個圖以及相關係數充分說明訪問次數和訪問速率對視訊和頻道有著直接而重要的影響。除此之外,我們還有證據證明這個規律反過來也成立。差勁的訪問速率不但影響這個視訊本身,還影響其上一個和下一個視訊。

下圖說明如果Frederator上一個視訊48小時內訪問速率比較糟糕(少於5%的訂閱使用者訪問),那麼接下來上傳的視訊也會受其影響。

cd3

訪問了下一個視訊的訂閱使用者百分比與訪問了前兩個視訊的訂閱使用者平均百分比之間的關係

這個資料證實了Matthew Patrick的理論:如果某一個視訊點選效果不好,那麼你的下一次上傳的視訊,YouTube就不會給予太多權重讓它被你的訂閱使用者看到。[2]

也可能是因為上一個視訊表現糟糕,所以訪問你的頻道次數就會減少,自然地就導致更少的訂閱使用者以原生的方式訪問到。不管到底“為什麼”,結果反正就是醬紫。

另一個負速率對新上傳視訊的影響就是:有證據表明這還會傷害到你的整個視訊庫。下面的第一張圖是視訊上傳48小時內就訪問的訂閱使用者7天平均百分比(譯者注:這7天上傳了若干個視訊,紀錄每個視訊上傳後48小時就訪問的訂閱使用者百分比,然後取這些百分比的平均值)與頻道總訪問次數(譯者注:反應了整個視訊庫的效果)的關係。第二張圖是某一天訪問視訊的總體訂閱使用者百分比與當日的總體訪問次數之間的關係。

cd4

七天內的平均“48小時內訪問視訊的訂閱使用者百分比” 與 每日整個頻道視訊訪問總數之間的關係

cd5

七天平均訂閱使用者訪問人數 與 總體訪問訪問次數之間的關係

這些圖示都說明一件事:一旦新上傳視訊和整個視訊庫的訪問使用者百分比走低,那麼頻道的總體訪問次數也會走低。對於我們來說的啟示是:YouTube演算法更看重那些能夠吸引到核心觀眾的頻道,而懲罰那些不能吸引其核心觀眾的。

訪問停留

另一個演算法非常看重的指標就是訪問停留(View Duration)。

訪問停留就是使用者會花多長時間停留在單個視訊頁面。這個變數的權重很高,我們的資料中能看到一個明顯的引爆點。Frederator其中一個頻道,前30天內,平均訪問時長8分鐘的視訊,比平均5分鐘的要多350%的訪問量。下圖表明,Frederator的一個頻道的視訊訪問量,與平均訪問停留時長的關係。

cd6

整個生命週期內,平均訪問時長和平均訪問量的關係 注意,這裡沒考慮訪問時長在八分鐘之上的資料。

我們還發現,訪問停留時長越長,視訊表現越好。下面這張圖是七天內訪問停留時長少於5分鐘的視訊(1),介於五分鐘到十分鐘的(5), 十分鐘以上的(10)分別與訪問量的關係。

cd7

七天內平均訪問量與平均訪問停留時長的關係

下面這張圖也是一個意思,不過從7天拉長到整個生命週期內了。

cd8

整個生命週期內平均訪問量與平均訪問停留時長的關係

基於這些發現,我們可以得出一個簡單的結論:釋出長視訊可以提高訪問效果。Frederator有一個關於兒童樂園的頻道,每週會上傳三到四個不同長度(3分鐘,10分鐘,30分鐘。70分鐘)的視訊,我們發現每個視訊釋出後的48小時內,70分鐘視訊的訪問次數遠遠超過其他長度的視訊,哪怕是重發一些炒剩飯的舊視訊。除此之外,70分鐘的視訊和其他版本的視訊有相同的平均訪問停留時長。

於是,我們建議公司每週就只上傳70分鐘長度的視訊就好了。就用了這個策略,頻道日均訪問量增長了50萬,而過去6周裡我們上傳的視訊個數卻減少了75%。好了好了,我知道你受刺激了,不要崇拜哥。

會話開始,會話時長,會話結束

能做這篇研究,全都得益於我之前的一篇文章:《觀看時長是個什麼鬼》(WTF is WatchTime?)[1]

快速回顧一下,會話開始(Session Starts)就是指使用者有多少次是從你的視訊開始訪問YouTube的。這其實說明了訂閱使用者能在前72小時訪問你是多麼重要。訂閱使用者是在視訊釋出後最早能看到的你人,他們也是最可能點選你頻道圖示的人,因為他們已經熟悉你的品牌了。

會話時長(Session Duration)就是你的內容讓使用者在YouTube平臺上逗留了多久,他們訪問你的視訊,以及訪問之後都算是在平臺上逗留。除了使用者平均訪問時長(Average View Duration )和獨立訪問數( Unique Views),也沒有更好的資料了。

會話結束(Session Ends)衡量使用者是不是經常在看完你的視訊後就離開了YouTube平臺。這是演算法利用的一個負面指標,但是我們根本拿不到資料。

一則演算法理論

YouTube的演算法設計時關注的是頻道效果而不是單個視訊效果。但是它要利用單個視訊來提高頻道效果。

演算法結合了單個視訊的特定資料和頻道的聚合資料來決定推薦哪個視訊。最終目標仍然是為頻道聚攏其目標觀眾。

YouTube這麼做是因為:

1. 讓使用者常常回訪YouTube平臺

2. 讓使用者在平臺停留越久越好

下面有三張圖表來證明這則理論是成立的。

第一張圖是48小時內訪問的訂閱者比例與7天內總訪問量之間的關係。這張圖說明,如果開始有大量使用者從你的視訊開始的平臺會話,那麼你的視訊就會獲得很大的訪問量。到達一個閾值之後,就會呈指數級增長。

cd9

7日內總訪問量與48小時內訪問的訂閱使用者百分比

第二個圖是頻道內日均訪問量與5日內訪問的訂閱使用者百分比的關係。

cd10

日均訪問量與5日內訪問的訂閱使用者百分比的關係

這意味著如果能一直讓大量使用者從你開始訪問YouTube(近5天內平均來看),那麼演算法就會將使用者每日訪問向你整個頻道視訊庫傾斜。

最後一幅圖是日均訪問的訂閱使用者百分比與5天內訪問的訂閱使用者百分比之間的關係。

cd11

日均訪問的訂閱使用者百分比與5日內訪問的訂閱使用者百分比之間的關係

我們相信這一切都表明,頻道效果的連貫性與訪問量之間存在相關性,訪問量又表現在訂閱使用者訪問百分比,YouTube就會因此把流量傾斜給你。

假如說你有一個遊戲頻道,10萬個訂閱使用者,你每天上傳6個視訊,每個視訊有5%的訂閱使用者訪問。你的每個視訊的平均訪問訂閱使用者會穩定在區區5%。這意味你會每天產生30%的訂閱使用者訪問次數(3萬/天,60萬/月)。現在假設你有1百萬訂閱使用者,那麼每日訪問次數在30萬,每月在600萬。

我們認為這一段數學運算是不會騙人的。這意味YouTube在根據一些指標選擇一些頻道進行推薦,然後只要演算法幫這個頻道提高訪問量。

但,壯士請留步,以上還僅僅是理論上的分析!

一種打分演算法

這裡我們打算破解YouTube的演算法,然後重建一個。用了15個訊號量,以及我們估計的權重,來重新構建打分演算法。訊號量列舉如下:

cd12

用來開發打分演算法的訊號量/因素

下面這些圖是這些訊號量實際產生的效果。

cd13

三天的演算法平均分與訪問量的相關趨勢

cd14

演算法打分與訪問量的相關性趨勢

下面這張圖更詳細一些。

cd15

三天的演算法打分均值與每日訪問量

知道你還是很好奇,那下面就揭曉我們模擬出來的各種權重:

cd16

各種演算法的權重分佈模擬

cd17

觀看時長優化演算法的各訊號量權重分佈模擬

cd18

相關推薦及其他演算法的各訊號量權重分佈

然而但是but,我們也沒有其他資料了,所以我們也不敢肯定在計算相關性時該用哪種迴歸方式,也只敢說大多數訊號和演算法之間很相關,而已。也正因為如此,我們對YouTube演算法一直熱情不減。

對YouTube演算法的看法

根據我們的資料,至少可以得到6個粗淺結論:

1. YouTube用演算法決定了我們的視訊和頻道能得到多少訪問量。

2. 成功的頻道都是專注在特定型別的內容或創意上。

3. 頻道自己一旦明確了哪種型別的內容成功之後,就不要再搖擺了。

4. 內容製作者光靠錢在YouTube平臺上絕無可能成功,因此土豪型的製作者不太會全身心擁抱YouTube。

5. 個性化的節目/頻道會一直是YouTube上面佔統治地位的內容型別,因為這就是人們要找的“特定型別的內容”。

6. 新建的頻道,如果不能在YouTube站外導流進去的話,相當長時間內增長都會比較困難。
前面說到,YouTube更注重於提高頻道的訪問效果,這個觀點只是我們推測得到的。頻道能夠上傳很多視訊,從而獲得和留住大量的目標觀眾。如果你想在YouTube上成功,我們能給的建議就是:瞄準一個非常垂直的興趣型別,然後持續去製作10分鐘以上的視訊,一定得是你選定的這個興趣型別的視訊。

我這裡是私人部落格,需要提醒一下,YouTube可是儲備了大量的演算法彈藥啊,也希望他們不把本文視為對演算法的負面訊息。通過這篇研究,我更加感謝YouTube及其演算法工程師們,有預見性地設計了這些演算法。畢竟,他們還是想努力讓這個世界上的十億使用者能在一個月內不重樣地觀看視訊。如果你能停下來回頭再整體上審視一下這一切,你會驚歎於YouTube演算法設計如此優雅,在實現商業目標上和保護平臺健康發展上做得難以置信的好。為他們點32個贊!

作者簡介:

Matt Gielen是Frederator Networks的前副總裁, 主管程式設計和觀眾開發。

Matt所管的團隊是世界上最大的動畫製作網路公司,Frederator網路頻道。

他還帶領團隊製作和程式設計了Frederator Networks自己的YouTube運營頻道:Channel Frederator,The Leaderboard,Cinematica。

你還可以在twitter上關注他@mattgielen。

譯後記:

最初看到這篇文章是@fengyoung 在Facebook上分享的,覺得題目很有意思就看了一遍,看完後感覺很有啟發,遂決定翻譯一下讓更多人看到。

這篇文章給我的啟發有三方面:

1. 從YouTube平臺的演算法設計人員角度,設計繁多的推薦演算法,是為了提高頻道的觀看時長,而提高頻道的觀看時長又是為了讓使用者能夠經常訪問平臺。這是一種雙贏的思維,說白了:誰能幫平臺留住使用者,平臺就重點扶持他。

2. 文章得出結論,要做垂直內容才能在YouTube上活下去。平臺上內容越多樣,平臺越健康,這是毋庸置疑的,儘管我贊同這個結論,但是我沒有在本文中看到作者是如何得到這個結論的。這一點就是YouTube和國內視訊平臺最大的差別,國內的視訊平臺嚴重趨同,花高價購買獨家版權似乎是國內視訊平臺的唯一出路,也是一個妖魔化的出路,反觀YouTube,他們利用演算法驅使了各個頻道專耕某一個垂直內容,然後把最適合的使用者給你匹配上,這才是更巨集大的一盤內容棋。

3. 本文作者給我們了一個啟示,演算法並不是黑盒子,是可以hack的,儘管這個也只能hack到冰山一角,但是也比我們盲目地運營要明亮很多了。作者的研究方式,首先是明確了一個平臺的演算法目標是什麼,YouTube是watch time,那麼就去觀察這個目標和哪些指標有關,進一步看到每個指標又能怎麼提高。

相關文章