亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于物品內(nèi)容的電視產(chǎn)品推薦系統(tǒng)研究?

        2020-05-15 05:19:50姜雨菲
        計算機(jī)與數(shù)字工程 2020年2期
        關(guān)鍵詞:文本內(nèi)容用戶

        姜雨菲 萬 超

        (西安工業(yè)大學(xué)計算機(jī)科學(xué)與工程學(xué)院 西安 710021)

        1 引言

        隨著互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,網(wǎng)絡(luò)電視已經(jīng)在人群中得到普及,但是由于電視節(jié)目資源數(shù)量的不斷擴(kuò)大,用戶在尋找自己所需的節(jié)目資源時難度加大。此時對用戶的電視產(chǎn)品推薦功能顯得尤為重要。

        在各大公司的推薦系統(tǒng)中,根據(jù)推薦算法的不同主要可以分為基于協(xié)同過濾的推薦系統(tǒng)、混合的推薦系統(tǒng)、基于關(guān)聯(lián)規(guī)則的推薦系統(tǒng)等,其中基于協(xié)同過濾的推薦系統(tǒng)是應(yīng)用最為廣泛的。協(xié)同過濾推薦系統(tǒng)主要包括基于用戶的協(xié)同過濾推薦、基于項(xiàng)目的協(xié)同過濾推薦和基于模型的協(xié)同過濾推薦,其中在用戶比較多時基于項(xiàng)目的協(xié)同過濾算法比基于用戶的協(xié)同過濾算法有更好的時效性,它通常應(yīng)用于電子商務(wù)推薦系統(tǒng)中[1,14]。近年來,基于內(nèi)容的文本挖掘領(lǐng)域的隱形語義模型逐漸流行起來,它的核心思想是挖掘用戶隱形的感興趣的物品推薦,主要技術(shù)包括隱含類別模型、隱含主題模型、矩陣分解技術(shù)等。

        雖然協(xié)同過濾推薦系統(tǒng)以及一些電視節(jié)目推薦系統(tǒng)在很多方面取得了很多研究成果,但是依然存在很多問題需要解決,比如在物品-物品評分稀疏矩陣下,傳統(tǒng)的相似性度量方法不能很好地計算用戶間或項(xiàng)目間的相似度,并且存在冷啟動、新項(xiàng)目等問題,以及核心的推薦算法的好壞等問題[2~3]。

        本文介紹了傳統(tǒng)協(xié)同過濾推薦算法的實(shí)現(xiàn)過程,分析了其在冷啟動、新項(xiàng)目等問題上的不足。然后,介紹了針對冷啟動問題的解決方法。利用了廣電網(wǎng)絡(luò)運(yùn)營公司的大數(shù)據(jù)基礎(chǔ)營銷服務(wù)平臺積累下來的海量真實(shí)數(shù)據(jù),通過分析用戶的收視內(nèi)容與產(chǎn)品內(nèi)容,利用jieba中文分詞工具對用戶收視內(nèi)容與電視產(chǎn)品內(nèi)容進(jìn)行分詞處理,統(tǒng)計了對應(yīng)用戶與節(jié)目的詞語次數(shù),通過計算詞語的TF-IDF值[15~16],得到用戶收視內(nèi)容向量表與電視產(chǎn)品向量表。經(jīng)過計算用戶內(nèi)容與產(chǎn)品內(nèi)容的余弦相似度,得到推薦值。最后通過準(zhǔn)確率和召回率兩個指標(biāo)對該系統(tǒng)進(jìn)行了評價,最終證明該方法在解決冷啟動問題上有較好的效果。

        2 算法介紹

        2.1 協(xié)同過濾推薦算法

        基于物品的協(xié)同過濾(item-based collabora?tive filtering)算法是目前得到廣泛應(yīng)用的算法之一[4]。其基本思想就是通過分析物品之間的關(guān)聯(lián)度來給用戶推薦那些與他們曾經(jīng)喜歡過的產(chǎn)品關(guān)聯(lián)度較大的產(chǎn)品。

        ItemCF算法的基本思想并不是通過計算物品的內(nèi)容相似度來得到物品之間的關(guān)聯(lián)程度,而是通過分析用戶的行為記錄來計算物品之間的關(guān)聯(lián)程度[5]。簡單來說,若物品A和物品B具有很大的關(guān)聯(lián)度是由于喜歡物品A的用戶多數(shù)也會選擇物品B。

        首先,我們可以用下面的公式來定義物品的關(guān)聯(lián)度:

        上式中,wij表示物品i與物品j的關(guān)聯(lián)度,分母就代表喜歡物品i的用戶集合,而分子則是同時喜歡物品i和物品j的用戶集合。因此,這里物品i與j之間關(guān)聯(lián)度簡單來說就是指只喜歡物品i的用戶中同時喜歡兩種物品的用戶所占的比例。

        上述定義似乎很正確,但存在一個漏洞,也就是沒有考慮物品的熱門程度。假設(shè)物品j是熱門物品,那么喜歡的人會很多,此時wij就會接近1,這就表現(xiàn)為熱門物品與所有物品的關(guān)聯(lián)度都接近1。所以為了避免總是會推薦那些熱門的物品,可以對上式進(jìn)行改進(jìn):

        這個公式懲罰了物品j的權(quán)重,這樣也就緩解了上述問題[6]。

        在用這種方法計算關(guān)聯(lián)度時,由于用戶興趣列表很大,所以計算的時間復(fù)雜度較高。在實(shí)際情況中,某些用戶可能只對一兩個物品產(chǎn)生過行為,其興趣列表很小,這樣就會導(dǎo)致 | N(i)∩N(j)|=0。也就是說很多時間會浪費(fèi)在計算這種物品之間的相似度上。如果換一個思路,我們可以首先計算出|N(i)∩N(j)|≠0的物品對,再對這些物品對做后續(xù)計算,這樣就可以省去計算關(guān)聯(lián)度為0的物品對的時間。為此,我們可以首先建立用戶到物品的倒排表,得到每個用戶的興趣列表。令稀疏矩陣C[i][j]= | N(i)∩N(j) |,假設(shè)物品i和j同時屬于倒排表中K個用戶對應(yīng)的物品列表,那么就有C[i][j]=K。最終就可以得到所有物品之間K不為0的C[i][j]。

        圖1是一個根據(jù)上面的程序計算物品相似度的簡單例子。

        圖1 一個計算物品相似度的簡單例子

        圖1 中最左邊每一條為一個用戶的物品興趣列表,然后,我們將里面的物品兩兩加一,得到一個單獨(dú)的用戶興趣矩陣。最終將所有這些單獨(dú)的矩陣相加得到上圖中最終的C矩陣。C矩陣中記錄了同時喜歡物品i和物品j的用戶數(shù)。最后,我們可以將C矩陣進(jìn)行歸一化處理,這樣就可以得到物品之間的余弦相似度矩陣W,W中記錄了兩兩物品的相似度。

        然后我們可通過如下公式計算用戶u對一個新物品j的興趣度:

        上式中N(u)是用戶喜歡的物品的集合,S(j,K)是和物品j最相似的K個物品的集合,wji是物品j和i的相似度,rui是用戶u對物品i的興趣[7~8]。puj就表示為物品j對于用戶u的推薦度。

        2.2 冷啟動問題

        在傳統(tǒng)推薦算法中,它們所需推薦的物品總是已經(jīng)出現(xiàn)在市場中的,也就是說這些產(chǎn)品已經(jīng)得到了部分用戶的反饋。而對于某些新產(chǎn)品來說,它們無法得到一個好的推薦目標(biāo)用戶,如何在沒有得到用戶對產(chǎn)品的反饋信息的情況下對產(chǎn)品做出一個好的推薦方案,就是冷啟動的問題[8,17~18]。

        通過上節(jié)中算法的介紹,我們可以知道對于傳統(tǒng)的ItemCF算法來說,物品冷啟動是一個嚴(yán)重的問題。如果需要解決這個問題,就需要考察物品的內(nèi)容信息了。

        物品的內(nèi)容信息多種多樣,一般來說,物品的內(nèi)容可以通過向量空間模型表示,它會將每個物品表示成一個關(guān)鍵詞向量。其中一些諸如導(dǎo)演、演員等實(shí)體的信息就可以直接作為關(guān)鍵詞。但如果是諸如物品簡介等形式的文本信息時,就需要引入一些理解自然語言的技術(shù)(如Python中的jieba分詞工具包等)來抽取文本中的關(guān)鍵詞。圖2展示了從文本生成關(guān)鍵詞向量的主要步驟。在得到關(guān)鍵詞集合后,需要對關(guān)鍵詞進(jìn)行排名,計算每個關(guān)鍵詞的權(quán)值,從而生成關(guān)鍵詞向量。

        圖2 關(guān)鍵詞向量的生成過程

        對物品d,它的內(nèi)容表示成一個關(guān)鍵詞向量如下:

        如果物品是文本,我們可以用信息檢索領(lǐng)域著名的TF-IDF公式計算詞的權(quán)重:

        在得到每個物品的關(guān)鍵詞向量后,物品之間的內(nèi)容相似度就可以通過向量之間的余弦相似度公式計算得到:

        在實(shí)際應(yīng)用中,可以首先通過建立關(guān)鍵詞—物品的倒排表加速這一計算過程。得到物品相似度之后,可以利用傳統(tǒng)的ItemCF算法中的思想,最終生成用戶的產(chǎn)品推薦列表。

        2.3 評價指標(biāo)

        對于推薦系統(tǒng)而言,推薦的精確度是評判推薦系統(tǒng)優(yōu)劣的一個重要指標(biāo),它反映了系統(tǒng)推薦給用戶的視頻有多少是用戶感興趣的。本文從準(zhǔn)確率和召回率兩個方面來對系統(tǒng)進(jìn)行評測,這個指標(biāo)是推薦系統(tǒng)最重要的評測指標(biāo)[20]。其中準(zhǔn)確率的計算公式如下所示:

        召回率的計算公式如下所示:

        R(u)為向用戶u推薦的電影個數(shù)。

        T(u)為用戶u在測試集合上感興趣的電影個數(shù)。

        我們可以通過訓(xùn)練集預(yù)測用戶在測試集上的興趣偏好,然后計算預(yù)測結(jié)果和測試集實(shí)際偏好的重合度。重合度越高,系統(tǒng)的準(zhǔn)確度越高[19~20]。

        3 實(shí)驗(yàn)分析

        3.1 數(shù)據(jù)介紹

        本實(shí)驗(yàn)中所采用的數(shù)據(jù)集合包括兩部分,第一部分為1329個用戶的38010條收視記錄,數(shù)據(jù)形式如表1所示;第二部分為18480條節(jié)目信息,數(shù)據(jù)形式如表2所示。

        表1 用戶收視記錄表

        表2 節(jié)目信息表

        3.2 建模流程

        將用戶收視節(jié)目內(nèi)容與電視產(chǎn)品節(jié)目內(nèi)容進(jìn)行清洗、分詞、停詞等預(yù)處理操作后使用TF-IDF算法對兩組內(nèi)容進(jìn)行文本向量化,TF表示特征詞在該條文本中出現(xiàn)的概率,IDF表示含有該特征詞的文本數(shù)占所有文本數(shù)的比例,它反映了該特征詞在所有文本中的熱度[18,20~21]。單獨(dú)使用 TF值可能會導(dǎo)致一個問題:一些特征詞可能在所有文檔中的TF值都很高,很難區(qū)分這些特征詞到底代表哪個文檔。因此需要將TF和IDF值結(jié)合使用,算法流程如圖1所示。

        圖3 操作流程圖

        根據(jù)用戶收視節(jié)目的內(nèi)容與待推薦電視產(chǎn)品內(nèi)容,對文本的預(yù)處理進(jìn)行以下幾個步驟:

        1)數(shù)據(jù)清洗:首先將文本中的一些噪音數(shù)據(jù)清除掉,因?yàn)楣?jié)目內(nèi)容中難免有一些特殊符號、數(shù)字等信息,這些信息對于內(nèi)容的識別沒有任何意義,會影響模型的準(zhǔn)確性,所以要對這些信息進(jìn)行清除。

        2)分詞、停詞:中文的分詞是將一個漢字序列根據(jù)某種規(guī)則切分成若干個詞語,然后將無意義的詞去掉。停詞則是去除一些對內(nèi)容識別度不高的詞,對文本的識別沒有任何意義,也要去除掉,同時也能降低向量空間的維度,減少程序運(yùn)行內(nèi)存消耗[20]。

        根據(jù)TF-IDF算法,對文本建立向量空間模型,步驟如下:

        1)計算TF-IDF值:通過每個條目的詞語出現(xiàn)次數(shù),分別計算詞語出現(xiàn)的TF和IDF值,得到最終的TF-IDF值,其代表了該詞語在每個條目中的重要程度。

        2)文本向量化:對文本進(jìn)行向量化,為下一步計算用戶收視內(nèi)容與電視節(jié)目信息內(nèi)容的相似度作出準(zhǔn)備。

        通過python語言對如上步驟進(jìn)行處理:

        首先遍歷文本預(yù)處理后得到的字典,計算TF值,存入新的json文件,其每個條目的組織形式為{用戶設(shè)備號:[[詞語1,TF1],[詞語2,TF2],…,[詞語n,TFn]]}。根據(jù)文本預(yù)處理后得到的字典,建立用戶-詞語的倒排表,存入新的json文件,便于IDF值的計算,其每個條目的組織形式為{詞語:[[用戶設(shè)備號1,出現(xiàn)次數(shù)1],[用戶設(shè)備號2,出現(xiàn)次數(shù)2],…,[用戶設(shè)備號n,出現(xiàn)次數(shù)n]]}。遍歷倒排表,計算出IDF值,存入新的json文件,其每個條目的組織形式為{詞語:[[用戶設(shè)備號1,IDF1],[用戶設(shè)備號2,IDF2],…,[用戶設(shè)備號n,IDFn]]}。通過TF值表和IDF值的倒排表,得到TF-IDF值表,存入新的json文件,其每個條目的組織形式為{用戶設(shè)備號:[[詞語1,TF-IDF1],[詞語2,TF-IDF2],…,[詞語n,TF-IDFn]]}。其中未出現(xiàn)的詞語的TF-IDF值則為0。

        最終形式如表3所示。

        表3 用戶點(diǎn)播信息向量空間模型

        分別將用戶點(diǎn)播信息與用戶單片點(diǎn)播信息,電視產(chǎn)品節(jié)目信息分別進(jìn)行如上處理,電視產(chǎn)品節(jié)目信息的最后字典條目組織形式為{產(chǎn)品節(jié)目編號:[[詞語1,TF-IDF1],[詞語2,TF-IDF2],…,[詞語n,TF-IDFn]]}。

        根據(jù)所得的用戶收視信息的用戶-內(nèi)容向量表,電視產(chǎn)品-內(nèi)容向量表,計算推薦度分為以下幾個步驟:

        計算用戶收視節(jié)目的信息與電視產(chǎn)品節(jié)目的余弦相似度,得到初步推薦值。余弦相似度公式為

        其中mi表示用戶-內(nèi)容向量表,nj表示電視產(chǎn)品-內(nèi)容向量表。分別計算用戶點(diǎn)播信息對應(yīng)的節(jié)目推薦名單與推薦度,用戶單片點(diǎn)播信息對應(yīng)的推薦名單與推薦度。給予相應(yīng)的權(quán)值,綜合計算,得到最終的推薦名單與推薦度。

        使用python語言對如上步驟進(jìn)行處理:

        根據(jù)兩個向量表字典,找出同時擁有詞語及對應(yīng)TF-IDF值,將其相乘,存入新json文件,字典條目組織形式為{詞語:[[[用戶設(shè)備號1,電視節(jié)目編號1],TF-IDFm1*TF-IDFn1],[[用戶設(shè)備號2,電視節(jié)目編號 2],TF-IDFm2*TF-IDFn2],…,[[用戶設(shè)備號 n,電視節(jié)目編號 n],TF-ID?Fmn*TF-IDFnn]]}。將同一個詞語中用戶設(shè)備號-節(jié)目編號對相同的進(jìn)行合并,存入新json文件,字典條目組織形式為{“用戶設(shè)備號,節(jié)目編號”:[TF-IDFm1*TF-IDFn1,…,TF-IDFmn*TF-IDF?nn]}。

        遍歷上一步得到的字典,將value值列表中的值相加,得到余弦相似度公式分子,新的字典組織形式為

        {“用戶設(shè)備號,節(jié)目編號”:sum(TF-ID?Fm*TF-IDFn)}。

        通過用戶-點(diǎn)播內(nèi)容詞TF-IDF向量表計算出每個用戶的向量模|mi|,通過節(jié)目-內(nèi)容詞TF-IDF向量表計算出每個節(jié)目的向量模|nj|,根據(jù)上一步得到的字典中的“用戶設(shè)備號-節(jié)目編號”計算出對應(yīng)的分母值,最終得到新的字典,字典條目組織形式為{“用戶設(shè)備號,節(jié)目編號”:sum(TF-ID?Fm*TF-IDFn)/(|mi|*|nj|)}。

        分別計算得到用戶點(diǎn)播信息-節(jié)目信息推薦度表和用戶單片點(diǎn)播信息-節(jié)目信息推薦度表,由于單片點(diǎn)播信息的重要程度比點(diǎn)播信息的重要程度高[21],所以,給予單片點(diǎn)播信息的權(quán)值為0.6,點(diǎn)播信息的權(quán)值為0.4,計算最終推薦度并進(jìn)行排序并選取推薦度最高的20個節(jié)目編號對應(yīng)推薦值。最終字典組織形式為{用戶設(shè)備號:[[節(jié)目編號1,推薦度1],[節(jié)目編號2,推薦度2],…,[節(jié)目編號n,推薦度n]]}。

        最終形式表4所示:

        3.3 結(jié)果分析

        根據(jù)以上過程,將最終推薦列表結(jié)合節(jié)目信息輸出,部分結(jié)果如表5所示。

        根據(jù)所得推薦列表與測試數(shù)據(jù)中用戶的收視記錄,以準(zhǔn)確率和召回率作為系統(tǒng)的評價指標(biāo),通過計算得到準(zhǔn)確率和召回率分別為25.16%和14.11%。

        表4 最終推薦度

        4 結(jié)語

        本文利用了廣電網(wǎng)絡(luò)運(yùn)營公司的大數(shù)據(jù)基礎(chǔ)營銷服務(wù)平臺積累下來的海量真實(shí)數(shù)據(jù),采用數(shù)據(jù)挖掘技術(shù),分析了用戶的收視偏好、產(chǎn)品的內(nèi)容信息。對傳統(tǒng)的基于物品的協(xié)同過濾算法進(jìn)行了介紹,描述了其在冷啟動問題上的不足,并將其與基于產(chǎn)品內(nèi)容的推薦算法結(jié)合,實(shí)現(xiàn)了對用戶的產(chǎn)品個性化推薦。

        結(jié)果表明:在利用準(zhǔn)確率和召回率作為評價指標(biāo)時,基于物品內(nèi)容的推薦算法在解決冷啟動問題上有較好的效果,兩者分別達(dá)到了25.16%和14.11%。

        猜你喜歡
        文本內(nèi)容用戶
        內(nèi)容回顧溫故知新
        在808DA上文本顯示的改善
        基于doc2vec和TF-IDF的相似文本識別
        電子制作(2018年18期)2018-11-14 01:48:06
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        主要內(nèi)容
        臺聲(2016年2期)2016-09-16 01:06:53
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學(xué)隱喻
        如何獲取一億海外用戶
        如何快速走進(jìn)文本
        語文知識(2014年1期)2014-02-28 21:59:13
        国产精品你懂的在线播放| 亚洲高清一区二区精品| 国产99一区二区三区四区| 日韩精品一区二区三区中文| 99精品视频69V精品视频| 毛片无码国产| 国产真人无遮挡作爱免费视频| 超清无码AV丝袜片在线观看| av免费一区二区久久| 国产精品二区一区二区aⅴ污介绍| 中国a级毛片免费观看| 成人亚洲欧美久久久久| 神马不卡影院在线播放| 女人的精水喷出来视频| 性高朝久久久久久久| 国产性一交一乱一伦一色一情| 中文字幕午夜精品一区二区三区 | 国产精品老熟女露脸视频| 国产精品美女久久久久久大全| 亚洲一区二区三区av无| 绝顶高潮合集videos| 无码国内精品久久人妻| 草草网站影院白丝内射| 国产不卡在线免费视频| 人妻熟女翘屁股中文字幕| 国产精品无码久久久久成人影院| 99ri国产在线观看| 亚洲精品在线观看自拍| 精品无码久久久久久久久水蜜桃| 九月婷婷人人澡人人添人人爽| 国产免费无码9191精品| 亚洲一区二区三区高清视频| 亚洲精品无码不卡在线播he| 亚洲精品国产福利一二区| 欧美洲精品亚洲精品中文字幕| 久久精品熟女亚洲av麻豆永永| 亚洲伊人一本大道中文字幕| 久久久久久久久久久国产 | 国模一区二区三区白浆| 日韩中文字幕不卡在线| 狠狠色综合7777久夜色撩人ⅰ|