朱映波,刁建偉,康 波,劉勝強
(1.中國電信股份有限公司數字音樂運營中心 廣州510810;2.中國電信股份有限公司廣東研究院 廣州510630)
愛音樂卡拉OK已成為中國電信IPTV業務中最受歡迎且發展最快的增值業務,其遙控器的操作方式帶來更高的人機交互成本,迫切需要業務系統進行主動的內容推送機制。不同于基于PC、手機等個人終端的業務,卡拉OK作為一種家庭業務,服務器端對用戶主體的家庭客戶身份認定與客戶端即時使用者的個體用戶身份之間存在明顯的信息不對稱,若直接使用傳統的推薦算法基于家庭客戶數據計算推薦規則,則當規則作用于個體的家庭成員時,往往造成即時使用者收到適合其他家庭成員的推薦內容,直接造成用戶體驗度降低。
另一方面,一些推薦算法,如關聯規則、協同式過濾等,當用于實際業務時,本身也隱藏一些無數理邏輯錯誤但卻不完全吻合用戶體驗的地方,比較典型的如內容缺少點播記錄造成無法輸出推送規則的“冷啟動”問題、傾向于優先推薦熱門內容的“馬太”效應。這些都需要根據具體的業務情況進行逐一修正和處理。同時,在卡拉OK業務嚴格的內容審核過程中產生了優質的內容標簽數據,具有定義準確、結構化程度高、數據完整無缺失等特點,是優化家庭客戶個性化推送規則的寶貴資源。
針對以上問題和背景,設計卡拉OK業務的推送機制優化工作流程如下。
(1)選擇關鍵標簽:計算不同標簽對用戶選擇歌曲的影響力,選取關鍵標簽確保對優化工作的針對性,并提升計算效率。
(2)選擇符合業務使用情景的基礎推薦算法:從用戶體驗出發,結合客戶端的推送應用場景,選擇與用戶行為最吻合的基礎推薦算法。
(3)結合標簽數據的推送機制進行優化:包括對IPTV個性化推薦中的家庭客戶身份認定不對稱性問題的解決、關聯規則本身馬太效應的克制、無關聯規則歌曲的規則補漏。
針對用戶選擇歌曲這一特定行為,篩選對其影響顯著的關鍵標簽,以確保標簽對用戶歌曲選擇行為的解釋能力,同時剔除冗余標簽,以避免數據相關性對內容相似度算法精確性造成的不利影響。該工作分為兩個階段:計算不同標簽對用戶選擇歌曲行為的效用大小;利用相關性檢驗剔除冗余標簽,選出關鍵標簽簇。
卡拉OK內容審核的標簽體系共有11個大類130個標簽項,表1是部分內容的示例。
確定標簽權重的方法有定量和定性兩大類。定性方法主要有Delphi法和AHP(analytic hierarchy process,層次分析)法等,定量方法包括變異系數法、因子分析及響應模型判定等。定量方法相對客觀,但結果的經濟意義模糊,且很容易受樣本數據結構的影響,并不一定反映用戶的真實心理認知;而Delphi法更適用于戰略性決策,對打分的專家的能力要求很高,且工作流程十分繁瑣(需經多輪反復達成一致意見)。比較而言,集合專家意見的半定量分析法——層次分析法最適合該研究情景。在該研究中只需考慮各標簽對用戶選擇歌曲影響力的大小,故只需建立單層模型,過程簡介如下。
(1)建立權重判斷矩陣
為了保證得到權重的客觀性,筆者在確定權重時請到多位音樂專家及業務運營管理人員就各類標簽對用戶選擇歌曲的影響力大小進行評判,沿用了AHP創始人Saaty T L提出的1~9分的比例標度法作為依據給出分值。專家團隊對各標簽進行兩兩比較,給出它們相對重要性的判斷值,全部n個標簽經過兩兩判定之后,形成一個比較判斷矩陣B,如下:

其中,bij為標簽相對于標簽的重要度。

表1 卡拉OK歌曲標簽表(部分)
(2)計算單準則條件下標簽的權重系數
運用特征根法(eigenvalue method,EM)計算該權重系數,并將其歸一化為各標簽對用戶選擇歌曲的權重向量。對于判斷矩陣B,計算滿足BW=λmaxW的特征根與特征向量。其中,λmax為B的最大特征根,W為對應于λmax的正規化特征向量,W的分量Wi即相應標簽i單排序的權值。
(3)進行一致性檢驗
為了保證所得權重的合理性及正確性,在計算權重向量后,應對每個判斷矩陣進行一致性檢驗,無法通過一致性檢驗的矩陣,反饋給打分者對標簽分值進行適當修改。一致性檢驗系數CR為:

其中,一致性指標CI可表示為:

