冷啟動演算法系列-雲音樂歌曲冷啟動初探

雲音樂技術團隊發表於2022-04-18

圖片來源:https://revolutionmotors.ca/b...

作者:原點、正超

一、冷啟動問題介紹

1 什麼是冷啟動

在推薦系統中,存在著成千上萬的使用者,也存在著成千上萬的物品,推薦系統的本質任務是為使用者推薦其感興趣的物品。在這裡面,使用者和物品都是不斷更新的,如何給新使用者推薦其感興趣的物品,如何把新物品推薦給對其感興趣的使用者,就是推薦系統的冷啟動問題。
所以,推薦系統的冷啟動問題,主要包括使用者冷啟動、物品冷啟動兩大類。

2 冷啟動的重要性

使用者的流動、不確定性是客觀存在的事實,物品的上架、更新、下架也是客觀存在的事實,在當今資訊過載的時代,使用者的不確定性表現的更加明顯,如何給這些不確定性的使用者推薦好的物品,是推薦系統的主要職能之一。既然使用者和物品都是不斷產生的,在網際網路上是一種常態,那麼冷啟動問題就會伴隨產品的整個生命週期。

網際網路上的每個產品都在關注MAU、DAU,在這個流量為王的時代,一個產品能否存活、能否很好的存活,使用者起了至關重要的作用。新使用者對產品是否滿意,能否留存,直接關係到一個產品的使用者增長和收益增長。在商業領域,顧客就是上帝,在網際網路上,這句話依然適用,並把這句話表現的淋漓盡致。

另外,一個產品能否對其物品推陳出新,是吸引使用者的關鍵所在,從某種意義上來講,物品的好壞直接決定了一個產品的好壞。

所以,如何解決好新使用者、新物品問題,即冷啟動問題,對於推薦系統來說非常重要。

3 冷啟動的方法

根據使用者和物品的不同特點,將採取不同的冷啟動方法,接下來分別闡述。

3.1 使用者冷啟動

非個性化推薦

熱門推薦是一個不錯的方法,雖然沒有個性化,但是很多人都有從眾心理,根據二八原則,把熱門物品推薦給新使用者,能否滿足80%使用者的需求。比如熱門電影、熱門歌曲、熱門短視訊的推薦。

利用註冊資訊推薦

現在很多app均要求使用者註冊之後才能使用,所以可以根據這些註冊資訊進行個性化推薦,比如婚戀網站,可以給男士推薦美女,為美女推薦帥哥等。

另外還可以根據註冊的年齡、地域、職業、學歷、收入等資訊形成人物畫像,然後根據這些人物畫像進行個性化推薦。

根據興趣點進行推薦

現在有些app要求使用者在使用之前選擇自己的興趣點,以便推薦系統能夠很好進行的推薦,比如新聞類app要求使用者選擇感興趣的標籤,遊戲類app要求使用者選擇感興趣的遊戲種類,音樂類app要求使用者選擇感興趣的曲風等等。

基於少量行為進行推薦

有些使用者活躍度比較低,行為也比較少,但是可以根據這些少有的使用者行為進行個性化推薦,比如使用者看過某個短視訊,則可以根據這個看過的短視訊進行推薦。

採用試探的方法進行推薦

探測利用的方法是推薦系統常用的方法之一。首先隨機給使用者推薦幾個物品,然後根據使用者的反饋獲取使用者的興趣。這種方法主要適用於較少消耗使用者時間的app上,可以快速的定位使用者的興趣,比如新聞類,短視訊類app。

根據興趣遷移策略進行推薦

有些公司有比較成熟的app,或者一個app上有多類推薦,則可以藉助其他的使用者興趣進行遷移推薦,比如有些app即推薦音樂,也推薦短視訊,則可以根據使用者對音樂的興趣點推薦相關的短視訊。

3.2 物品冷啟動

基於side information進行推薦

物品天然具有某些屬性資訊,比如商品的商家、分類、價格等,再比如音樂的語種、風格、曲風、樂器等,推薦系統則可以根據這些基本資訊推薦給相應感興趣的使用者。

基於少量行為進行推薦

有些物品具有少量的行為資訊,則可以根據這些少量的行為資訊進行個性化推薦,比如某個使用者完整播放了某個短視訊,則可以把這個短視訊推薦給相似的使用者。

採用試探的方法進行推薦

探測利用的方法同樣也適用於物品的冷啟動,首先把一個冷啟動的物品隨機分發給一批使用者,根據使用者的反饋推薦給相應感興趣的使用者。

