一種視頻推薦方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種視頻推薦方法及系統(tǒng),方法包括:服務(wù)器獲取各個視頻的視頻信息,利用聚類算法將視頻分成不同的類別,計算各個視頻在對應(yīng)類別中的類別權(quán)重并存儲;智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器根據(jù)用戶行為數(shù)據(jù)計算出用戶偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視頻節(jié)目的初步推薦結(jié)果;服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各個時間段的屬性和權(quán)值,將視頻在各個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合后生成最終推薦結(jié)果,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。本發(fā)明可評估用戶對已經(jīng)看過的視頻的興趣度,并根據(jù)時間段推薦相關(guān)視頻,盡量滿足家庭成員的觀看需求,降低了用戶的時間成本。
【專利說明】
一種視頻推薦方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及智能電視技術(shù)領(lǐng)域,尤其涉及一種視頻推薦方法及系統(tǒng)。
【背景技術(shù)】
[0002] 隨著三網(wǎng)融合的發(fā)展,智能電視成為"智能與視頻"融合和變革的代表產(chǎn)品。隨著 智能電視的發(fā)展和普及,智能電視平臺上的多媒體內(nèi)容在不斷豐富,數(shù)據(jù)量不斷膨脹面對 如此海量的多媒體內(nèi)容,智能電視用戶僅憑自己的手段,要找到自己感興趣的內(nèi)容,如同大 海撈針。因此,個性化推薦系統(tǒng)成為一種重要的手段,它不僅能幫助用戶從海量的視頻庫中 找到他們可能感興趣的電影或視頻,同時也能與用戶建立穩(wěn)定的長期關(guān)系,提高用戶對網(wǎng) 站的忠誠度,防止用戶流失。而傳統(tǒng)的視頻推薦系統(tǒng)一般應(yīng)用在視頻網(wǎng)站或者像豆瓣電影 這類類似社區(qū)的網(wǎng)站中。對用戶而言,他們不僅需要從互聯(lián)網(wǎng)中獲取自己感興趣的視頻內(nèi) 容,同時,他們也需要觀看廣播電視網(wǎng)中正在直播的視頻節(jié)目。
[0003] 傳統(tǒng)的視頻推薦系統(tǒng)只是針對互聯(lián)網(wǎng)視頻網(wǎng)站中的單用戶,而智能電視所面向的 用戶群是家庭成員群體,在家庭成員群體中每個人的年齡、興趣等各不相同。因此,對于電 視用戶而言面臨著以下特點:
[0004] 1.用戶行為隨時間變化:用戶在不同的時間會對不同的節(jié)目感興趣,例如一個用 戶在中午和晚上會對不同的節(jié)目感興趣,在周末又可能對另一類節(jié)目感興趣。
[0005] 2.電視節(jié)目具有周期性:電視通常以一天或者一周為周期推出同種類型的節(jié)目。 用戶的觀看行為可能具有周期性。
[0006] 3.電視平臺是共享的,多用戶的:電視不同于其他內(nèi)容消費平臺,在一臺電視機前 通常有多人觀看,因此,一臺電視機的用戶日志不是代表一個用戶的行為,而是一組用戶的 行為。
[0007] 現(xiàn)有技術(shù)無法根據(jù)電視用戶的上述三個特點進行對應(yīng)的推薦,推薦的針對性不 強。當(dāng)用戶在搜索節(jié)目時,無法有效獲取與自己感興趣的節(jié)目信息,增加了用戶的時間成 本,為用戶帶來了不便。
[0008] 因此,現(xiàn)有技術(shù)還有待于改進和發(fā)展。
【發(fā)明內(nèi)容】
[0009] 鑒于現(xiàn)有技術(shù)的不足,本發(fā)明目的在于提供一種視頻推薦方法及系統(tǒng)。
[0010]本發(fā)明的技術(shù)方案如下:
[0011] -種視頻推薦方法,其中,方法包括;
[0012] A、服務(wù)器獲取各個視頻的視頻信息,利用聚類算法將視頻分成不同的類別,計算 各個視頻在對應(yīng)類別中的類別權(quán)重并存儲;
[0013] B、智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器根據(jù)用戶行為數(shù)據(jù)計算出 用戶偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視頻節(jié)目的初步推薦結(jié)果;
[0014] C、服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各個時間段的屬性和權(quán) 值,將視頻在各個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合后生成最終推薦結(jié)果,并將最 終推薦結(jié)果發(fā)送至智能電視進行顯示。
[0015] 所述的視頻推薦方法,其中,所述步驟A具體包括:
[0016] A1、服務(wù)器從互聯(lián)網(wǎng)中獲取各個視頻的視頻信息;
[0017] A2、服務(wù)器對視頻信息進行預(yù)處理后,建立視頻信息參數(shù)的向量空間模型;
[0018] A3、使用聚類迭代算法對視頻信息參數(shù)的向量空間模型進行計算,根據(jù)計算結(jié)果 得出各個視頻在對應(yīng)類別中的類別權(quán)重后,將各個視頻的類別權(quán)重進行存儲。
[0019] 所述的視頻推薦方法,其中,所述步驟B具體包括:
[0020] B1、智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器對用戶行為數(shù)據(jù)進行預(yù) 處理,并根據(jù)預(yù)先設(shè)置的模型計算出用戶偏好數(shù)據(jù);
[0021] B2、利用用戶偏好數(shù)據(jù)計算出視頻的第一相似度并存儲;
[0022] B3、獲取用戶未觀看過的視頻與觀看過的視頻間的第二相似度;
[0023] B4、根據(jù)第二相似度計算出用戶未觀看過的視頻節(jié)目的初始推薦值并存儲。
[0024] 所述的視頻推薦方法,其中,所述步驟C具體包括:
[0025] C1、服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各個時間段的屬性和權(quán) 值存儲到數(shù)據(jù)庫中;
[0026] C2、服務(wù)器檢測智能電視播放視頻所在的時間段,將各個視頻在對應(yīng)的時間段的 權(quán)值通過計算疊加在各視頻在類別權(quán)重后,生成各個視頻的最終推薦值;
[0027] C3、將視頻按照最終推薦值從高到低進行排序,獲取排序序列中的前N個視頻,并 將最終推薦結(jié)果發(fā)送至智能電視進行顯示。
[0028] 上述任一項所述的視頻推薦方法,其中,所述用戶行為數(shù)據(jù)包括:用戶設(shè)備ID、設(shè) 備IP、電視節(jié)目ID、節(jié)目點播開始時間、節(jié)目點播結(jié)束時間、節(jié)目總時長。
[0029] -種視頻推薦系統(tǒng),其中,系統(tǒng)包括:
[0030] 類別權(quán)重計算模塊,用于服務(wù)器獲取各個視頻的視頻信息,利用聚類算法將視頻 分成不同的類別,計算各個視頻在對應(yīng)類別中的類別權(quán)重并存儲;
[0031] 初步推薦結(jié)果生成模塊,用于智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù) 器根據(jù)用戶行為數(shù)據(jù)計算出用戶偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視頻 節(jié)目的初步推薦結(jié)果;
[0032] 最終推薦結(jié)果生成模塊,用于服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻 在各個時間段的屬性和權(quán)值,將視頻在各個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合后生 成最終推薦結(jié)果,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。
[0033] 所述的視頻推薦系統(tǒng),其中,所述類別權(quán)重計算模塊具體包括:
[0034] 視頻信息獲取單元,用于服務(wù)器從互聯(lián)網(wǎng)中獲取各個視頻的視頻信息;
[0035]視頻信息處理單元,用于服務(wù)器對視頻信息進行預(yù)處理后,建立視頻信息參數(shù)的 向量空間模型;
[0036]類別權(quán)重計算單元,用于使用聚類迭代算法對視頻信息參數(shù)的向量空間模型進行 計算,根據(jù)計算結(jié)果得出各個視頻在對應(yīng)類別中的類別權(quán)重后,將各個視頻的類別權(quán)重進 行存儲。
[0037]所述的視頻推薦系統(tǒng),其中,所述初步推薦結(jié)果生成模塊具體包括:
[0038]偏好數(shù)據(jù)獲取單元,用于智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器對 用戶行為數(shù)據(jù)進行預(yù)處理,并根據(jù)預(yù)先設(shè)置的模型計算出用戶偏好數(shù)據(jù);
[0039]第一相似度計算單元,用于利用用戶偏好數(shù)據(jù)計算出視頻的第一相似度并存儲;
[0040] 第二相似度計算單元,用于獲取用戶未觀看過的視頻與觀看過的視頻間的第二相 似度;
[0041] 初始推薦值生成單元,用于根據(jù)第二相似度計算出用戶未觀看過的視頻節(jié)目的初 始推薦值并存儲。
[0042] 所述的視頻推薦系統(tǒng),其中,所述最終推薦結(jié)果生成模塊具體包括:
[0043] 時間段屬性及權(quán)值計算單元,用于服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個 視頻在各個時間段的屬性和權(quán)值存儲到數(shù)據(jù)庫中;
[0044] 最終推薦值生成單元,用于服務(wù)器檢測智能電視播放視頻所在的時間段,將各個 視頻在對應(yīng)的時間段的權(quán)值通過計算疊加在各視頻在類別權(quán)重后,生成各個視頻的最終推 薦值;
[0045] 最終推薦結(jié)果發(fā)送單元,用于將視頻按照最終推薦值從高到低進行排序,獲取排 序序列中的前N個視頻,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。
[0046] 上述任一項所述的視頻推薦系統(tǒng),其中,所述用戶行為數(shù)據(jù)包括:用戶設(shè)備ID、設(shè) 備IP、電視節(jié)目ID、節(jié)目點播開始時間、節(jié)目點播結(jié)束時間、節(jié)目總時長。
[0047] 本發(fā)明提供了一種視頻推薦方法及系統(tǒng),本發(fā)明可通過用戶觀看電視的行為數(shù)據(jù) 來評估用戶對已經(jīng)看過的視頻的興趣度,并根據(jù)時間段推薦相關(guān)視頻,盡量滿足家庭成員 的觀看需求,提高了推薦的準(zhǔn)確度,降低了用戶的時間成本,增加了自動推薦功能。
【附圖說明】
[0048] 圖1為本發(fā)明中一種視頻推薦方法的較佳實施例的體系架構(gòu)圖。
[0049] 圖2為本發(fā)明中一種視頻推薦方法的較佳實施例的流程圖。
[0050] 圖3為本發(fā)明中一種視頻推薦方法的具體應(yīng)用實施例文本聚類流程示意圖。
[0051 ]圖4為本發(fā)明中一種視頻推薦方法的具體應(yīng)用實施例推薦過程的流程示意圖。 [0052]圖5為本發(fā)明的一種視頻推薦系統(tǒng)的較佳實施例的功能原理框圖。
【具體實施方式】
[0053]為使本發(fā)明的目的、技術(shù)方案及效果更加清楚、明確,以下對本發(fā)明進一步詳細說 明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0054]本發(fā)明是通過智能電視終端與服務(wù)器進行數(shù)據(jù)通信,其中服務(wù)器包括算法層、計 算層、和存儲層,具體地,如圖1所示,智能電視即為電視終端,主要用于用戶數(shù)據(jù)采集和推 薦結(jié)果展示,算法層是用于視頻分類(聚類)以及推薦,計算層包括Spark和YARN統(tǒng)一資源管 理與調(diào)度平臺,Spark是開源的通用并行框架,Spark中間輸出結(jié)果可以保存在內(nèi)存中,因此 Spark能更好地適用于數(shù)據(jù)挖掘與機器學(xué)習(xí)等需要迭代的算法。YARN統(tǒng)一資源管理與調(diào)度 平臺,是一個通用資源管理系統(tǒng),可為其他應(yīng)用提供統(tǒng)一的資源管理和調(diào)度。存儲層包括 HDFS和Mongodb,HDFS是Hadoop分布式文件系統(tǒng),HDFS是一個高度容錯性的系統(tǒng)。其中 Hadoop是一個開發(fā)和運行處理大規(guī)模數(shù)據(jù)的軟件平臺,是Appach的一個用java語言實現(xiàn)開 源軟件框架,實現(xiàn)在大量計算機組成的集群中對海量數(shù)據(jù)進行分布式計算。HDFS能提供高 吞吐量的數(shù)據(jù)訪問,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。Mongodb是一個面向文檔的數(shù)據(jù)庫。 [0055] 存儲層和算法層通過ETL工具進行數(shù)據(jù)交換,ETL是Extract-Transform-Load的縮 寫,用來描述將數(shù)據(jù)從來源端經(jīng)過抽取(extract)、轉(zhuǎn)換(transform)、加載(load)至目的端 的過程。ETL常用在數(shù)據(jù)倉庫,但其對象并不限于數(shù)據(jù)倉庫。
[0056]本發(fā)明還提供了一種視頻推薦方法的較佳實施例的流程圖,如圖2所示,其中,方 法包括:
[0057]步驟S100、服務(wù)器獲取各個視頻的視頻信息,利用聚類算法將視頻分成不同的類 另IJ,計算各個視頻在對應(yīng)類別中的類別權(quán)重并存儲。
[0058]具體地,智能電視與服務(wù)器進行連接,并通過服務(wù)器進行控制。服務(wù)器將采集各種 視頻及視頻簡介等信息,利用文本聚類方法,分別得到各個視頻屬于每個類別的權(quán)重。具體 實施時,服務(wù)器采用基于spark的分布式計算框架和分布式存儲系統(tǒng),可實現(xiàn)高效、實用,非 常方便的處理海量數(shù)據(jù)挖掘及海量數(shù)據(jù)存儲的需求,同時實現(xiàn)高效分布式且兼顧了未來系 統(tǒng)可擴展性的特點。其中spark是開源類通用的一種并行計算框架,是基于映射銳減map reduce算法實現(xiàn)的分布式計算,可以將工作Job中間輸出和結(jié)果保存在內(nèi)存中,從而不再需 要讀寫Hadoop分布式文件系統(tǒng)。進一步實施時,所述步驟S100具體包括:
[0059]步驟S101、服務(wù)器從互聯(lián)網(wǎng)中獲取各個視頻的視頻信息;
[0060]步驟S102、服務(wù)器對視頻信息進行預(yù)處理后,建立視頻信息參數(shù)的向量空間模型;
[0061] 步驟S103、使用聚類迭代算法對視頻信息參數(shù)的向量空間模型進行計算,根據(jù)計 算結(jié)果得出各個視頻在對應(yīng)類別中的類別權(quán)重后,將各個視頻的類別權(quán)重進行存儲。
[0062] 具體實施時,首先從互聯(lián)網(wǎng)通過爬蟲工具獲取視頻的基本信息,作為視頻分類的 源數(shù)據(jù)。視頻信息包括電視臺節(jié)目時間表、視頻簡介、演員等信息。如圖3所示,是本發(fā)明一 種視頻推薦方法的具體應(yīng)用實施例文本聚類流程示意圖。其中文本聚類包括文本集合、文 本數(shù)據(jù)預(yù)處理、建立向量空間模型、聚類迭代。本發(fā)明中以Kmeans聚類迭代為例時行介紹。 文本數(shù)據(jù)預(yù)處理包括數(shù)據(jù)清洗、分詞、停詞。
[0063]首先對文本數(shù)據(jù)進行清洗,因為從互聯(lián)網(wǎng)上采集的文本數(shù)據(jù)有可能包含一些我們 認為的噪聲數(shù)據(jù),比如:數(shù)字、網(wǎng)址以及一些特殊字符等,這些類型的數(shù)據(jù)對我們的文本分 類沒有什么用處,應(yīng)該去除。
[0064] 其次,對文本數(shù)據(jù)集中的文本進行中文分詞。目前有比較多的開源中文分詞工具, 比如:中科院的ICTCLAS、基于j ava語言開發(fā)的輕量級的中文分詞工具包IKAna 1 y z er、 Paoding等。在本設(shè)計中我們采用IKAnalyzer特有的"正向迭代最細粒度切分算法",比如: 對"成都市長途汽車站"進行分詞的結(jié)果為"成都市I成都I市長I長途I長途汽車I汽車I汽車 丄μ,, ?占。
[0065] 最后是停詞。因為文本經(jīng)過分詞后,會存在一些我們的常用語和一些停用詞,比 如:"的"、"我們"、"然而"等,為了提高聚類的準(zhǔn)確性和降低計算量,我們需求把這些詞從文 本中去掉。
[0066] 建立向量空間模型的過程為:計算文本中各個詞在本文本中出現(xiàn)的次數(shù)C(wi),則 TF(i) =C(wi)/sum(wi···]!)。統(tǒng)計文本集合中出現(xiàn)詞wi的文本數(shù)量doc_C(wi),貝iJIDF(i)= log(doc_sum/doc_C(wi)) Jdoc^sum為總文本數(shù))根據(jù)上述兩步驟,可以得到文本i,單詞wj 的TF-IDF的權(quán)值W[ i ] [ j] =TF( j )*IDF( j)。其中i為文本,wj是文本i中的特征詞。所以每個 文本的向量可表示為W[i][ j](j = 1 ···]!)。
[0067] 其中Kmeans聚類迭代具體為:
[0068] S1、確定聚類的個數(shù)K,從文本集中選取K個文本作為聚類的類中心。
[0069] S2、計算文本i與K個聚類中心的距離。
[0070] S3、將文本i與K個聚類中心距離最近的類確定為該文本所屬的類。
[0071] S4、將所有的文本重復(fù)步驟S2、S3,確定每個文本的類別。
[0072] S5、重新計算每個類別的中心(類中各個樣本的平均值)。
[0073] S6、判斷迭代是否結(jié)束,如果沒有結(jié)束則跳到步驟S2。
[0074] Kmeans聚類算法的計算過程的距離度量采用文本(向量)之間的相似度,采用余弦 定理計算向量相似度的公式如下:
[0076]其中,Di是文本集中的一個文本,w[i][ j]為文本Di的向量中的第j個元素,sim (D1,D2)為文本D1和D2的相似度,向量之間的夾角越小相似度越大。
[0077] 根據(jù)文本聚類的結(jié)果,得出各個視頻的屬性權(quán)值,存放到數(shù)據(jù)庫中。
[0078] 步驟S200、智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器根據(jù)用戶行為數(shù) 據(jù)計算出用戶偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視頻節(jié)目的初步推薦結(jié) 果。
[0079] 具體實施時,智能電視采集用戶打開智能電視后的行為數(shù)據(jù)并上傳到服務(wù)器,而 服務(wù)器根據(jù)用戶行為數(shù)據(jù)計算初步推薦結(jié)果。用戶行為數(shù)據(jù)包括:用戶設(shè)備ID、設(shè)備IP、電 視節(jié)目ID、節(jié)目點播開始時間、節(jié)目點播結(jié)束時間、節(jié)目總時長。
[0080] 具體地,步驟S200具體包括:
[0081] 步驟S201、智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器對用戶行為數(shù)據(jù) 進行預(yù)處理,并根據(jù)預(yù)先設(shè)置的模型計算出用戶偏好數(shù)據(jù);
[0082]步驟S202、利用用戶偏好數(shù)據(jù)計算出視頻的第一相似度并存儲;
[0083]步驟S203、獲取用戶未觀看過的視頻與觀看過的視頻間的第二相似度;
[0084] 步驟S204、根據(jù)第二相似度計算出用戶未觀看過的視頻節(jié)目的初始推薦值并存 儲。
[0085] 具體實施時,依據(jù)用戶行為數(shù)據(jù)計算初步推薦結(jié)果,主要包括以下兩個流程:訓(xùn)練 流程、推薦流程。
[0086] 訓(xùn)練流程主要要是對收集的用戶行為數(shù)據(jù)進行分析,通過建立用戶興趣模型,得 到用戶的偏好數(shù)據(jù),然后計算出視頻之間的相似度。
[0087] 用戶行為數(shù)據(jù)是在智能電視終端上收集的,用戶行為數(shù)據(jù)是建立用戶偏好模型和 計算推薦結(jié)果的數(shù)據(jù)源。同時,收集的用戶行為數(shù)據(jù)的類型和質(zhì)量會直接影響建立用戶興 趣模型的方法和計算用戶興趣和偏好的準(zhǔn)確度。通過對用戶的行為分析,計算出用戶的興 趣。進而向用戶推薦他們可能感興趣的視頻。綜合智能電視的使用情況,系統(tǒng)需要具體采集 包括以下數(shù)據(jù)(主要是本系統(tǒng)中需要的數(shù)據(jù),可能由于以后擴展的需求會收集更多的數(shù) 據(jù)):用戶設(shè)備ID,設(shè)備IP(地域信息),節(jié)目ID,節(jié)目點播開始時間,節(jié)目點播結(jié)束時間,節(jié)目 的總時長。
[0088] 用戶行為數(shù)據(jù)清洗、分析首先清洗用戶行為日志,合并對同個節(jié)目的觀看記錄,剔 除觀看時間少于30秒的記錄,將周期性節(jié)目(電視劇、綜藝節(jié)目等)和非周期性節(jié)目(電影 等)分類。
[0089] 用戶行為數(shù)據(jù)清洗的關(guān)鍵是去除噪聲數(shù)據(jù),由于用戶對節(jié)目的愛好是隱式獲取 的,其中不可避免有很多干擾信息。由于用戶在觀看電視時,通常會頻繁地切換頻道,在切 換頻道時短暫的觀看記錄在本文中被認作是噪聲數(shù)據(jù),因此,在前期的數(shù)據(jù)清洗階段會清 洗掉用戶行為日志中觀看時間低于一定時間的記錄。同時,在電視節(jié)目中經(jīng)常會插播廣告, 許多用戶可能會切換節(jié)目,在過一段時間之后切回繼續(xù)觀看。因此,用戶日志中很可能存在 用戶對同一節(jié)目的多個觀看行為,在前期的數(shù)據(jù)清洗階段,我們將會對于同一節(jié)目多條記 錄的觀看時間累計合并成一條記錄。
[0090] 根據(jù)分類后的信息,分別計算用戶對周期性以及非周期性節(jié)目的偏好度,最后,將 周期性以及非周期性節(jié)目的偏好度歸一到同一量級。
[0091 ]電視終端收集的數(shù)據(jù)主要包括每個電視節(jié)目的播放時間和停停播時間,因此我們 假設(shè)用戶觀看一個節(jié)目時間的長短,能夠表現(xiàn)出用戶對這個節(jié)目的喜愛程度,定義用戶對 單次節(jié)目i的接受系數(shù):
[0093] 中為用戶從觀看節(jié)目i開始到退出過程中所收看實際時間長度;為 節(jié)目i的總時間長度。由邱勺物理意義可知,用戶對視頻的偏好程度與邱勺值成正比。假如,對 一個節(jié)目的評分最高為10,我們可以定義用戶的偏好程度:
[0094] wi= 10β?
[0095] 基于用戶偏好數(shù)據(jù)得到稀疏矩陣。每一行表示所有用戶對這個視頻的偏好程度, 如果用戶沒觀看過這個視頻,在矩陣中表示為空。根據(jù)矩陣計算Item之間的關(guān)系,即相似 度,并將數(shù)據(jù)存儲在數(shù)據(jù)庫中。
[0096] 推薦流程主要是計算初步推薦結(jié)果。從用戶偏好數(shù)據(jù)庫中,查找這個用戶還沒有 看過的視頻(集合A,由所有視頻剔除用戶之前已經(jīng)看過的視頻),以及看過的視頻(集合B) (即偏好的產(chǎn)品,并查出偏好值),前者集合A是推薦運算的根據(jù),后者集合B作為一個產(chǎn)生推 薦Item的集合;
[0097] 查找這兩個集合之間的關(guān)系,這是一對多的關(guān)系:一個沒有被看過的視頻(A中的 一個Item)與該用戶所有看過的視頻(B中的所有Item)間的關(guān)系,用值來衡量這個關(guān)系叫相 dissimilarity ;
[0098]得到這個一對多的關(guān)系后,計算這個視頻對于這個用戶的推薦值.similarity_i-x(關(guān)系數(shù)據(jù))表示Item_i (集合A)與Item_x(集合B)之間的相似度,即為第二相似度,Item_x 是該用戶偏好過的,該用戶對其偏好值記為value_x(用戶偏好數(shù)據(jù));Item_i與該用戶偏好 過的所有物品以此做以上運算后,得到的值取平均值便是Item_i的初始推薦值,公式如下:
[0100] Sij表示Item_i (集合A)與Item_j (集合B)之間的相似度,其中η值需要通過測試來 確定,它代表了和視頻i最相似的η個視頻。
[0101]最后計算出該用戶沒有觀看過的視頻節(jié)目的初始推薦值,并存儲到數(shù)據(jù)庫中。
[0102] 步驟S300、服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各個時間段的屬 性和權(quán)值,將視頻在各個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合后生成最終推薦結(jié)果, 并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。
[0103] 具體實施時,根據(jù)預(yù)先算出的各個視頻在各個類別中的權(quán)重及根據(jù)用戶行為數(shù)據(jù) 獲取的用戶偏好數(shù)據(jù),計算各個視頻在各個時間段的屬性和權(quán)值,將視頻在各個時間段的 屬性和權(quán)值與初始推薦值結(jié)合,得到最終推薦結(jié)果,交將最后的推薦結(jié)果發(fā)送給智能電視, 智能電視顯示給用戶供,供用戶選擇。
[0104] 具體地,所述步驟S300具體包括:
[0105]步驟S301、服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各個時間段的屬 性和權(quán)值存儲到數(shù)據(jù)庫中;
[0106] 步驟S302、服務(wù)器檢測智能電視播放視頻所在的時間段,將各個視頻在對應(yīng)的時 間段的權(quán)值通過計算疊加在各視頻在類別權(quán)重后,生成各個視頻的最終推薦值;
[0107] 步驟S303、將視頻按照最終推薦值從高到低進行排序,獲取排序序列中的前Ν個視 頻,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。
[0108] 具體實施時,在得到初步的推薦值后,我們還不能根據(jù)這個推薦值向用戶推薦視 頻。因為在本文中的用戶是一個用戶群體,并不是單一用戶。我們得到的這個推薦值也是針 對這個用戶群體的,在這個用戶群體中每個人的興趣愛好各不相同,所以我們還需要針對 這個用戶群體中的每個用戶單獨進行推薦值計算。
[0109]通過前面的文本聚類計算視頻分類權(quán)重,以及計算初步的推薦結(jié)果,可得到三類 數(shù)據(jù):視頻屬性權(quán)值、用戶偏好數(shù)據(jù)、初步推薦結(jié)果。
[0110]根據(jù)視頻屬性權(quán)值和用戶偏好數(shù)據(jù)計算各個時間段屬性權(quán)值并將其存儲到數(shù)據(jù) 庫中。
[0112] Ai:標(biāo)簽Α在i時間段的權(quán)重,
[0113] A出:在i時間段被觀看的視頻j屬于標(biāo)簽A的權(quán)重。
[0114] 在計算最終推薦值的時候考慮被推薦視頻要播放時間段的標(biāo)簽權(quán)重。如果在某個 時刻,用戶的標(biāo)簽和視頻的標(biāo)簽相匹配,則獎勵該視頻的推薦值。下式為最終推薦結(jié)果的計 算。判斷用戶的標(biāo)簽和視頻的標(biāo)簽匹配則說明該時間段,當(dāng)前用戶的偏好數(shù)據(jù)的標(biāo)簽和當(dāng) 前視頻的標(biāo)簽相同。其中標(biāo)簽是指對于視頻信息提取的簡介。
[0116] 〇為要推薦的視頻與該時間段的匹配度,同時也是視頻的獎勵權(quán).
[0117] 〇=XffAj*Ai
[0118] WAj:視頻j屬于標(biāo)簽A的權(quán)重值,Ai:標(biāo)簽A在時間段i的權(quán)重值,
[0119] 最后將得到的最終推薦結(jié)果值從高到低排序,選擇前Τ0Ρ-Ν的視頻進行推薦。其中 N可根據(jù)需要進行設(shè)定,具體實施時,N的值設(shè)置在10~50之間。
[0120] 本發(fā)明還提供了一種視頻推薦方法的具體應(yīng)用實施例推薦過程的流程示意圖,如 圖4所示,該視頻推薦系統(tǒng)的流程主要包括三部分。
[0121] 部分A負責(zé)得到視頻的屬性權(quán)值。它主要通過從互聯(lián)網(wǎng)中采集各個視頻的簡介,利 用文本聚類方法,得到各個視頻屬于每個類別的權(quán)重。
[0122] 具體地,服務(wù)器獲取互聯(lián)網(wǎng)數(shù)據(jù),獲取視頻信息,利用文本聚類得到視頻屬性權(quán) 值。
[0123] 部分B負責(zé)具體的推薦計算。它通過分析用戶的行為數(shù)據(jù)得到用戶偏好數(shù)據(jù),然后 根據(jù)基于物品的推薦算法得到初步推薦結(jié)果。
[0124] 具體地,用戶行為日志數(shù)據(jù)庫采集用戶行為數(shù)據(jù),對日志數(shù)據(jù)預(yù)處理,生成用戶偏 好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)進行視頻特征向量計算,得到關(guān)系數(shù)據(jù),根據(jù)關(guān)系數(shù)據(jù)進行初始 推薦計算,生成初始推薦結(jié)果。
[0125] 部分C負責(zé)最終推薦結(jié)果的計算。它根據(jù)A、B部分得到的結(jié)果計算出最終推薦結(jié) 果。
[0126] 具體地,根據(jù)視頻屬性權(quán)值和用戶偏好數(shù)據(jù)計算各個時間段屬性、權(quán)值,獲取時間 段屬性、權(quán)值。根據(jù)視頻屬性權(quán)值、時間段屬性和權(quán)值以及初始推薦結(jié)果,計算最終推薦結(jié) 果,生成最終推薦結(jié)果。
[0127] 本發(fā)明還提供了一種視頻推薦系統(tǒng)的較佳實施例的功能原理框圖,如圖5所示,其 中,系統(tǒng)包括:
[0128] 類別權(quán)重計算模塊100,用于服務(wù)器獲取各個視頻的視頻信息,利用聚類算法將視 頻分成不同的類別,計算各個視頻在對應(yīng)類別中的類別權(quán)重并存儲;具體如上方法實施例 所述。
[0129] 初步推薦結(jié)果生成模塊200,用于智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,月艮 務(wù)器根據(jù)用戶行為數(shù)據(jù)計算出用戶偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視 頻節(jié)目的初步推薦結(jié)果;具體如上方法實施例所述。
[0130] 最終推薦結(jié)果生成模塊300,用于服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個 視頻在各個時間段的屬性和權(quán)值,將視頻在各個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合 后生成最終推薦結(jié)果,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示;具體如上方法實施例 所述。
[0131]所述的視頻推薦系統(tǒng),其中,所述類別權(quán)重計算模塊具體包括:
[0132] 視頻信息獲取單元,用于服務(wù)器從互聯(lián)網(wǎng)中獲取各個視頻的視頻信息;具體如上 方法實施例所述。
[0133] 視頻信息處理單元,用于服務(wù)器對視頻信息進行預(yù)處理后,建立視頻信息參數(shù)的 向量空間模型;具體如上方法實施例所述。
[0134] 類別權(quán)重計算單元,用于使用聚類迭代算法對視頻信息參數(shù)的向量空間模型進行 計算,根據(jù)計算結(jié)果得出各個視頻在對應(yīng)類別中的類別權(quán)重后,將各個視頻的類別權(quán)重進 行存儲;具體如上方法實施例所述。
[0135] 所述的視頻推薦系統(tǒng),其中,所述初步推薦結(jié)果生成模塊具體包括:
[0136] 偏好數(shù)據(jù)獲取單元,用于智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器對 用戶行為數(shù)據(jù)進行預(yù)處理,并根據(jù)預(yù)先設(shè)置的模型計算出用戶偏好數(shù)據(jù);具體如上方法實 施例所述。
[0137] 第一相似度計算單元,用于利用用戶偏好數(shù)據(jù)計算出視頻的第一相似度并存儲; 具體如上方法實施例所述。
[0138] 第二相似度計算單元,用于獲取用戶未觀看過的視頻與觀看過的視頻間的第二相 似度;具體如上方法實施例所述。
[0139] 初始推薦值生成單元,用于根據(jù)第二相似度計算出用戶未觀看過的視頻節(jié)目的初 始推薦值并存儲;具體如上方法實施例所述。
[0140] 所述的視頻推薦系統(tǒng),其中,所述最終推薦結(jié)果生成模塊具體包括:
[0141] 時間段屬性及權(quán)值計算單元,用于服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個 視頻在各個時間段的屬性和權(quán)值存儲到數(shù)據(jù)庫中;具體如上方法實施例所述。
[0142] 最終推薦值生成單元,用于服務(wù)器檢測智能電視播放視頻所在的時間段,將各個 視頻在對應(yīng)的時間段的權(quán)值通過計算疊加在各視頻在類別權(quán)重后,生成各個視頻的最終推 薦值;具體如上方法實施例所述。
[0143] 最終推薦結(jié)果發(fā)送單元,用于將視頻按照最終推薦值從高到低進行排序,獲取排 序序列中的前N個視頻,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示;具體如上方法實施例 所述。
[0144] 上述任一項所述的視頻推薦系統(tǒng),其中,所述用戶行為數(shù)據(jù)包括:用戶設(shè)備ID、設(shè) 備IP、電視節(jié)目ID、節(jié)目點播開始時間、節(jié)目點播結(jié)束時間、節(jié)目總時長;具體如上方法實施 例所述。
[0145] 綜上所述,本發(fā)明提供了一種視頻推薦方法及系統(tǒng),方法包括:服務(wù)器獲取各個視 頻的視頻信息,利用聚類算法將視頻分成不同的類別,計算各個視頻在對應(yīng)類別中的類別 權(quán)重并存儲;智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器根據(jù)用戶行為數(shù)據(jù)計算 出用戶偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視頻節(jié)目的初步推薦結(jié)果;月艮 務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各個時間段的屬性和權(quán)值,將視頻在各 個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合后生成最終推薦結(jié)果,并將最終推薦結(jié)果發(fā)送 至智能電視進行顯示。本發(fā)明可通過用戶觀看電視的行為數(shù)據(jù)來評估用戶對已經(jīng)看過的視 頻的興趣度,并根據(jù)時間段推薦相關(guān)視頻,盡量滿足家庭成員的觀看需求,降低了用戶的時 間成本。
[0146] 應(yīng)當(dāng)理解的是,本發(fā)明的應(yīng)用不限于上述的舉例,對本領(lǐng)域普通技術(shù)人員來說,可 以根據(jù)上述說明加以改進或變換,所有這些改進和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保 護范圍。
【主權(quán)項】
1. 一種視頻推薦方法,其特征在于,方法包括; A、 服務(wù)器獲取視頻的視頻信息,利用聚類算法將視頻分成不同的類別,計算各個視頻 在對應(yīng)類別中的類別權(quán)重并存儲; B、 智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器根據(jù)用戶行為數(shù)據(jù)計算出用戶 偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視頻節(jié)目的初步推薦結(jié)果; C、 服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算視頻在各個時間段的屬性和權(quán)值,將視頻 在各個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合后生成最終推薦結(jié)果,并將最終推薦結(jié)果 發(fā)送至智能電視進行顯示。2. 根據(jù)權(quán)利要求1所述的視頻推薦方法,其特征在于,所述步驟A具體包括: A1、服務(wù)器從互聯(lián)網(wǎng)中獲取各個視頻的視頻信息; A2、服務(wù)器對視頻信息進行預(yù)處理后,建立視頻信息參數(shù)的向量空間模型; A3、使用聚類迭代算法對視頻信息參數(shù)的向量空間模型進行計算,根據(jù)計算結(jié)果得出 各個視頻在對應(yīng)類別中的類別權(quán)重后,將各個視頻的類別權(quán)重進行存儲。3. 根據(jù)權(quán)利要求2所述的視頻推薦方法,其特征在于,所述步驟B具體包括: B1、智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器對用戶行為數(shù)據(jù)進行預(yù)處理, 并根據(jù)預(yù)先設(shè)置的模型計算出用戶偏好數(shù)據(jù); B2、利用用戶偏好數(shù)據(jù)計算出視頻的第一相似度并存儲; B3、獲取用戶未觀看過的視頻與觀看過的視頻間的第二相似度; B4、根據(jù)第二相似度計算出用戶未觀看過的視頻節(jié)目的初始推薦值并存儲。4. 根據(jù)權(quán)利要求3所述的視頻推薦方法,其特征在于,所述步驟C具體包括: C1、服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各個時間段的屬性和權(quán)值存 儲到數(shù)據(jù)庫中; C2、服務(wù)器檢測智能電視播放視頻所在的時間段,將各個視頻在對應(yīng)的時間段的權(quán)值 通過計算疊加在各視頻在類別權(quán)重后,生成各個視頻的最終推薦值; C3、將視頻按照最終推薦值從高到低進行排序,獲取排序序列中的前N個視頻作為最終 推薦結(jié)果,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。5. 根據(jù)權(quán)利要求1~4任一項所述的視頻推薦方法,其特征在于,所述用戶行為數(shù)據(jù)包 括:用戶設(shè)備ID、設(shè)備IP、電視節(jié)目ID,節(jié)目點播開始時間、節(jié)目點播結(jié)束時間、節(jié)目總時長。6. -種視頻推薦系統(tǒng),其特征在于,系統(tǒng)包括: 類別權(quán)重計算模塊,用于服務(wù)器獲取各個視頻的視頻信息,利用聚類算法將視頻分成 不同的類別,計算各個視頻在對應(yīng)類別中的類別權(quán)重并存儲; 初步推薦結(jié)果生成模塊,用于智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器根 據(jù)用戶行為數(shù)據(jù)計算出用戶偏好數(shù)據(jù),根據(jù)用戶偏好數(shù)據(jù)計算出用戶未觀看過的視頻節(jié)目 的初步推薦結(jié)果; 最終推薦結(jié)果生成模塊,用于服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻在各 個時間段的屬性和權(quán)值,將視頻在各個時間段的屬性和權(quán)值與初步推薦結(jié)果結(jié)合后生成最 終推薦結(jié)果,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。7. 根據(jù)權(quán)利要求6所述的視頻推薦系統(tǒng),其特征在于,所述類別權(quán)重計算模塊具體包 括: 視頻信息獲取單元,用于服務(wù)器從互聯(lián)網(wǎng)中獲取各個視頻的視頻信息; 視頻信息處理單元,用于服務(wù)器對視頻信息進行預(yù)處理后,建立視頻信息參數(shù)的向量 空間模型; 類別權(quán)重計算單元,用于使用聚類迭代算法對視頻信息參數(shù)的向量空間模型進行計 算,根據(jù)計算結(jié)果得出各個視頻在對應(yīng)類別中的類別權(quán)重后,將各個視頻的類別權(quán)重進行 存儲。8. 根據(jù)權(quán)利要求7所述的視頻推薦系統(tǒng),其特征在于,所述初步推薦結(jié)果生成模塊具體 包括: 偏好數(shù)據(jù)獲取單元,用于智能電視采集用戶行為數(shù)據(jù)后上傳至服務(wù)器,服務(wù)器對用戶 行為數(shù)據(jù)進行預(yù)處理,并根據(jù)預(yù)先設(shè)置的模型計算出用戶偏好數(shù)據(jù); 第一相似度計算單元,用于利用用戶偏好數(shù)據(jù)計算出視頻的第一相似度并存儲; 第二相似度計算單元,用于獲取用戶未觀看過的視頻與觀看過的視頻間的第二相似 度; 初始推薦值生成單元,用于根據(jù)第二相似度計算出用戶未觀看過的視頻節(jié)目的初始推 薦值并存儲。9. 根據(jù)權(quán)利要求8所述的視頻推薦系統(tǒng),其特征在于,所述最終推薦結(jié)果生成模塊具體 包括: 時間段屬性及權(quán)值計算單元,用于服務(wù)器根據(jù)類別權(quán)重及用戶偏好數(shù)據(jù)計算各個視頻 在各個時間段的屬性和權(quán)值存儲到數(shù)據(jù)庫中; 最終推薦值生成單元,用于服務(wù)器檢測智能電視播放視頻所在的時間段,將各個視頻 在對應(yīng)的時間段的權(quán)值通過計算疊加在各視頻在類別權(quán)重后,生成各個視頻的最終推薦 值; 最終推薦結(jié)果發(fā)送單元,用于將視頻按照最終推薦值從高到低進行排序,獲取排序序 列中的前N個視頻,并將最終推薦結(jié)果發(fā)送至智能電視進行顯示。10. 根據(jù)權(quán)利要求6~9任一項所述的視頻推薦系統(tǒng),其特征在于,所述用戶行為數(shù)據(jù)包 括:用戶設(shè)備ID、設(shè)備IP、電視節(jié)目ID、節(jié)目點播開始時間、節(jié)目點播結(jié)束時間、節(jié)目總時長。
【文檔編號】H04N21/466GK106028071SQ201610329608
【公開日】2016年10月12日
【申請日】2016年5月17日
【發(fā)明人】馮研
【申請人】Tcl集團股份有限公司