RI為平均隨機一致性指標,由Saaty T L給出,見表2。
當CR≤0.1時,一般認為該判斷矩陣具有滿意的一致性;當CR>0.1時,則認為該判斷矩陣不具有一致性,應該調整判斷值,直到通過一致性檢驗。
(4)實際的計算結果
綜合各專家打分,得到結果矩陣(見表3),其中原始的1~9分值被平均后轉化為小數。
計算出的最大特征根λmax=12.08,對應的特征向量為(0.33 0.35 0.54 0.120.30 0.38 0.37 0.26 0.10 0.06 0.07)。一致性檢驗系數CR=0.107,基本通過一致性檢驗。可以看到,對用戶選擇歌曲的行為而言,歌曲影響年代(0.54)、音樂風格(0.38)和音樂心情(0.37)是效用值最高的3個標簽,在實際業務運營中必須優先考慮。
標簽體系中可能存在的高相關性會對后繼的相似度計算等應用的準確性產生顯著影響,并加大計算量,因此需要進行測量并剔除冗余標簽。由于標簽數據多為離散的列名變量,在計算相關系數時不宜采用常規的皮氏或斯氏系數,宜采用專門用于測量列名變量獨立性的χ2卡方檢驗,其統計量的計算式如下:

其中,nij為標簽1的第i水平與標簽2的第j水平交叉的樣本頻數,而eij為對應的期望頻數,計算式如下:

表2 平均隨機一致性指標

表3 歌曲標簽比較判斷矩陣

在大樣本下,該統計量服從自由度為(r-1)×(c-1)的卡方分布,其中r表示標簽1的水平數,c表示標簽2的水平數。通常在0.05的置信度水平下拒絕兩個標簽相互獨立的零假設,判定二者有明顯的關聯性,即P(x≥χ2)<0.05。
以音樂心情為例,計算各心情標簽(共計17個)兩兩比較的卡方獨立檢驗統計量的截尾概率,最終獲得表4的矩陣(截尾概率越小,代表對應的兩項標簽關聯性越高)。
表4中大量的數值很小,提示很多標簽之間是非獨立的。結合專家意見進行整理以后,獲得如下幾個關鍵的標簽集中代表音樂心情,見表5。
由此獲得最能代表歌曲嗓音類型特點的6個變量,從而降低后繼推送規則計算中的計算量。類似地,諸如音樂風格等有復選結構的標簽項也采用相同的方式進行處理。
個性化推薦算法是個性化推薦機制的核心,目前主流的方法有基于內容相似度的推薦和基于行為相似用戶的推薦,后者又可分為協同式過濾和關聯規則,兩種算法簡要介紹如下。
關聯規則挖掘就是發現數據集中項集之間有趣的關聯或相互聯系,是數據挖掘領域的一個重要分支。設I={i1,i2,…,im}是項的集合,D是數據庫事務的集合,每個事務T是不同項的集合,使得T哿I。設A是一個項集,事務T包含A,當且僅當A哿T。關聯規則是形如A圯B的蘊含式,其中A奐I,B奐I,并且A∩B=。規則A、B在事務集D中成立,具有支持度support和置信度confidence,support=(A圯B)=P(A∩B);confidence=(A圯B)=P(B|A)。同時滿足最小支持度閾值(min_sup)和最小置信度(min_conf)的規則,就可作為輸出的強關聯規則。

表4 歌曲標簽卡方獨立檢驗結果矩陣

表5 關鍵歌曲標簽的卡方獨立檢驗顯著性水平矩陣
關聯規則的挖掘過程分為兩步:生成所有頻繁項集,項集的出現頻率不小于min_sup;由頻繁項集產生強關聯規則,規則必須同時滿足min_sup和min_conf。
關聯規則的一個關鍵問題是對生成規則的選取,主要通過各種對規則重要性的度量如支持度support和置信度confidence,選擇最優規則。
協同過濾算法是個性化推薦中應用最廣泛的方法,基于鄰居用戶的興趣愛好預測目標用戶的興趣偏好。先使用統計技術k-NN(nearest-neighbor,最近鄰)算法,尋找與目標用戶有相同喜好的鄰居,然后根據目標用戶鄰居的偏好產生向目標用戶的推薦。算法包括如下3個階段。
(1)表示
輸入數據通常可以表示為一個m×n的矩陣形式,即項目評估矩陣R,m是用戶數,n是項數,rij是第i個用戶對第j項的評估值,這樣的評估值可以有幾個等級。矩陣R可表示為:

