江翠麗,曹騰飛,李長(zhǎng)哲,王曉英
(青海大學(xué) 計(jì)算機(jī)技術(shù)與應(yīng)用系,青海 西寧 810016)
隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,視頻點(diǎn)播、視頻聊天等流媒體網(wǎng)絡(luò)業(yè)務(wù)已成為用戶消費(fèi)的主流[1]。據(jù)中國(guó)互聯(lián)網(wǎng)絡(luò)信息中(CNNIC)第44次《中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》統(tǒng)計(jì),截至2019年6月,國(guó)內(nèi)網(wǎng)絡(luò)視頻用戶規(guī)模達(dá)8.47億,較2018年底增長(zhǎng)3 391萬(wàn),占網(wǎng)民整體的88.8%[2]。為實(shí)現(xiàn)高帶寬、大容量、低時(shí)延,5G移動(dòng)通信網(wǎng)絡(luò)應(yīng)運(yùn)而生[3]。5G網(wǎng)絡(luò)的超高傳輸速率雖然解決了網(wǎng)絡(luò)帶寬與時(shí)延的問(wèn)題,但仍無(wú)法滿足不同用戶對(duì)不同視頻業(yè)務(wù)的體驗(yàn)需求[4]。因此,從用戶需求感知出發(fā),提升用戶的服務(wù)體驗(yàn)是網(wǎng)絡(luò)視頻行業(yè)發(fā)展的必然趨勢(shì)。精準(zhǔn)的用戶需求預(yù)測(cè)可以減少用戶尋找所需視頻內(nèi)容的時(shí)間,在提升用戶體驗(yàn)的同時(shí)有助于運(yùn)營(yíng)商精準(zhǔn)地掌握用戶喜好信息,促進(jìn)網(wǎng)絡(luò)平臺(tái)的發(fā)展。
文獻(xiàn)[5-6]將網(wǎng)絡(luò)負(fù)荷作為評(píng)價(jià)指標(biāo)構(gòu)建了基于用戶感知的網(wǎng)絡(luò)負(fù)荷模型,通過(guò)對(duì)不同小區(qū)的用戶使用流量情況分析,從用戶感知速率角度實(shí)現(xiàn)了流量增長(zhǎng)與網(wǎng)絡(luò)負(fù)載能力的平衡。文獻(xiàn)[7]為應(yīng)對(duì)不同用戶的不同業(yè)務(wù)需求,提出了一種面向排名的預(yù)測(cè)方法,通過(guò)考慮用戶對(duì)服務(wù)質(zhì)量的態(tài)度和期望,來(lái)提高服務(wù)等級(jí)預(yù)測(cè)的準(zhǔn)確性,發(fā)現(xiàn)滿意度更高的云服務(wù)候選者,以減少負(fù)面顧客在排名相似度計(jì)算中的影響。文獻(xiàn)[8]提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)算法構(gòu)建用戶感知評(píng)價(jià)模型,通過(guò)對(duì)產(chǎn)品的使用數(shù)據(jù)進(jìn)行研究分析,建立了用戶感知評(píng)估與產(chǎn)品性能之間的映射關(guān)系,從用戶感知產(chǎn)品性能的角度出發(fā),預(yù)測(cè)出影響用戶感知的產(chǎn)品性能參數(shù)。文獻(xiàn)[9]從網(wǎng)絡(luò)業(yè)務(wù)角度出發(fā),充分考慮不同業(yè)務(wù)類(lèi)型對(duì)信道資源的占用情況,根據(jù)流量與用戶體驗(yàn)的變化率來(lái)構(gòu)造網(wǎng)絡(luò)效益函數(shù),實(shí)現(xiàn)無(wú)線資源的利用效率。文獻(xiàn)[10]基于深度神經(jīng)網(wǎng)絡(luò)DNN模型對(duì)IPTV視頻用戶的點(diǎn)播行為進(jìn)行分析,如用戶的在線時(shí)長(zhǎng)、觀看時(shí)長(zhǎng)等,目的在于幫助IPTV服務(wù)提供商進(jìn)行合理的資源分配,提升對(duì)用戶的服務(wù)質(zhì)量。
現(xiàn)有的視頻用戶需求感知方法僅依賴于用戶對(duì)視頻播放質(zhì)量和網(wǎng)絡(luò)狀態(tài)需求的感知,忽略了用戶自身觀看喜好和觀看行為對(duì)需求感知的重要性,而該文從用戶觀看視頻行為出發(fā),結(jié)合用戶觀看視頻喜好,提出了基于SVM的視頻用戶需求預(yù)測(cè)模型,目的在于精準(zhǔn)預(yù)測(cè)用戶對(duì)視頻內(nèi)容的需求,幫助運(yùn)營(yíng)商提高視頻推薦成功率,在促進(jìn)網(wǎng)絡(luò)視頻業(yè)務(wù)發(fā)展的同時(shí)減少用戶搜索視頻的時(shí)間,提升用戶體驗(yàn)。
用戶觀看視頻的行為受到多種因素的影響,如地區(qū)、年齡、終端設(shè)備能耗及視頻的流行度等因素,不同的地區(qū)、不同的人群觀看視頻的行為具有顯著差異[11]。面對(duì)海量的網(wǎng)絡(luò)視頻資源,不同的用戶對(duì)視頻內(nèi)容的需求也不同,挖掘用戶觀看視頻行為數(shù)據(jù)中各用戶與其對(duì)視頻需求的關(guān)系并建立有效的視頻用戶需求預(yù)測(cè)模型,可以實(shí)現(xiàn)用戶對(duì)視頻內(nèi)容需求的預(yù)測(cè),提升用戶體驗(yàn)。
由已知的用戶觀看視頻行為數(shù)據(jù)來(lái)預(yù)測(cè)用戶后續(xù)的需求非常符合支持向量機(jī)(support vector machine)的應(yīng)用場(chǎng)景。支持向量機(jī)是由Cortes和Vapnik于1995年首先提出的建立在統(tǒng)計(jì)學(xué)習(xí)理論的VC維理論。該理論可以根據(jù)有限的樣本信息在模型的復(fù)雜性和學(xué)習(xí)能力之間尋求最佳解決策略,以期獲得最小化結(jié)構(gòu)風(fēng)險(xiǎn)[12]。SVM預(yù)測(cè)模型的主要思想是實(shí)現(xiàn)樣本數(shù)據(jù)的線性回歸,具體地,將線性不可分的樣本數(shù)據(jù)x通過(guò)非線性映射φ,映射到更高維的特征空間F,在高維空間F實(shí)現(xiàn)樣本數(shù)據(jù)的線性回歸。由于SVM可以實(shí)現(xiàn)對(duì)特定訓(xùn)練樣本的學(xué)習(xí)精度和無(wú)錯(cuò)誤地識(shí)別任意樣本能力的折中,從而被廣泛應(yīng)用于函數(shù)擬合等其他機(jī)器學(xué)習(xí)的問(wèn)題中[13]。
為了檢測(cè)由巨大的網(wǎng)絡(luò)流量數(shù)據(jù)引起的網(wǎng)絡(luò)入侵,文獻(xiàn)[14]針對(duì)非線性海量數(shù)據(jù)提出了一種基于深度置信網(wǎng)絡(luò)和支持向量機(jī)(DBN-SVM)的分類(lèi)算法,提高了分類(lèi)的準(zhǔn)確性,并為實(shí)時(shí)的網(wǎng)絡(luò)入侵檢測(cè)提供了基礎(chǔ)。文獻(xiàn)[15]將SVM預(yù)測(cè)模型應(yīng)用于經(jīng)濟(jì)預(yù)測(cè)領(lǐng)域,研究結(jié)果表明,支持向量機(jī)可以有效地減少噪聲數(shù)據(jù)的影響,并實(shí)現(xiàn)非線性區(qū)域經(jīng)濟(jì)變量之間的映射,提高了模型的預(yù)測(cè)精度。
實(shí)現(xiàn)用戶需求預(yù)測(cè)的目的在于:當(dāng)用戶瀏覽視頻網(wǎng)站時(shí),運(yùn)營(yíng)商可以基于用戶需求預(yù)測(cè)結(jié)果為目標(biāo)用戶提供其可能感興趣的視頻內(nèi)容,從而在提升用戶觀看體驗(yàn)的同時(shí)提高視頻資源的利用率,降低網(wǎng)絡(luò)運(yùn)營(yíng)成本。該文基于SVM預(yù)測(cè)模型實(shí)現(xiàn)對(duì)用戶觀看視頻需求的預(yù)測(cè),主要包括以下5個(gè)步驟:先獲取用戶信息及用戶觀看視頻信息;其次對(duì)獲取的用戶和視頻數(shù)據(jù)進(jìn)行探索及處理;然后利用訓(xùn)練數(shù)據(jù)訓(xùn)練模型并生成預(yù)測(cè)模型;再利用測(cè)試數(shù)據(jù)進(jìn)行模型預(yù)測(cè);最后將預(yù)測(cè)結(jié)果與實(shí)際情況進(jìn)行對(duì)比分析,實(shí)現(xiàn)對(duì)模型性能的評(píng)估。
構(gòu)建基于SVM的視頻用戶需求預(yù)測(cè)模型的關(guān)鍵在于尋求一條泛化性比較好的決策邊界,使得支持向量距離決策邊界盡可能的遠(yuǎn)。尋求最優(yōu)決策邊界的過(guò)程即為最大化支持向量到?jīng)Q策邊界的距離d的過(guò)程。
定義樣本的個(gè)數(shù)為M={1,2,…,m},假設(shè)x表示原來(lái)的樣本點(diǎn),用φ(x)表示x映射到高維特征空間F后得到的新向量,那么支撐向量到超平面wTφ(x)+b=0的幾何間隔表示為:
(1)
則優(yōu)化目標(biāo)表示為:
(2)
注意到幾何間隔d與‖w‖是成反比的,且|wTφ(x)+b|為固定值,因此最大化幾何間隔d的問(wèn)題可以轉(zhuǎn)化為最小化‖w‖的問(wèn)題。為了方便后邊求導(dǎo)計(jì)算,將目標(biāo)優(yōu)化問(wèn)題(2)進(jìn)一步轉(zhuǎn)化為(3):
(3)
為提高SVM視頻用戶需求預(yù)測(cè)模型的泛化能力,引入松弛變量ξi,則目標(biāo)優(yōu)化問(wèn)題將進(jìn)一步轉(zhuǎn)化為:
s.t. 1-yi(wTφ(xi)+b)-ξi≤0
ξi≥0,i=1,2,…,n
(4)
其中,C為懲罰因子且滿足C>0。分析可知:為使得樣本數(shù)據(jù)線性可分,需滿足C為無(wú)窮大時(shí),ξi必然無(wú)窮??;當(dāng)且僅當(dāng)C為有限值的時(shí)候,才會(huì)允許部分樣本不遵循約束條件。
通過(guò)添加拉格朗日乘子,構(gòu)造拉格朗日函數(shù),將問(wèn)題(4)轉(zhuǎn)化為無(wú)約束的優(yōu)化問(wèn)題,如下:
s.t.λi≥0,μi≥0
(5)
其中,λi和μi為拉格朗日乘子,利用強(qiáng)對(duì)偶性轉(zhuǎn)化,將式(5)轉(zhuǎn)化為:
s.t.λi≥0,μi≥0
(6)
分別對(duì)w,b和ξi求偏導(dǎo)數(shù),并令偏導(dǎo)數(shù)為0,得出如下關(guān)系:
(7)
將式(7)中的求導(dǎo)結(jié)果帶入式(6),得到新的目標(biāo)優(yōu)化函數(shù):
(8)
求解式(8),可以得到:
(9)
將支持向量(xs,ys)帶入:ys(wφ(xs)+b)=1,求出b為:
(10)
其中|S|為支持向量的個(gè)數(shù)。求出w和b后,便可以求得超平面wTφ(x)+b=0。
文中用到的數(shù)據(jù)是利用Python軟件爬取的嗶哩嗶哩網(wǎng)站上的用戶觀看視頻行為信息。首先爬取嗶哩嗶哩網(wǎng)站上熱門(mén)番劇的ID,然后根據(jù)番劇ID爬取番劇信息及追番用戶的相關(guān)信息。最終用于實(shí)驗(yàn)仿真的數(shù)據(jù)集是包含10 000行12列的用戶-視頻信息數(shù)據(jù)。
為避免噪聲數(shù)據(jù)對(duì)數(shù)據(jù)體量、復(fù)雜度以及處理結(jié)果準(zhǔn)確率和時(shí)效性的影響,利用小波方法對(duì)樣本數(shù)據(jù)進(jìn)行消噪處理,消除數(shù)據(jù)集中無(wú)效或異常的數(shù)據(jù),提高數(shù)據(jù)的收斂速度和模型預(yù)測(cè)的精度[16-18]。
由圖1可以看出,經(jīng)小波去噪后的數(shù)據(jù)與原數(shù)據(jù)相比,數(shù)據(jù)的大體趨勢(shì)并未發(fā)生變化。小波消噪可以在保證數(shù)據(jù)連續(xù)性和科學(xué)性的前提下,避免噪聲數(shù)據(jù)對(duì)預(yù)測(cè)模型的擾動(dòng)。
圖1 小波消噪前后對(duì)比
為避免多個(gè)屬性間強(qiáng)相關(guān)性對(duì)數(shù)據(jù)集分析產(chǎn)生干擾,提升預(yù)測(cè)模型的可靠性,需從番劇標(biāo)簽、追番人數(shù)、番劇評(píng)分、用戶性別、用戶等級(jí)、用戶粉絲數(shù)、用戶關(guān)注人數(shù)、用戶評(píng)論點(diǎn)贊數(shù)這8個(gè)屬性標(biāo)簽中選取對(duì)預(yù)測(cè)用戶評(píng)分貢獻(xiàn)較大的特征屬性,降低預(yù)測(cè)模型的復(fù)雜度。在對(duì)數(shù)據(jù)集進(jìn)行降維處理的過(guò)程中,需要保證篩選出的屬性要盡可能多地表征樣本數(shù)據(jù)的大部分信息,否則將不會(huì)降低數(shù)據(jù)分析的難度和復(fù)雜度,甚至?xí)?dǎo)致分析失敗。
將番劇標(biāo)簽、追番人數(shù)、番劇評(píng)分、用戶性別、用戶等級(jí)、用戶粉絲數(shù)、用戶關(guān)注人數(shù)、用戶評(píng)論點(diǎn)贊數(shù)這8個(gè)屬性標(biāo)簽分別編號(hào)為1-8,通過(guò)遞歸特征消除法對(duì)樣本數(shù)據(jù)中各屬性的貢獻(xiàn)值進(jìn)行篩選[19]。
圖2為各屬性對(duì)預(yù)測(cè)結(jié)果的貢獻(xiàn)值,設(shè)定閾值0.85可以將原來(lái)的8維數(shù)據(jù)集降為5維數(shù)據(jù)集。選出的5個(gè)主要特征屬性分別為:番劇標(biāo)簽、追番人數(shù)、番劇評(píng)分、用戶性別、用戶等級(jí)。將篩選出的5個(gè)屬性用于模型訓(xùn)練。
圖2 各屬性貢獻(xiàn)值
為避免因?qū)傩粤炕?jí)不同帶來(lái)的預(yù)測(cè)偏差,利用min-max標(biāo)準(zhǔn)化公式對(duì)樣本數(shù)據(jù)進(jìn)行歸一化處理。
(11)
其中,xi為屬性中第i個(gè)樣本的數(shù)據(jù);xmax和xmin為屬性的最大值和最小值。
圖3為數(shù)據(jù)集中原始的番劇評(píng)分?jǐn)?shù)據(jù)與歸一化處理后的番劇評(píng)分?jǐn)?shù)據(jù)對(duì)比圖。歸一化處理后避免了因樣本數(shù)據(jù)各屬性間量化級(jí)不同造成的誤差,可以提升模型的收斂速度和精度。
圖3 歸一化處理前后對(duì)比
首先將數(shù)據(jù)集分為訓(xùn)練集和預(yù)測(cè)集兩類(lèi),將數(shù)據(jù)集的70%作為訓(xùn)練集,30%作為測(cè)試集。在模型訓(xùn)練的過(guò)程中,分別基于表1中三個(gè)不同的核函數(shù)構(gòu)造SVM視頻用戶需求預(yù)測(cè)模型,預(yù)測(cè)結(jié)果如圖4所示。
表1 不同核函數(shù)的表達(dá)式
圖4 基于不同核函數(shù)的SVM預(yù)測(cè)結(jié)果對(duì)比
選取均方誤差(MSE)、平均絕對(duì)百分比誤差(MAPE)和準(zhǔn)確率(Accuracy)三個(gè)評(píng)價(jià)指標(biāo)分別從預(yù)測(cè)誤差和預(yù)測(cè)精準(zhǔn)度兩個(gè)方面對(duì)不同核函數(shù)下的SVM視頻用戶需求預(yù)測(cè)結(jié)果進(jìn)行對(duì)比,結(jié)果如表2所示。
表2 基于不同核函數(shù)的SVM用戶需求預(yù)測(cè)效果對(duì)比
根據(jù)統(tǒng)計(jì)學(xué)原理可知,MSE、MAPE兩者的數(shù)值越小,表示預(yù)測(cè)值與真實(shí)值的誤差越小,即預(yù)測(cè)結(jié)果越接近于真實(shí)值,而準(zhǔn)確率越高表明預(yù)測(cè)模型的預(yù)測(cè)效果越好。對(duì)比表2中不同核函數(shù)下的SVM預(yù)測(cè)結(jié)果可知,基于高斯核函數(shù)的SVM視頻用戶需求預(yù)測(cè)模型預(yù)測(cè)效果較好。
為降低視頻用戶需求預(yù)測(cè)模型的預(yù)測(cè)誤差,提高預(yù)測(cè)的準(zhǔn)確率,現(xiàn)針對(duì)高斯核函數(shù)下的SVM視頻用戶需求預(yù)測(cè)模型進(jìn)行參數(shù)調(diào)優(yōu)。隨機(jī)選取4組參數(shù)對(duì)(C,δ)進(jìn)行對(duì)比實(shí)驗(yàn),其中C為懲罰系數(shù),δ為高斯核函數(shù)系數(shù),預(yù)測(cè)對(duì)比結(jié)果如圖5所示。
圖5 基于不同參數(shù)對(duì)的SVM預(yù)測(cè)結(jié)果對(duì)比
通過(guò)對(duì)比表3中不同參數(shù)對(duì)SVM視頻用戶預(yù)測(cè)模型的MSE、MAPE和Accuracy,可以得到C=2.25,δ=1.25時(shí)的SVM視頻用戶需求預(yù)測(cè)模型最佳。
表3 基于參數(shù)C和δ的SVM預(yù)測(cè)效果對(duì)比
文中將用戶觀看視頻行為的數(shù)據(jù)作為訓(xùn)練集,以用戶數(shù)據(jù)及其對(duì)視頻需求的關(guān)系為基準(zhǔn),提出基于不同核函數(shù)下的SVM視頻用戶需求預(yù)測(cè)模型,并對(duì)高斯核函數(shù)下的SVM視頻用戶需求預(yù)測(cè)模型進(jìn)行參數(shù)調(diào)優(yōu),通過(guò)對(duì)預(yù)測(cè)結(jié)果的誤差和準(zhǔn)確度進(jìn)行對(duì)比分析,驗(yàn)證了參數(shù)優(yōu)化的有效性。優(yōu)化后的SVM視頻用戶需求預(yù)測(cè)模型的預(yù)測(cè)結(jié)果的MSE為0.012 5,MAPE為0.075 5,準(zhǔn)確度為90.32%。該研究成果有助于運(yùn)營(yíng)商精準(zhǔn)掌握用戶需求,提升平臺(tái)為用戶推薦視頻的成功率,減少用戶在海量網(wǎng)絡(luò)視頻資源中搜索視頻內(nèi)容的時(shí)間。未來(lái)還需進(jìn)一步考慮如何結(jié)合神經(jīng)網(wǎng)絡(luò)算法對(duì)參數(shù)進(jìn)行智能調(diào)優(yōu),進(jìn)一步降低模型預(yù)測(cè)的誤差,以提高預(yù)測(cè)的準(zhǔn)確度。