一種基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法
【專利摘要】本發(fā)明公開了一種基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法,其基本原理是把用戶將來(lái)某個(gè)時(shí)間段要訪問的內(nèi)容預(yù)取到家庭網(wǎng)關(guān)的緩存空間,則用戶消費(fèi)這部分內(nèi)容時(shí)不用等待,具有很好的用戶體驗(yàn)。該方法由安裝于家庭網(wǎng)關(guān)的內(nèi)容管理代理和一個(gè)用戶行為預(yù)測(cè)中心組成。內(nèi)容管理代理搜集用戶行為信息,發(fā)送給用戶行為預(yù)測(cè)中心;內(nèi)容管理代理根據(jù)預(yù)測(cè)報(bào)告預(yù)取網(wǎng)絡(luò)內(nèi)容緩存于家庭網(wǎng)關(guān)的本地存儲(chǔ),并重定向用戶的內(nèi)容消費(fèi)請(qǐng)求到本地緩存。用戶行為預(yù)測(cè)中心基于用戶的歷史行為預(yù)測(cè)用戶將來(lái)某個(gè)時(shí)間段可能消費(fèi)的網(wǎng)絡(luò)內(nèi)容,并返回預(yù)測(cè)結(jié)果給相應(yīng)的內(nèi)容管理代理。本發(fā)明能夠有效解決用戶消費(fèi)高分辨率視頻的緩沖時(shí)間過長(zhǎng)問題;同時(shí),本發(fā)明可以降低內(nèi)容服務(wù)器的壓力。
【專利說(shuō)明】-種基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于互聯(lián)網(wǎng)內(nèi)容分發(fā)領(lǐng)域,更為具體地講,設(shè)及一種面向接入網(wǎng)的基于用 戶行為的網(wǎng)絡(luò)內(nèi)容加速方法。
【背景技術(shù)】
[0002] 隨著用戶消費(fèi)高清視頻等大容量網(wǎng)絡(luò)內(nèi)容需求的增加,高效的內(nèi)容分發(fā)技術(shù)成為 一個(gè)迫切需求。目前的網(wǎng)絡(luò)接入條件無(wú)法有效滿足高清視頻消費(fèi),不論是網(wǎng)絡(luò)接入帶寬還 是服務(wù)器的服務(wù)能力都可能成為瓶頸,導(dǎo)致了視頻流緩沖時(shí)間長(zhǎng),播放時(shí)斷時(shí)續(xù),用戶體驗(yàn) 極差。目前,相關(guān)的內(nèi)容加速技術(shù)主要包括;Web caching,基于P2P(?ee;r to Peer)的內(nèi)容 分發(fā),專用的CDN(Content Delivery Network)等,下面具體描述該些技術(shù)。
[000引 Web caching是加速網(wǎng)絡(luò)內(nèi)容的技術(shù)之一,主要面向web內(nèi)容,如HTML文檔等。 Web Caching作用于瀏覽器和服務(wù)器之間,當(dāng)它收到客戶端發(fā)往Web服務(wù)器的請(qǐng)求之后,先 要檢查一下請(qǐng)求的內(nèi)容是否在緩存中,如果在,就將存儲(chǔ)在本地的Web信息提供給用戶,而 不必從源服務(wù)器去獲取;如果用戶請(qǐng)求的內(nèi)容沒有存儲(chǔ)在緩存中,代理服務(wù)器就將用戶的 請(qǐng)求轉(zhuǎn)發(fā)給到相應(yīng)的Web服務(wù)器。Web服務(wù)器響應(yīng)用戶請(qǐng)求傳送給用戶的頁(yè)面會(huì)先到達(dá)代 理服務(wù)器。代理服務(wù)器會(huì)將頁(yè)面存放在本地的緩存中,然后再把它轉(zhuǎn)發(fā)給相應(yīng)的Web客戶 端。由于緩存中的網(wǎng)絡(luò)內(nèi)容可能用于服務(wù)隨后的請(qǐng)求,加快了用戶獲取網(wǎng)絡(luò)內(nèi)容的速度,同 時(shí)減少了對(duì)網(wǎng)絡(luò)帶寬的占用。由上可見,Web caching的基本思想是重用已經(jīng)獲取的網(wǎng)絡(luò) 內(nèi)容,該種內(nèi)容加速技術(shù)適用于重用率比較高應(yīng)用(如網(wǎng)頁(yè)),但是對(duì)于僅一次性訪問的內(nèi) 容(如視頻)來(lái)說(shuō),Web caching是無(wú)能為力的。
[0004] 對(duì)于P2P內(nèi)容分發(fā)技術(shù)來(lái)說(shuō),由于系統(tǒng)中每個(gè)節(jié)點(diǎn)既是服務(wù)的請(qǐng)求者又是服務(wù)的 提供者,節(jié)點(diǎn)在使用服務(wù)的同時(shí)也提供了服務(wù),提高了整個(gè)系統(tǒng)的服務(wù)能力。P2P系統(tǒng)的 用戶越多,其聚集的帶寬也就越大,因此具有很好的可擴(kuò)展性,特別適合直播類的流媒體服 務(wù)。P2P系統(tǒng)的服務(wù)能力取決于每個(gè)節(jié)點(diǎn)貢獻(xiàn)的服務(wù)能力,然后對(duì)于接入網(wǎng)而言,其上行帶 寬普遍小于下行帶寬,因此P2P系統(tǒng)不適合接入網(wǎng)的應(yīng)用場(chǎng)景。另一方面,P2P系統(tǒng)在節(jié)點(diǎn) 越多的情況下表現(xiàn)得越好,因此不適合非流行內(nèi)容的分發(fā)。
[0005] 內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network, CDN)是由??诠咎峁┑膬?nèi)容加速 服務(wù),其基本思想是將客戶(如某個(gè)網(wǎng)站)要分發(fā)的內(nèi)容部署在網(wǎng)絡(luò)邊緣的復(fù)本服務(wù)器上, 當(dāng)用戶訪問網(wǎng)站的內(nèi)容時(shí),系統(tǒng)會(huì)自動(dòng)把客戶重定向到離用戶最近的復(fù)本服務(wù)器,從而降 低用戶訪問網(wǎng)絡(luò)內(nèi)容的時(shí)延。由于CDN在全球或者很大的范圍部署了較多的服務(wù)器,因此 可W測(cè)量較大范圍網(wǎng)絡(luò)的狀況,把用戶的請(qǐng)求重定向到服務(wù)質(zhì)量最好的服務(wù)器,從而具有 較好的效果。本質(zhì)上來(lái)說(shuō),CDN將內(nèi)容前推到更接近用戶,提高了內(nèi)容服務(wù)的能力,在一定 程度上改善了內(nèi)容分發(fā)的性能。CDN的效果取決于其部署的服務(wù)器的網(wǎng)絡(luò)位置,通常需要較 多的服務(wù)器才能滿足用戶需求。就目前的網(wǎng)絡(luò)接入狀況而言,接入網(wǎng)絡(luò)可能成為瓶頸,即使 服務(wù)器的服務(wù)能力再大也無(wú)法有效實(shí)現(xiàn)高清流媒體播放。另外,CDN的部署需要大量資金 投入,因此使用成本也是一個(gè)需要考慮的因素。
[0006] 鑒于CDN和P2P各自的優(yōu)缺點(diǎn),將P2P融入CDN的技術(shù)也被廣泛研究。CDN將網(wǎng) 絡(luò)內(nèi)容前推到更接近用戶,P2P技術(shù)能夠有效聚集節(jié)點(diǎn)的服務(wù)能力(比如網(wǎng)絡(luò)帶寬、存儲(chǔ)和 計(jì)算能力),兩者結(jié)合能夠有效解決CDN服務(wù)器服務(wù)能力的問題,但是面臨接入網(wǎng)的帶寬限 審IJ,也是無(wú)法解決大容量數(shù)據(jù)傳輸問題。而且,該里的P2P應(yīng)用同樣受限于節(jié)點(diǎn)的上行帶寬 遠(yuǎn)低于下行帶寬的限制,其效果也是有限的。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明的目的是;用戶消費(fèi)大容量網(wǎng)絡(luò)內(nèi)容(如高清視頻等)的需求日益增加, 然而目前的網(wǎng)絡(luò)接入狀況通常無(wú)法滿足用戶需求,表現(xiàn)為高清視頻播放的緩存時(shí)間過長(zhǎng), 播放時(shí)斷時(shí)續(xù)等問題,用戶體驗(yàn)極差;另外,在信息過載的互聯(lián)網(wǎng)時(shí)代,用戶常常W大海撰 針的方式去互聯(lián)網(wǎng)捜索自己感興趣的影片,造成大量的時(shí)間浪費(fèi),用戶體驗(yàn)極差。本發(fā)明 用于解決上述問題,提出了基于用戶行為的內(nèi)容加速方法,根據(jù)用戶的網(wǎng)絡(luò)行為,建模用 戶的網(wǎng)絡(luò)內(nèi)容偏好,預(yù)測(cè)用戶會(huì)在將來(lái)某個(gè)時(shí)間段消費(fèi)某個(gè)網(wǎng)絡(luò)內(nèi)容,預(yù)取部分內(nèi)容部署 到距離用戶最近的家庭網(wǎng)關(guān)(或者機(jī)頂盒、移動(dòng)終端),能夠極大改善用戶體驗(yàn),提高網(wǎng) 絡(luò)資源的利用率。本發(fā)明基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法,包括兩個(gè)組成部分;內(nèi)容管 理代理(Content Management Agent, CMA)和用戶行為預(yù)測(cè)中屯、炬ehavior Prediction Center, BPC)。內(nèi)容管理代理運(yùn)行于家庭網(wǎng)關(guān)(或者機(jī)頂盒、移動(dòng)終端),用于提取用戶的網(wǎng) 絡(luò)內(nèi)容消費(fèi)行為,發(fā)送給用戶行為預(yù)測(cè)中屯、,接收預(yù)測(cè)中屯、的預(yù)測(cè)報(bào)告,然后根據(jù)預(yù)測(cè)報(bào)告 代理用戶預(yù)取網(wǎng)絡(luò)內(nèi)容,重定向用戶的網(wǎng)絡(luò)內(nèi)容訪問請(qǐng)求到本地緩存的數(shù)據(jù)。用戶行為預(yù) 測(cè)中屯、,通過爬蟲等手段從互聯(lián)網(wǎng)獲取"賬戶一網(wǎng)絡(luò)內(nèi)容"評(píng)分信息,構(gòu)建"用戶一物品"評(píng) 分矩陣,該部分?jǐn)?shù)據(jù)相當(dāng)于訓(xùn)練集;同時(shí),預(yù)測(cè)中屯、爬取網(wǎng)頁(yè)信息、與"物品"相關(guān)的文本信 息,建模網(wǎng)頁(yè)內(nèi)容、"物品"等的主題模型,W備預(yù)測(cè)用戶的消費(fèi)行為之用。預(yù)測(cè)中屯、接收內(nèi) 容管理代理發(fā)送的用戶行為信息,基于前面的訓(xùn)練集和網(wǎng)絡(luò)內(nèi)容的主題模型計(jì)算用戶在將 來(lái)某個(gè)時(shí)間段可能消費(fèi)的網(wǎng)絡(luò)內(nèi)容并返回該報(bào)表信息。
[000引 內(nèi)容管理代理的運(yùn)行步驟如下:
[0009] S1 ;啟動(dòng)家庭網(wǎng)關(guān),用戶通過家庭網(wǎng)關(guān)接入互聯(lián)網(wǎng)進(jìn)行網(wǎng)頁(yè)瀏覽、觀看流媒體視頻 等。
[0010] S2;家庭網(wǎng)關(guān)內(nèi)部署內(nèi)容管理代理,該代理分析經(jīng)過家庭網(wǎng)關(guān)的流量,提取用戶所 訪問的網(wǎng)絡(luò)內(nèi)容的統(tǒng)一資源定位器扣化),形成<t,hash化化)〉序列,其中hash扣化)表示 U化對(duì)應(yīng)的哈希值,而t表示訪問該U化的時(shí)間戳。并將該序列周期性地發(fā)送給用戶行為預(yù) 測(cè)中屯、。
[0011] S3 ;當(dāng)用戶初次使用此系統(tǒng)時(shí),內(nèi)容管理代理會(huì)彈出網(wǎng)頁(yè)請(qǐng)求用戶對(duì)一些網(wǎng)絡(luò)內(nèi) 容(比如:網(wǎng)頁(yè)、電影等)打分,并將此信息發(fā)送給用戶行為預(yù)測(cè)中屯、,W便預(yù)測(cè)中屯、建模用 戶的初始偏好。
[0012] S4;內(nèi)容管理代理周期性從用戶行為預(yù)測(cè)中屯、獲取預(yù)測(cè)報(bào)表,得知用戶在將來(lái)某 個(gè)時(shí)間段會(huì)W較高概率消費(fèi)某些網(wǎng)絡(luò)內(nèi)容,內(nèi)容管理代理從內(nèi)容提供商預(yù)取相應(yīng)內(nèi)容的起 始部分緩存到本地存儲(chǔ),緩存內(nèi)容的播放時(shí)間應(yīng)大于基于現(xiàn)有網(wǎng)絡(luò)狀況準(zhǔn)備好后續(xù)播放數(shù) 據(jù)的時(shí)間。同時(shí),內(nèi)容管理代理需要管理緩存空間,淘汰無(wú)用數(shù)據(jù)。
[001引 S5;用戶訪問網(wǎng)絡(luò)內(nèi)容時(shí),內(nèi)容管理代理彈出推薦內(nèi)容給用戶,引導(dǎo)用戶的內(nèi)容消 費(fèi)行為;無(wú)論推薦命中與否,內(nèi)容管理代理都重定向用戶的內(nèi)容訪問請(qǐng)求到本地緩存,并代 理用戶下載后續(xù)數(shù)據(jù)。用戶觀看完某個(gè)內(nèi)容后,系統(tǒng)彈出網(wǎng)頁(yè),請(qǐng)求用戶給對(duì)應(yīng)物品一個(gè)評(píng) 分。此過程對(duì)用戶來(lái)說(shuō)是透明的。
[0014] 用戶行為預(yù)測(cè)中屯、的運(yùn)行步驟如下:
[0015] S1 ;中屯、通過爬取互聯(lián)網(wǎng)公開數(shù)據(jù),獲得"物品"相關(guān)信息,提取其中的"用戶賬 戶一網(wǎng)絡(luò)內(nèi)容"評(píng)分信息,融合該些信息構(gòu)建"用戶一物品"評(píng)分矩陣,該評(píng)分矩陣的數(shù)據(jù)作 為訓(xùn)練集并且一直處于更新中。同時(shí),中屯、從"物品"的相關(guān)信息(如簡(jiǎn)介、評(píng)論等)中提取 與物品相關(guān)的文本信息,W此作為描述對(duì)應(yīng)物品的文本信息,然后利用主題分析算法(如 LDA算法)提取其中的主題,該個(gè)主題集合構(gòu)成對(duì)應(yīng)"物品"的主題模型。預(yù)測(cè)中屯、也爬取 網(wǎng)頁(yè)信息,構(gòu)建網(wǎng)頁(yè)的主題模型為〈hash化化),T〉,其中hash扣化)是網(wǎng)頁(yè)對(duì)應(yīng)U化的哈希 值,而T是該網(wǎng)頁(yè)內(nèi)容的主題集合。
[0016] S2;接收來(lái)自內(nèi)容管理代理的用戶內(nèi)容訪問信息,累計(jì)的用戶內(nèi)容評(píng)分信息,構(gòu)建 與S1中的評(píng)分矩陣的列對(duì)齊的評(píng)分向量B,并將B加入到評(píng)分矩陣,通過矩陣補(bǔ)全算法可 W預(yù)測(cè)出用戶未評(píng)分"物品"的評(píng)分,選擇前N個(gè)作為候選集。另一方面,累計(jì)用戶在過去 d天的網(wǎng)頁(yè)訪問元組<t,hash扣化)〉序列,基于S1所得的網(wǎng)頁(yè)主題模型〈hash扣RL),T〉,建 模用戶在過去d天的主題集合。該里d的取值可W是1,2, 3等,如果d取1時(shí)獲得的結(jié)果 較少,則d取2,依此類推。然后采用相似度度量(如cosine相似度)計(jì)算用戶的主題模型 和物品的主題模型,其中排列前H的作為最終的預(yù)測(cè)結(jié)果。該里H的取值主要基于緩存空 間的大小,如果緩存空間較大,則可W取較大的H。然后返回分析報(bào)告給相應(yīng)的內(nèi)容管理代 理。
[0017] 本發(fā)明利用家庭網(wǎng)關(guān)用戶的穩(wěn)定性及家庭網(wǎng)關(guān)常開的特征,基于用戶的內(nèi)容消費(fèi) 行為趨勢(shì),預(yù)取用戶將要消費(fèi)的網(wǎng)絡(luò)內(nèi)容到家庭網(wǎng)關(guān)本地緩存,將內(nèi)容分發(fā)推進(jìn)到距離用 戶最近的家庭網(wǎng)關(guān)。其明顯有益效果包括:
[0018] (1)極大地縮短網(wǎng)絡(luò)內(nèi)容緩沖時(shí)延?;跍?zhǔn)確的用戶行為預(yù)測(cè),能夠提前將用戶要 消費(fèi)的網(wǎng)絡(luò)內(nèi)容緩存于家庭網(wǎng)關(guān),用戶訪問該部分內(nèi)容時(shí),基本無(wú)時(shí)延,后續(xù)內(nèi)容可W在播 放已緩存內(nèi)容時(shí)補(bǔ)充上來(lái)。
[0019] (2)充分利用接入網(wǎng)的空閑帶寬。家庭網(wǎng)關(guān)的接入帶寬存在較多的空閑時(shí)間(比 如用戶上班時(shí)間、睡覺時(shí)間等),而內(nèi)容預(yù)取通常安排在該樣的空閑時(shí)段,因此充分利用了 該部分空閑帶寬。
[0020] (3)避免用戶大范圍捜尋消費(fèi)內(nèi)容。在信息過載的時(shí)代,用戶往往不知道消費(fèi)哪個(gè) 網(wǎng)絡(luò)內(nèi)容,基于本發(fā)明的用戶行為預(yù)測(cè),能夠W高概率命中用戶的消費(fèi)愿望,提高用戶的體 驗(yàn)。
[0021] (4)緩解內(nèi)容服務(wù)器的壓力,降低內(nèi)容服務(wù)商的基礎(chǔ)設(shè)施投資。用戶的內(nèi)容消費(fèi)行 為具有一定的規(guī)律性,因此內(nèi)容服務(wù)器的工作壓力也是具有一定的規(guī)律性。在用戶請(qǐng)求高 峰期時(shí),內(nèi)容服務(wù)器的工作壓力大,而其它時(shí)候卻相對(duì)空閑?;诒景l(fā)明的內(nèi)容預(yù)取技術(shù), 用戶的內(nèi)容請(qǐng)求分散到不同時(shí)段,該樣就能相對(duì)均勻地把內(nèi)容服務(wù)器的工作壓力分散到不 同時(shí)段,因此內(nèi)容服務(wù)商不需要投過多資源到基礎(chǔ)設(shè)施來(lái)滿足最高峰的內(nèi)容請(qǐng)求。
【專利附圖】
【附圖說(shuō)明】
[0022] 圖1是本發(fā)明基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法的工作流程示意圖;
[0023] 圖2內(nèi)容管理代理工作流程圖;
[0024] 圖3用戶行為預(yù)測(cè)中屯、工作流程圖。
【具體實(shí)施方式】
[0025] 下面結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】進(jìn)行描述,W便本領(lǐng)域的技術(shù)人員更好地 理解本發(fā)明。需要特別提醒注意的是,在W下的描述中,當(dāng)已知功能和設(shè)計(jì)的詳細(xì)描述也許 會(huì)淡化本發(fā)明的主要內(nèi)容時(shí),該些描述在該里將被忽略。
[0026] 實(shí)施例
[0027] 圖1是本發(fā)明基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法的工作流程示意圖。如圖1所示, 基于本發(fā)明所構(gòu)建的系統(tǒng)主要包括兩個(gè)組成部分;內(nèi)容管理代理和用戶行為預(yù)測(cè)中屯、。內(nèi) 容管理代理基于用戶行為預(yù)取網(wǎng)絡(luò)內(nèi)容緩存于家庭網(wǎng)關(guān)W備用戶消費(fèi)網(wǎng)絡(luò)內(nèi)容的需要;用 戶行為預(yù)測(cè)中屯、收集網(wǎng)絡(luò)數(shù)據(jù)構(gòu)建用戶行為預(yù)測(cè)訓(xùn)練集并根據(jù)用戶請(qǐng)求進(jìn)行用戶行為預(yù) 巧。。下面對(duì)具體的實(shí)施步驟進(jìn)行詳細(xì)說(shuō)明。
[002引 S101 ;訓(xùn)練數(shù)據(jù)及相關(guān)數(shù)據(jù)收集
[0029] 用戶行為預(yù)測(cè)需基于特定的訓(xùn)練數(shù)據(jù)集,即大量的"用戶一物品"評(píng)分信息;同時(shí), 為了提高預(yù)測(cè)的準(zhǔn)確性,還需要其它關(guān)于用戶行為的數(shù)據(jù)。本方法提出了推薦算法與主題 匹配相結(jié)合的用戶行為預(yù)測(cè)方法,因此需要推薦算法所需的訓(xùn)練數(shù)據(jù)集和主題相關(guān)數(shù)據(jù)。 推薦算法所需的訓(xùn)練數(shù)據(jù)即"用戶一物品"評(píng)分?jǐn)?shù)據(jù)通常散布于不同的網(wǎng)站(如化utube、 tudou等),因此需要使用爬蟲的網(wǎng)絡(luò)工具爬取并組織成可用的"用戶一物品"評(píng)分矩陣。同 時(shí),由于互聯(lián)網(wǎng)上的"物品"持續(xù)變化(比如,新增和淘汰),該個(gè)訓(xùn)練集也需要持續(xù)更新。用 戶行為預(yù)測(cè)中,還需要"物品"的主題模型和網(wǎng)頁(yè)內(nèi)容的主題模型。為了建立"物品"的主題 模型,需要與"物品"關(guān)聯(lián)的文本信息。數(shù)據(jù)捜集過程中,本方法同時(shí)收集與"物品"相關(guān)聯(lián)的 文本信息,如;簡(jiǎn)介、評(píng)論等等,合并為一個(gè)文檔,采用主題提取算法(如;LDA)提取對(duì)應(yīng)"物 品"的主題集合。為了建模用戶的主題模型,本方法還需要爬取網(wǎng)頁(yè),構(gòu)建〈hash扣化),T〉 二元組,其中hash扣化)為網(wǎng)頁(yè)對(duì)應(yīng)U化的哈希值(通過此值與用戶訪問的網(wǎng)頁(yè)相關(guān)聯(lián)), 而T為對(duì)應(yīng)網(wǎng)頁(yè)內(nèi)容的主題集合。
[0030] S102 ;用戶行為信息收集
[0031] 用戶的網(wǎng)絡(luò)內(nèi)容消費(fèi)行為預(yù)測(cè)需要訓(xùn)練集,同時(shí)也需要用戶的歷史偏好,因此需 要用戶行為信息收集功能。用戶行為在各獨(dú)立的網(wǎng)站可W分別收集,但是該些信息相對(duì)獨(dú) 立,局限于具體的網(wǎng)站。本發(fā)明采用網(wǎng)絡(luò)流量分析來(lái)提取用戶行為,即在家庭網(wǎng)關(guān)部署內(nèi)容 管理代理,該程序分析網(wǎng)絡(luò)流量,提取用戶的內(nèi)容消費(fèi)行為信息,包括兩方面信息。
[0032] 首先,用戶對(duì)網(wǎng)絡(luò)內(nèi)容的評(píng)分。初次使用時(shí),也就是如果內(nèi)容管理代理沒有關(guān)于用 戶行為的任何數(shù)據(jù)時(shí),內(nèi)容管理代理會(huì)W彈出網(wǎng)頁(yè)形式請(qǐng)求用戶對(duì)一些"物品"(如視頻內(nèi) 容)進(jìn)行評(píng)分。采用該種方式可W獲得用戶的一些初始偏好,W便預(yù)測(cè)算法可W啟動(dòng)。在 用戶消費(fèi)了某個(gè)網(wǎng)絡(luò)內(nèi)容后,內(nèi)容管理代理也會(huì)請(qǐng)求用戶對(duì)該內(nèi)容進(jìn)行評(píng)分,W此來(lái)獲得 較準(zhǔn)確的用戶行為。該些信息在用戶行為預(yù)測(cè)中屯、構(gòu)成用戶對(duì)"物品"的評(píng)分向量。
[0033] 第二,用戶所感興趣的主題。通過分析網(wǎng)絡(luò)流量,內(nèi)容代理可W提取用戶所瀏覽網(wǎng) 頁(yè)的U化,構(gòu)建二元組<t,hash化化)〉,其中t是消費(fèi)對(duì)應(yīng)U化的時(shí)間戳,而hash扣化)是該 u化對(duì)應(yīng)的哈希值,該元組序列周期性發(fā)送給預(yù)測(cè)中屯、,構(gòu)成用戶的主題偏好集合。
[0034] S103 ;用戶消費(fèi)趨勢(shì)預(yù)測(cè)請(qǐng)求
[0035] 內(nèi)容管理代理在預(yù)取內(nèi)容時(shí)需要知道取什么內(nèi)容,但是由于內(nèi)容管理代理所在的 平臺(tái)通常功能較弱,不適合做大量運(yùn)算,因此預(yù)測(cè)過程由預(yù)測(cè)中屯、完成,內(nèi)容管理代理向用 戶行為預(yù)測(cè)中屯、發(fā)起預(yù)測(cè)請(qǐng)求。
[0036] S104 ;用戶消費(fèi)趨勢(shì)預(yù)測(cè)報(bào)告
[0037] 用戶行為預(yù)測(cè)中屯、返回形成的用戶消費(fèi)趨勢(shì)預(yù)測(cè)報(bào)告,即預(yù)測(cè)評(píng)分中前H個(gè)物 品。該里的H需根據(jù)具體的緩存空間大小和用戶的接入網(wǎng)絡(luò)帶寬來(lái)確定。
[0038] S105 ;網(wǎng)絡(luò)內(nèi)容預(yù)取緩存
[0039] 內(nèi)容管理代理根據(jù)所接收到的用戶消費(fèi)趨勢(shì)預(yù)測(cè)報(bào)告,預(yù)取該些用戶最感興趣的 內(nèi)容到家庭網(wǎng)關(guān)本地緩存,W備用戶消費(fèi)之用。
[0040] 圖2是內(nèi)容管理代理工作流程圖。如圖2所示,內(nèi)容管理代理包含=個(gè)相對(duì)獨(dú)立 的功能模塊,每個(gè)功能模塊的工作流程細(xì)節(jié)說(shuō)明如下。
[0041] S201 ;判斷用戶是否首次使用系統(tǒng)
[0042] 用戶啟動(dòng)家庭網(wǎng)關(guān),內(nèi)容管理代理自動(dòng)啟動(dòng)運(yùn)行,內(nèi)容管理代理檢測(cè)是否保存有 用戶的歷史行為信息?如果沒有,則認(rèn)為是首次使用此系統(tǒng);否則認(rèn)為不是首次使用系統(tǒng)。
[0043] S202 ;獲取初始"用戶一物品"評(píng)分
[0044] 如果是首次使用系統(tǒng),需要獲取用戶的初始行為信息,W便系統(tǒng)能夠良好工作。系 統(tǒng)向用戶終端彈出網(wǎng)頁(yè),請(qǐng)求用戶對(duì)給出的內(nèi)容打分,比如:系統(tǒng)通過網(wǎng)頁(yè)列出一些經(jīng)典的 電影,請(qǐng)求用戶給該些內(nèi)容給一個(gè)評(píng)分,如果用戶沒有看過,則給0分。通過該種方式,可W 獲得用戶的初始?xì)v史行為。
[0045] S203 ;分離網(wǎng)絡(luò)內(nèi)容訪問流量
[0046] 本方法主要關(guān)注網(wǎng)絡(luò)內(nèi)容的加速,因此需要分離出對(duì)訪問網(wǎng)絡(luò)內(nèi)容的流量,W便 建立用戶的行為模型。該里的網(wǎng)絡(luò)內(nèi)容,主要包括網(wǎng)頁(yè)和流媒體,該些內(nèi)容主要通過http 協(xié)議承載,因此該里分離出ht化協(xié)議流量。如果其它種類協(xié)議也廣泛用于流媒體分發(fā),本 方法也可W進(jìn)一步分離出該類協(xié)議的流量。
[0047] S204 ;判斷是否為網(wǎng)頁(yè)內(nèi)容
[0048] 網(wǎng)頁(yè)內(nèi)容和流媒體內(nèi)容在建模用戶行為方面所起作用是不一致的,因此本方法需 要分類該兩種流量,W便分別處理。
[0049] S205 ;提取網(wǎng)頁(yè)內(nèi)容的U化
[0化日]如果對(duì)應(yīng)的網(wǎng)絡(luò)內(nèi)容是網(wǎng)頁(yè),則提取該網(wǎng)頁(yè)對(duì)應(yīng)的U化,形成二元組 <t,hash扣化)〉,其中t是訪問該U化的時(shí)間,hash化化)是該U化對(duì)應(yīng)的哈希值,該里的哈 希函數(shù)可W選擇sha-2。
[005U S206 ;構(gòu)造<t,hash(U化)〉序列,周期性發(fā)送給中屯、
[005引累積二元組<t,hash扣化)〉,形成一個(gè)序列,周期性發(fā)送給行為預(yù)測(cè)中心W便建 立對(duì)應(yīng)此家庭網(wǎng)關(guān)的用戶行為模型。其中,根據(jù)用戶訪問網(wǎng)頁(yè)內(nèi)容的頻繁程度,周期可W從 1天到一周。用戶訪問網(wǎng)絡(luò)內(nèi)容越頻繁,二元組<t,hash扣化)〉序列的發(fā)送周期就越短,W 便及時(shí)反映用戶行為。
[0化3] S207 ;提取內(nèi)容訪問請(qǐng)求U化
[0054] 如果用戶訪問的內(nèi)容不是網(wǎng)頁(yè),則認(rèn)為是流媒體內(nèi)容,該里需要提取流媒體內(nèi)容 訪問請(qǐng)求的U化。
[0化5] S208 ;重定向訪問請(qǐng)求到本地
[0化6] 內(nèi)容管理代理重定向內(nèi)容訪問請(qǐng)求到本地,如果本地已經(jīng)緩存相應(yīng)的內(nèi)容,則提 供相應(yīng)內(nèi)容,否則認(rèn)為緩存對(duì)應(yīng)的內(nèi)容量為0。無(wú)論本地是否緩存相應(yīng)內(nèi)容,在提供內(nèi)容服 務(wù)的同時(shí),都需要運(yùn)行S209。在緩存命中的情況下,用戶能夠獲得更好的體驗(yàn)。
[0057] S209 ;代理用戶下載剩余內(nèi)容
[0化引內(nèi)容管理代理把剩余的內(nèi)容下載到本地,W供用戶消費(fèi)。
[0059] S210 ;獲取用戶內(nèi)容消費(fèi)后的評(píng)分
[0060] 用戶消費(fèi)完某個(gè)內(nèi)容后,內(nèi)容管理代理彈出網(wǎng)頁(yè),請(qǐng)求用戶對(duì)該內(nèi)容評(píng)分,用戶也 可W評(píng)價(jià)該內(nèi)容。用戶提交后,該種用戶產(chǎn)生的內(nèi)容被發(fā)送給用戶行為預(yù)測(cè)中屯、,作為用戶 行為的一部分,也可W匯聚到用戶行為預(yù)測(cè)的訓(xùn)練集中。
[0061] S211 ;周期性探測(cè)網(wǎng)絡(luò)是否空閑
[0062] 為了不影響用戶正常的網(wǎng)絡(luò)使用,內(nèi)容預(yù)取等操作被作為最低優(yōu)先級(jí),因此該類 內(nèi)容預(yù)取操作通常在網(wǎng)絡(luò)空閑時(shí)進(jìn)行。內(nèi)容管理代理探測(cè)網(wǎng)絡(luò)是否有其它應(yīng)用流量,一旦 網(wǎng)絡(luò)存在較大空閑帶寬,則進(jìn)行預(yù)取操作。
[0063] S212 ;用戶行為預(yù)測(cè)請(qǐng)求
[0064] 內(nèi)容管理代理進(jìn)行內(nèi)容預(yù)取時(shí),需要確定要預(yù)取的內(nèi)容,而該內(nèi)容通常是取決于 用戶的內(nèi)容消費(fèi)趨勢(shì),因此內(nèi)容管理代理需要向用戶行為預(yù)測(cè)中屯、發(fā)起用戶行為預(yù)測(cè)請(qǐng) 求。
[00化]S213 ;接收用戶行為預(yù)測(cè)報(bào)告
[0066] 用戶行為預(yù)測(cè)中屯、完成用戶的內(nèi)容消費(fèi)行為預(yù)測(cè)后,向內(nèi)容管理代理返回預(yù)測(cè)報(bào) 告,因此內(nèi)容管理代理需要接收用戶行為預(yù)測(cè)報(bào)告。
[0067] S214 ;預(yù)取網(wǎng)絡(luò)內(nèi)容并緩存
[0068] 根據(jù)用戶行為預(yù)測(cè)報(bào)告,內(nèi)容管理代理預(yù)取相應(yīng)的內(nèi)容到本地緩存。預(yù)取內(nèi)容時(shí), 首先考慮用戶最可能消費(fèi)的內(nèi)容,具體預(yù)取多少內(nèi)容,取決于緩存空間的容量和用戶的網(wǎng) 絡(luò)接入帶寬。
[0069] 圖3是用戶行為預(yù)測(cè)中屯、的工作流程圖。如圖3所示,用戶行為預(yù)測(cè)中屯、包含兩個(gè) 相對(duì)獨(dú)立的模塊,其一是持續(xù)更新用戶行為預(yù)測(cè)訓(xùn)練集,另一個(gè)是用戶內(nèi)容消費(fèi)行為預(yù)測(cè)。 具體的工作步驟詳細(xì)描述如下。
[0070] S301 ;爬取并解析與物品相關(guān)的信息
[0071] 利用網(wǎng)絡(luò)爬蟲爬取并解析互聯(lián)網(wǎng)上的公開數(shù)據(jù),如視頻網(wǎng)站(you化be、化dou 等)、購(gòu)物網(wǎng)站、點(diǎn)評(píng)網(wǎng)站(如大眾點(diǎn)評(píng)網(wǎng)、豆瓣等)等,獲得"用戶一物品"評(píng)分信息。該里W 視頻網(wǎng)站為例,用戶Ui如果對(duì)物品I 1給分為R 1,則該個(gè)評(píng)分信息表示為=元組<Ui,I。Ri〉, 評(píng)分的取值范圍為0?5,該也是目前主流的評(píng)分方式。
[007引同時(shí),本方法從爬取的信息中提取與物品相關(guān)的文本信息,比如對(duì)視頻的評(píng)價(jià)、介 紹、與視頻相關(guān)聯(lián)的標(biāo)簽等,該些信息構(gòu)成對(duì)物品的文本描述?;趯?duì)該些文本信息的分析 (如采用LDA算法),可W建立與對(duì)應(yīng)物品相關(guān)聯(lián)的主題模型。
[0073] S302 ;構(gòu)建"用戶一物品"評(píng)分矩陣
[0074] 綜合來(lái)自不同網(wǎng)站的"用戶一物品"評(píng)分信息,系統(tǒng)構(gòu)建統(tǒng)一的"用戶一物品"評(píng) 分矩陣,該矩陣作為預(yù)測(cè)用戶行為的訓(xùn)練集。首先,系統(tǒng)統(tǒng)計(jì)物品集合I = Ul,12, ...,I。} 和用戶集合U=扣l,U2,...,Um}。然后,WI為列,U為行構(gòu)造一個(gè)評(píng)分矩陣M。如果某個(gè)用 戶沒有對(duì)某個(gè)物品評(píng)分,則矩陣中對(duì)應(yīng)的元素的值為0。示例如下:
[0075]
【權(quán)利要求】
1. 一種基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法,其特征在于,該方法由兩部分構(gòu)成,其一為 運(yùn)行于家庭網(wǎng)關(guān)的內(nèi)容管理代理,另一個(gè)是以集中方式運(yùn)行的用戶行為預(yù)測(cè)中心。
2. 根據(jù)權(quán)利要求1所述的基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法,其特征在于,所述用戶 行為預(yù)測(cè)中心包括以下步驟: 5101 :用戶行為預(yù)測(cè)中心從公開的互聯(lián)網(wǎng)信息搜集用于用戶行為預(yù)測(cè)的數(shù)據(jù),包括"用 戶一物品"評(píng)分信息、網(wǎng)頁(yè)的主題模型、"物品"的主題模型。 S104:-旦用戶發(fā)起消費(fèi)趨勢(shì)預(yù)測(cè)請(qǐng)求,預(yù)測(cè)中心根據(jù)S101所搜集的數(shù)據(jù)和S102的用 戶歷史行為數(shù)據(jù),預(yù)測(cè)用戶在未來(lái)的一段時(shí)間可能消費(fèi)的網(wǎng)絡(luò)內(nèi)容,并返回該報(bào)表給相應(yīng) 的內(nèi)容管理代理。
3. 根據(jù)權(quán)利要求2所述的用戶行為預(yù)測(cè)中心,其特征在于,所述步驟S101中的預(yù)測(cè)中 心數(shù)據(jù)搜集方法: 通過網(wǎng)絡(luò)爬蟲爬取公開的互聯(lián)網(wǎng)數(shù)據(jù),包括:①"用戶一物品"評(píng)分信息,用于構(gòu)建"用 戶一物品"評(píng)分矩陣。②"物品"的相關(guān)文本信息,包括對(duì)"物品"的簡(jiǎn)介、評(píng)價(jià)等,合并所有 關(guān)于某個(gè)特定"物品"的文本信息構(gòu)成一個(gè)文檔,并通過主題提取算法(如LDA等)構(gòu)建該 "物品"的主題模型,形成〈I,T>二元組。其中I是"物品"的標(biāo)識(shí)(可以是編號(hào)或者名稱), T是對(duì)應(yīng)"物品"的主題集合。③爬取網(wǎng)頁(yè),構(gòu)建〈hash (URL),T>二元組。其中,hash (URL) 是網(wǎng)頁(yè)對(duì)應(yīng)URL的哈希值(哈希函數(shù)可以是sha-2等),T為對(duì)應(yīng)網(wǎng)頁(yè)的主題的集合。 由于互聯(lián)網(wǎng)上的"物品"持續(xù)變化(比如,新增和淘汰),上述數(shù)據(jù)處于持續(xù)更新中。
4. 根據(jù)權(quán)利要求2所述的用戶行為預(yù)測(cè)中心,其特征在于,所述步驟S104中的用戶消 費(fèi)趨勢(shì)預(yù)測(cè)方法: 用戶消費(fèi)趨勢(shì)預(yù)測(cè)采用組合方法進(jìn)行。首先,通過推薦算法來(lái)預(yù)測(cè)用戶對(duì)某個(gè)"物品" 的評(píng)分,獲得用戶評(píng)分最高的"物品"列表。這里采用矩陣補(bǔ)全的推薦算法,用戶對(duì)"物品"的 歷史評(píng)分通過內(nèi)容管理代理獲取,因此可以形成一個(gè)與預(yù)測(cè)中心相同煒度的向量,其中沒 有評(píng)分的"物品",其評(píng)分設(shè)置為0。把用戶的歷史評(píng)分向量加入的評(píng)分矩陣中,通過矩陣補(bǔ) 全算法(如非負(fù)矩陣因子分解)預(yù)測(cè)出用戶對(duì)未評(píng)分"物品"的評(píng)分。從而,可以獲得評(píng)分 最高的的前N個(gè)物品,這些物品作為候選集合。然后,提取用戶最近d(d取值1,2, 3,...)天 所訪問的網(wǎng)頁(yè)的主題模型,和候選集合中的"物品"的主題模型進(jìn)行相似度度量(如cosine 相似度度量),取得排名最高的前H個(gè)作為預(yù)測(cè)結(jié)果。d的值從1開始,如果預(yù)測(cè)的結(jié)果過 少,則增加 d的值。H的取值和緩存空間的容量有關(guān),如果緩存空間較大,則可以緩存較多 "物品"。
5. 根據(jù)權(quán)利要求1所述的基于用戶行為的網(wǎng)絡(luò)內(nèi)容加速方法,其特征在于,所述內(nèi)容 管理代理包括以下步驟: 5102 :內(nèi)容管理代理程序通過流量分析獲得用戶的內(nèi)容訪問行為信息,這些信息包括 用戶所訪問網(wǎng)頁(yè)的URL和對(duì)應(yīng)時(shí)間,用戶所訪問的視頻內(nèi)容名稱、評(píng)分信息和時(shí)間。內(nèi)容管 理代理周期性發(fā)送這些信息到預(yù)測(cè)中心以備用戶內(nèi)容消費(fèi)行為預(yù)測(cè)之用。 5103 :在預(yù)取內(nèi)容之前,內(nèi)容管理代理需要知道預(yù)取的內(nèi)容是什么??jī)?nèi)容管理代理請(qǐng) 求預(yù)測(cè)中心預(yù)測(cè)用戶的內(nèi)容消費(fèi)趨勢(shì)。 S105 :基于預(yù)測(cè)中心返回的內(nèi)容消費(fèi)趨勢(shì),內(nèi)容管理代理預(yù)取相應(yīng)網(wǎng)絡(luò)內(nèi)容并緩存于 本地。 S106 :內(nèi)容管理代理監(jiān)控用戶的內(nèi)容訪問請(qǐng)求,重定向用戶的內(nèi)容訪問請(qǐng)求到本地緩 存的內(nèi)容,并代理用戶下載剩余內(nèi)容。
6. 根據(jù)權(quán)利要求5所述的內(nèi)容管理代理,其特征在于,所述步驟S102中的用戶行為數(shù) 據(jù)搜集方法: 內(nèi)容管理代理監(jiān)控用戶的網(wǎng)絡(luò)內(nèi)容訪問流量,提取用戶網(wǎng)絡(luò)內(nèi)容訪問的特征。初次使 用,內(nèi)容管理代理會(huì)彈出網(wǎng)頁(yè)請(qǐng)求用戶對(duì)一些"物品"進(jìn)行打分,這些信息作為用戶初始的 歷史行為,以便作為預(yù)測(cè)系統(tǒng)的輸入之一。如果用戶訪問視頻內(nèi)容,則內(nèi)容代理重定向用戶 的請(qǐng)求到本地緩存,并代理用戶下載剩余內(nèi)容,在用戶觀看完一個(gè)視頻后,內(nèi)容管理代理會(huì) 請(qǐng)求用戶給一個(gè)評(píng)分,作為用戶歷史行為的一部分。如果用戶訪問網(wǎng)頁(yè),則內(nèi)容管理代理生 成二元組<t,hash (URL)〉,其中t是訪問對(duì)應(yīng)網(wǎng)頁(yè)的時(shí)間,hash (URL)是網(wǎng)頁(yè)對(duì)應(yīng)URL的哈 希值(哈希函數(shù)可以是sha-2等)。內(nèi)容管理代理周期性發(fā)送上述信息到預(yù)測(cè)中心,后者把 這些信息作為用戶的歷史行為。
7. 根據(jù)權(quán)利要求5所述的內(nèi)容管理代理,其特征在于,所述步驟S103中的用戶內(nèi)容消 費(fèi)趨勢(shì)預(yù)測(cè)方法: 內(nèi)容管理代理的功能相對(duì)較弱,不適合做大規(guī)模數(shù)據(jù)處理,因此內(nèi)容管理代理請(qǐng)求預(yù) 測(cè)中心進(jìn)行用戶消費(fèi)行為預(yù)測(cè)。
8. 根據(jù)權(quán)利要求5所述的內(nèi)容管理代理,其特征在于,所述步驟S105中的網(wǎng)絡(luò)內(nèi)容預(yù) 取方法: 基于預(yù)測(cè)中心的預(yù)測(cè)報(bào)告,內(nèi)容管理代理在網(wǎng)絡(luò)空閑時(shí)(比如晚上、上班時(shí)間等)預(yù)取 用戶可能消費(fèi)的網(wǎng)絡(luò)內(nèi)容的一部分緩存于本地緩存空間。首先,預(yù)取并緩存用戶最可能消 費(fèi)的網(wǎng)絡(luò)內(nèi)容;然后是消費(fèi)可能性第二的網(wǎng)絡(luò)內(nèi)容,依此類推,直到緩存空間不足為止。預(yù) 取的網(wǎng)絡(luò)內(nèi)容的一部分取決于網(wǎng)絡(luò)的平均帶寬,如果余下的內(nèi)容可以在現(xiàn)有網(wǎng)絡(luò)帶寬的條 件下,在P分鐘內(nèi)下載完畢,則預(yù)取內(nèi)容的播放時(shí)間需要大于P分鐘。如果某個(gè)預(yù)取的內(nèi)容 在緩存空間超過給定的時(shí)間也沒有得到訪問,則預(yù)測(cè)沒有命中,淘汰該內(nèi)容,釋放其所占的 存儲(chǔ)空間。
9. 根據(jù)權(quán)利要求5所述的內(nèi)容管理代理,其特征在于,所述步驟S106中的用戶內(nèi)容訪 問控制方法: 內(nèi)容管理代理監(jiān)控用戶的內(nèi)容訪問請(qǐng)求,如果是視頻內(nèi)容訪問,則重定向用戶的訪問 請(qǐng)求到本地,通過本地緩存的內(nèi)容來(lái)服務(wù)用戶,并代理用戶下載余下部分內(nèi)容。即使本地緩 存沒有命中,該過程同樣執(zhí)行。在內(nèi)容消費(fèi)結(jié)束后,請(qǐng)求用戶對(duì)相應(yīng)內(nèi)容給一個(gè)評(píng)分,以便 將來(lái)進(jìn)一步提升用戶體驗(yàn)。
【文檔編號(hào)】H04L29/08GK104486350SQ201410814693
【公開日】2015年4月1日 申請(qǐng)日期:2014年12月24日 優(yōu)先權(quán)日:2014年12月24日
【發(fā)明者】羅緒成, 劉夢(mèng)娟, 陳偉, 湯四見, 趙鵬, 李偉銘 申請(qǐng)人:電子科技大學(xué)