(2)鄰居形成
基于協同過濾技術,推薦系統的核心是為當前用戶尋找最相似的“最近鄰居”集,即對一個用戶,要產生一個根據相似度大小排列的“鄰居”集合U={u1,u2,…,uS},u不屬于U,從u1到uS,按與u的相似度sim(u,ui)從大到小排列。用戶之間的相似性測度可使用Pearson相關度方法和目前常用的夾角余弦計算方法。確定鄰居用戶有兩種方法:一是根據預先確定的相似性閾值,選擇相關性大于閾值的作為鄰居用戶;二是根據預先確定的鄰居數k,選擇相關性最大的前k個用戶作為鄰居用戶。
(3)產生推薦
“最近鄰居”集產生后,可計算用戶對任意項的興趣度和推薦集。設定用戶u和相應的已選項集Iu,則任意項t對用戶u的效用值uu,t計算如下:

其中,ru是用戶u對所有項的平均評價分值,ui是“最近鄰居”集中的用戶,sim(u,ui)是用戶u和用戶ui之間的相似度,ri,t是用戶ui對項t的評估值,ri是用戶ui對所有項的平均評價分值。按照效用測度值的高低即可產生用戶的推薦集。
卡拉OK業務作為一種電視業務,只能使用遙控器進行人機交互,導致用戶交互成本較高。對于需要用戶打分的協同式過濾算法來說,要用戶對大多數歌曲進行打分顯然會增大用戶的操作成本,影響用戶操作的流暢性進而降低用戶體驗,也更容易造成用戶對項目評估矩陣R的高度稀疏,進而影響推薦的效果。相比之下,關聯推薦由于無需用戶主動打分的環節,實施的難度相對較小,但同樣存在“冷啟動”的問題,即內容在無點播記錄的情況下,無法完成推送規則的計算,為彌補關聯規則的這一漏洞,可使用基于內容相似度的推送機制,本文建立的關鍵標簽選取機制已經為相似度計算提供了良好的數據基礎。
在卡拉OK業務中選擇關聯規則而非協同式過濾的另一個重要原因是基于用戶使用場景——為降低用戶操作成本,提升用戶交互流暢性,最好的推薦時機是在用戶點選或播放某首歌時,這不同于以商品銷售為目的的電商網站(綜合用戶所有的購買記錄再向其推薦最吻合的貨品),優先考慮的是人機交互操作的流暢性,對算法的要求是與當前內容的高關聯性。從這個場景出發,關聯規則無疑比普通的協同式過濾更為適用。
卡拉OK是基于IPTV的家庭業務,用戶唯一標識是寬帶ID代表的家庭客戶,而家庭客戶的使用數據涵蓋了家庭不同成員的點播記錄,尤其是老中青三代和男女家庭成員在內容偏好、點播行為上的差異顯著,而即時使用業務并感知推薦效果的又是作為個體的家庭成員。因此,基于家庭客戶數據計算的個性化推薦規則極易將不同成員偏好的歌曲錯位推薦,致使即時使用業務的家庭成員接收到不需要的歌曲推薦,如老年人點唱紅歌之后卻收到兒歌的推薦,或兒童點唱兒歌之后被推薦流行歌曲等大相徑庭的推薦效果,嚴重影響用戶體驗感知和操作的流暢性。
由于服務器端很難直接認定業務即時使用者的家庭成員身份,一個替代方法是先選取影響用戶選擇權重大的標簽對歌曲進行分隔,并藉此對用戶點播記錄進行分類處理,再在各個分類數據集上逐個運行關聯規則,從而獲取該分類的個性化推送規則,避免差異太大的歌曲之間的錯位推薦。
對分隔標簽個數的選擇是此處的一個難點,如果分隔標簽太多,則造成內容被過度切割,每一類的記錄數過少而不能產生足夠的推送規則;如果分隔標簽太少,則無法將用戶作為個體的音樂偏好切割開來。在實踐工作中,篩選了影響年代、音樂風格、音樂心情等對用戶影響力最大的關鍵標簽維度,基于這些維度完成了歌曲點播記錄的切分。從實際效果看,基于關鍵標簽切分數據集計算的關聯規則能更好地迎合不同家庭成員的個性化需求。
內容點播業務的數據具有典型的長尾特征——少量歌曲占據絕大部分點播量,而大量歌曲則點播量低下,構成數據分布的長尾,卡拉OK的歌曲點播量分布如圖1所示。