4 冷啟動方法的評價指標

評價一個冷啟動方法的好壞,主要考慮以下三點:

覆蓋度

第一個需要考慮的評價指標是覆蓋度,覆蓋度的大小直接決定了線上效果的好壞,如果覆蓋度過低,線上覆蓋範圍內的效果再好,整體的效果也會大打折扣。對於前面敘述的方法,基於side information的物品冷啟動方法和非個性化的使用者冷啟動方法覆蓋度均很高,幾乎可以覆蓋100%。而基於少量行為的使用者冷啟動方法和根據興趣遷移的使用者冷啟動方法要求就相對嚴苛一點,其覆蓋度就沒那麼高了。

準確度

第二個需要考慮的評價指標是準確度,比如根據興趣遷移的使用者冷啟動方法因為有較多的使用者資訊,其推薦的準確度就相對很高,而如基於side information的方法,雖然覆蓋度很高,但其準確度就不那麼高了。

可解釋

推薦系統中的推薦可解釋性,無論對於使用者還是對於推薦系統來說都非常重要,現在很多推薦系統也越來越重視推薦的可解釋性。同樣,對於冷啟動問題,好的可解釋性,也有利於提升推薦的準確度。比如根據興趣點進行的使用者冷啟動方法,就可以很好的為使用者解釋推薦的物品。

從上述幾個評價指標來看,沒有一個方法佔據所有的優點,所以實踐中的推薦系統,也是多種冷啟動方法並存,以達到多種方法優點互補的效果。

上述我們簡要介紹了冷啟動問題的定義,解決兩類冷啟動問題的一般方法,以及評價冷啟動方法的好壞標準。接下來將介紹在在音樂推薦系統中,我們對於解決歌曲冷啟動問題的實踐方案。

二、雲音樂歌曲冷啟動實踐

1 業務背景

目前入駐網易雲音樂的獨立音樂人超40萬,獨立音樂人每天有大量優秀的新作品釋出,如何快速精準的將這些優秀的新作品分發到目標聽眾的播放列表中,完成歌曲的冷啟動進而進入歌曲成長體系是網易雲音樂的推薦系統要解決的一個重要問題。

冷啟動歌曲由於其特殊性,很難直接套用針對非冷啟動歌曲建立的推薦模型,因此需要針對冷啟動歌曲建立一套有效的歌曲推薦模型。

2 歌曲冷啟動面臨的問題

2.1 歌曲特徵缺失

冷啟動歌曲面臨的根本難題是缺少使用者對歌曲的歷史互動資料,從而導致特徵和樣本的缺失。

缺少歌曲統計特徵

包括歌曲的各類行為,如播放,下載,收藏,分享等行為的次數和轉化率特徵,這類特徵通常是歌曲召回和排序模型中重要組成部分,冷啟動歌曲由於不包含這些特徵無法直接使用現有模型。

缺少樣本來訓練冷啟動歌曲的embedding向量

推薦系統中召回和排序模型中的歌曲embedding通常是端到端訓練得到的,而冷啟動歌曲不存在於詞表內,無法直接得到對應的歌曲embedding表示。

2.2 業務可解釋性

歌曲冷啟動系統的終極目標還是服務於業務,除了完成將冷啟動歌曲成功分發出去這一目標外,還希望冷啟動的過程儘量具備可解釋性。一個具有可解釋性的冷啟動系統,將更好的幫助業務去解答諸如什麼樣的歌曲更容易冷啟動成功這類問題,從而為後續冷啟動歌曲提供成功經驗。

3 解決方案

解決歌曲冷啟動的核心思想還是儘量增加可用資料,應用最廣泛的方法是利用side information的冷啟動方法,這類方法通常實現簡單且,對資料特徵的要求低,同時具有良好的業務可解釋性。

下面將從冷啟動歌曲召回和冷啟動歌曲的排序兩個角度分別介紹基於內容標籤的冷啟動方案。

3.1 冷啟動召回

由於無法收集到冷啟動歌曲的使用者互動行為記錄,通常無法對冷啟動歌曲使用常規的i2i或向量進行召回,但可以退而求其次,利用冷啟動歌曲的內容標籤進行召回,召回的過程如下圖

第一步,召回部分將冷啟動歌曲對應的內容標籤做預處理歸一化,包括僅保留主曲風,小語種歸一,專輯藝人和演唱藝人統一等。

第二步,冷啟動的歌曲按照內容標籤進行歸類,每一類內部按照帶時間衰減的轉化率給予召回候選分,候選分的計算方式為:

