抖音算法的本質和分析
抖音是一個現象級的産品,日活超過了6億,很多人一刷抖音就停不下來,這是為什麼呢?因為抖音給你推薦的很多都是你喜歡的視頻(如圖10-152所示)。
圖10-152抖音
抖音算法肯定算是核心機密了,我們如何從控制論角度來分析抖音算法呢?可以按照控制論中的黑箱方法進行分析,雖然我不知道抖音内部如何運作,但是我們通過輸入和輸出來推測抖音如何運作。用已知類型視頻測試用戶類型,用已知類型用戶測試未知視頻(如圖10-153所示)。
圖10-153用戶和視頻黑箱
我覺得抖音算法的核心是:分類配對、擇優推廣(如圖10-154所示)。
圖10-154分類配對
抖音如何知道用戶的愛好是什麼呢?答案是反饋評分。如果這個用戶對音樂類視頻的完播、點贊、收藏、評論和轉發最高,那麼這個用戶就判定為音樂愛好者(如圖10-155所示)。
圖10-155用戶類型測試
假設有U1~U12個用戶,愛好有搞笑、音樂、美食和知識4種,如何來判斷每個用戶的愛好呢?
用已知視頻測試用戶愛好。假設有20個視頻,搞笑、音樂、美食和知識各有5個,并且每個視頻的類型已知。将這20個視頻随機投放給這12個用戶,然後根據用戶的反饋進行評分。假設完播視頻是1分,點贊是2分,收藏是3分,評論是4分,轉發是5分。這樣,投放完20個視頻,用戶對視頻的反饋就能得到,然後就會知道用戶的愛好。比如U1用戶對于5個搞笑類視頻,他都看完了,并且點贊了5個,收藏了3個,評論了2個,轉發了一個,那麼,這個用戶得分為37分,從反饋看他喜歡搞笑類視頻,所以就可以評定為搞笑視頻愛好者,這樣就可以将這12個用戶進行愛好分組,一個用戶也可以有多個愛好,也就是他可以屬于多個組(如表10-3所示)。
表10-3用戶反饋評分
抖音如何知道視頻的類型和質量呢?答案是反饋評分。根據完播、點贊、收藏、評論和轉發的數量,來判斷視頻的類型和視頻的質量,搞笑用戶組如果對這個視頻評分最高,那麼這個視頻就判定為搞笑類視頻(如圖10-156所示)。
圖10-156視頻類型和質量測試
用已知用戶愛好測試視頻類型。對于海量的視頻,需要知道視頻類型,這樣才能推送給同類型視頻愛好者。将一個未知類型的視頻推送給這4個組,然後看用戶的反饋,如果知識愛好者評分最高,那麼這個視頻就是知識類視頻,就可以推送給其他知識類視頻愛好者。比如V1推送的組中搞笑類、音樂類、美食類和知識類愛好者各有4個,然後搞笑類4個愛好者都看完了這個視頻,2個給點贊,3個收藏,4個評論,2個轉發,那麼這個視頻評分是47分。從視頻反饋來看,搞笑類愛好者喜歡這個視頻,那麼就把這個視頻歸為搞笑類視頻(如表10-4所示)。
表10-4視頻反饋頻分
如何擇優推廣呢?
視頻質量有好有差,好的視頻要推送給更多人,所以就要擇優推薦,有點類似于考試升級一樣。我們可以仿照軍隊的層級結構來對用戶進行拆分。假設分成4個層級,分别為1~4,層級越高代表用戶數量越多。比如搞笑類視頻的第一層為GX1,這一層的,每一個大組(比如GX2003)有100個小組,每個小組有50人,組的編号分别為GX1001~GX1100。第二層和第三層也是這樣的,然後第四層就會有5千萬人的搞笑視頻愛好者(如圖10-157所示)。
圖10-157用戶的層級結構
按照之前黑箱的測試原則,新注冊的用戶會使用已知類型視頻确定用戶類型。然後新的視頻也會投放給已知類型用戶來确定視頻類型。并且每個視頻還會有完播、點贊、收藏、評論和轉發這些反饋,然後通過加權就能知道每個視頻的得分,按照分數進行排序,擇優推薦給上層。
比如一個視頻在GX1001組表現好,那麼就把這個視頻推薦上一層的GX2003,這樣就會有5千人看到這個視頻。如果這個視頻在GX2003還是非常受到喜愛,也就是完播、點贊、收藏、評論和轉發都很多,那麼就推薦給GX3003,這樣這個視頻就會有50萬人看到;如果還非常受到喜愛,那麼就推薦給GX4001,這樣就有5千萬搞笑視頻愛好者可以看到。
視頻被上傳時,很多制作者也會打上标簽,比如“#搞笑”,這些标簽也可以通過加權來确定視頻類型。因為字節跳動有很多産品,比如頭條,頭條愛好者的标簽也也可以通過加權來确定用戶類型。
這樣就達到了用戶和視頻分類,優秀視頻被推送給更多人的目的。每個視頻就像是考試的篩選,視頻是參加考試的學生,用戶是評分的老師,成績好的視頻就可以往上晉級。
當然,視頻和用戶分類也可以使用智能算法來做。
我以上舉了負反饋在各個領域的例子,這些隻是其中非常小的一部分,負反饋存在于世界的任何地方,就像氧氣一樣。沒有負反饋,世界都不可能正常運作。人們并沒有認識到負反饋分布之廣,以及威力之強,而一旦我們學會了系統思考的角度來看待世界,那麼我們對于系統的分析和優化能力将大幅度提高,進而推動社會大步前進。
摘自《世界十大學習方法》,世界十大學習方法,幫你提高學習效率,降低學習成本!!!
通用方法論
十大學習方法的思維導圖
有話要說...