圖1 卡拉OK歌曲點播量帕累托累進曲線
這種長尾的分布很容易帶來的一個缺陷是馬太效應——熱門愈熱,冷門愈冷。由關聯規則的置信度計算公式可知,歌曲B越熱門,同其他歌曲A一起被點播的概率P(AB)就越高,分子P(AB)就會越發逼近分母P(A),造成置信度P(B/A)虛高,尤其對點播量并不高的歌曲A更是如此,從而占據歌曲A推薦列表的前列,進而為熱門歌曲帶來更多的點播量,加劇馬太效應的發生,少量熱門歌曲B長期霸占用戶視聽感官,帶來用戶獲取不到足夠內容資源與內容資源利用效率低下的矛盾。另一方面,如果關聯規則的前項歌曲A夠熱門(P(A)夠大),則與其他歌曲的交叉集(分子P(AB))也必須夠大才能確保置信度夠高,因此熱門歌曲的關聯對象自然也是比較熱門的歌曲,適合將熱門歌曲單獨進行關聯規則的計算。針對這種情況,必須對關聯規則的計算進行適當的調整,以避免馬太效應的持續擴大。研究方法如下。
(1)利用點播量的累積帕累托曲線,根據帕累托經典的二八原則(或設定歌曲對總點播量的貢獻閾值),作為劃分熱門與非熱門歌曲的依據。選取2012年12月的歌曲點播數據計算其累計概率,發現點播量最高的1167首歌曲占據總點播量的80%,而這只占總歌曲數量(15 697首)的7.4%,可將其定義為熱門歌曲與非熱門歌曲的拐點。
(2)利用拐點分割歌曲點播記錄為熱門歌曲和非熱門歌曲,在已經計算出的關聯推薦規則中,從規則后項上區分熱門歌曲和非熱門歌曲分割歌曲的關聯推薦規則集合,使非熱門歌曲的關聯推薦規則的后項優先推薦其他非熱門歌曲,而熱門歌曲的關聯推薦規則優先推薦其他熱門歌曲。
無關聯規則的情形產生于以下幾種情況:
·歌曲無點播次數——冷門歌曲和新歌;
·歌曲關聯規則的置信度和支持度達不到設定的閾值;

圖2 卡拉OK內容推送機制流程
·規則后項數量達不到客戶端頁面預留的推薦內容個數。
對于這些歌曲,如果不提供推送內容或統一提供相同的推薦內容,都難免影響用戶體驗,因此針對這部分歌曲,可通過歌曲標簽數據計算發掘與其風格相似的歌曲并進行補充推送。在實踐工作中,篩選了關鍵標簽并剔除了相關性高的冗余標簽,為距離的測量提供了良好的數據基礎。目前常用的相似度計算式有如下幾種。
皮爾遜相關系數:

夾角余弦:

歐式距離:

由于標簽統一為0-1型數據,無需數值的歸一化處理,故直接使用歐式距離進行計算,結合前文計算出的標簽影響力權重,加權的歐式距離公式如下:

結合業務處理流程和各個難點問題的解決,設計出卡拉OK內容推送機制流程,如圖2所示。
在這一過程中,最基礎的環節是分類內容點播記錄的關聯規則計算以及基于標簽的歌曲相似度計算,其余環節是基于用戶體驗對規則計算結果的優化。該機制采用離線計算的方式,由獨立于系統的外部服務器定期更新,不會對現網運營系統造成負擔。
中國電信愛音樂卡拉OK業務作為首個由基地集約運營的全國性IPTV增值業務,采用本智能推薦算法后,明顯提升了用戶對推薦內容的點播次數,業務發展呈現良好的態勢。從長期來看,技術的發展和用戶行為習慣的變化將推進個性化推送機制的持續完善,主要的改進方向集中在以下3個方面。
(1)對家庭用戶細分的進一步思考
該研究中對家庭成員點播記錄的區隔是采用了重點標簽的交叉分割,但統一劃分標準的選取可能帶來對小眾用戶需求不同程度的忽視,后續研究中可考慮采用無監督的用戶點播內容標簽數據的高維聚類方法,以獲取更為全面的家庭客戶分類結果。
(2)對基于用戶行為和內容標簽的推送規則的進一步融合
該研究雖然分離了熱門與非熱門歌曲,降低了馬太效應的影響,但完全將熱門歌曲與非熱門歌曲隔離,并非十全十美的設計。一個優化的設想是,結合歌曲之間的用戶點播關聯度和內容本身的標簽相似性,提供既有用戶行為關聯,也具有歌曲相似性的推送機制,并在這兩種方式之間取得一定的平衡。
(3)推送機制的進一步個性化
每個用戶的內容偏好是不同的,但如果考慮每個用戶的個性化偏好,勢必導致計算成本的大量增加。一個可以替代的方法是在已經計算出的推送規則中,根據每個用戶自身的標簽偏好(單用戶標簽分布重心(均值)),二次計算與每首被推薦歌曲之間的空間距離,繼而按照這個距離對推薦歌曲進行重新排序。
1 覃亮,王喜成.層次分析法在制造業電子商務網站評價中的應用.桂林電子工業學院學報,2006(1):74~75
2 余力,劉魯.電子商務個性化推薦研究.計算機集成制造系統,2004,10(10)
3 奉國和,梁曉婷.協同過濾推薦研究綜述.圖書情報工作,2011,55(16)
4 陳萌,楊成,王歡等.交互式電視中個性化推薦系統的研究.電視技術,2012,36(14)
5 徐淮杰,張二芬.基于關聯規則與奇異值分解的音樂推薦系統.電子設計工程,2013,21(1)