由三個部分組成

第1部分:時間衰減因子,days表示冷啟動天數,T表示半衰期,這部分整體表示的意思是越是近期的新歌曲分數越高。

第2部分:平滑的標籤轉化率,具體的計算方式為

like7d和play7d分別表示最近7天歌曲在平臺內的收藏人數和播放人數,k用於調節初始轉化率。這部分表示使用冷啟動歌曲的標籤維度的轉化率表示冷啟動歌曲轉化率。

第3部分:冷啟動歌曲本身的平滑轉化率,整體計算過程達到的效果是:1)使用平滑轉化率作為召回候選分;2)冷啟動初期無冷啟動歌曲轉化資料,則使用冷啟動歌曲對應的內容標籤轉化率代替;3)隨著冷啟動分發時間推進,歌曲內容標籤轉化率作用減少,逐漸被實際歌曲的轉化效果代替。

3.2 冷啟動排序

與召回部分類似,排序時無法直接使用冷啟動歌曲的特徵,但可以退化為使用冷啟動歌曲的標籤特徵,借用非冷啟動歌曲推薦排序模型訓練的曲風,語種和藝人的統計特徵以及embedding向量來表示冷啟動歌曲的缺失特徵。

排序部分模型結構如下圖

包含歌曲側和使用者側特徵構建,以及使用者和冷啟動歌曲的排序模型。

歌曲側

將針對非冷啟動歌曲訓練的排序模型中的曲風,語種和藝人對應的embedding向量以及歌曲標籤對應的統計特徵匯出。然後根據冷啟動歌曲的曲風、語種和藝人標籤分別查詢embedding和統計特徵。

使用者側

計算使用者對非冷啟動歌曲曲風、語種和藝人維度的偏好序列,查詢embedding並做pooling後將使用者的標籤偏好表示為對應的偏好向量。

排序模型:該部分對使用者曲風,語種和藝人三個維度的向量進行內積計算匹配分,然後加上歌曲標籤維度統計特徵以及使用者維度屬性特徵輸入邏輯迴歸模型預測使用者是否。模型的訓練時在使用者對非冷啟動歌曲的互動樣本上進行,訓練完成後得到每個的權重輸出。

線上預測

由於使用者側偏好向量、使用者屬性特徵和冷啟動歌曲側標籤轉化率和歌曲標籤向量均可以在離線完成,線上預測時只需要根據歌曲標籤查詢embedding,然後分別與使用者偏好標籤進行匹配,最後分別乘以邏輯迴歸模型中每個維度權重輸入sigmoid即可得到使用者對冷啟動歌曲的排序分。線上預測時計算量少,預測速度快。

最後,得到使用者對候選的冷啟動歌曲的打分後,取top歌曲插入現有歌曲推薦系統的分發流量中,完成對冷啟動歌曲的分發。

4 業務效果

衡量冷啟動歌曲是否成功分發出去最直接的指標即是冷啟動歌曲的曝光覆蓋率,即有過歌曲曝光的使用者中有多少使用者曾曝光過冷啟動歌曲。但由於冷啟動歌曲不一定全是高質量,給使用者推薦了質量不高的歌曲可能影響使用者播放體驗,因此不能無限制的分發冷啟動歌曲。一個好的歌曲冷啟動系統應該是對現有歌曲推薦系統無影響或影響儘量小的基礎上,讓更多的冷啟動歌曲被分發出去。

下圖對比了線上實驗情況,加入冷啟動推薦的召回和排序作為實驗組,無冷啟動推薦作為基準組的實驗效果。實驗期間在不影響現有歌曲推薦系統使用者體驗指標前提下,加入歌曲冷啟動系統的實驗組相比基準組的冷啟動歌曲曝光覆蓋率取得了相對增加40%以上明顯提升。

5 小結

本部分介紹了基於標籤的歌曲冷啟動推薦方法,該方法簡單有效,是目前網易雲音樂歌曲推薦系統中重要的組成部分,是構建健康的音樂分發生態系統的重要基石,為眾多冷啟動新歌的成長提供了第一步的助力。

在本系列的後續內容中,我們將繼續分享雲音樂在冷啟動這一經典問題上的更多解決方法和實踐經驗,敬請期待。

本文釋出自網易雲音樂技術團隊,文章未經授權禁止任何形式的轉載。我們常年招收各類技術崗位,如果你準備換工作,又恰好喜歡雲音樂,那就加入我們 staff.musicrecruit@service.ne...

相關文章