馬宇洲 陸世翔 王喆
摘 要:電視節(jié)目是陪伴人們從小到大的娛樂項(xiàng)目,以前在電視機(jī)前收看節(jié)目,隨著科技的進(jìn)步,大家現(xiàn)在紛紛用智能手機(jī)或者平板在APP上收看想看的節(jié)目,方便易得。與此同時(shí),大數(shù)據(jù)也慢慢興起,如何根據(jù)人們搜索記錄和觀看記錄等信息去自動(dòng)為人們匹配可能感興趣或愿意收看的節(jié)目,也逐漸成為熱門研究之一。
本文中,我們利用python對附件一的數(shù)據(jù)進(jìn)行異常值檢測、去重等預(yù)處理?;陬A(yù)處理的數(shù)據(jù),初步對附件二中所給的數(shù)據(jù)與人們對各種類型的電視節(jié)目的感興趣程度的相關(guān)性。
根據(jù)已知數(shù)據(jù)中用戶所觀看的節(jié)目名字,利用python爬取到節(jié)目所屬的一級類別,貼上一級標(biāo)簽,然后對爬取的電視節(jié)目信息進(jìn)行切詞,提取關(guān)鍵詞并計(jì)算關(guān)鍵詞的信息熵,排序貼上二級、三級、四級標(biāo)簽。對附件一經(jīng)標(biāo)簽處理后的節(jié)目以及觀看時(shí)長進(jìn)行量化,建立用戶的偏好模型,對用戶的偏好進(jìn)行打分排序,然后根據(jù)協(xié)同過濾推薦模型把產(chǎn)品推薦給用戶,并計(jì)算出每一個(gè)產(chǎn)品的推薦指數(shù),選取TOP20 的推薦給用戶。
關(guān)鍵詞:TFIDF;K-means文本聚類;協(xié)同過濾推薦模型
一、挖掘目標(biāo)
本次建模目標(biāo)是利用產(chǎn)品信息描述和用戶觀看記錄,對觀眾的觀看偏好進(jìn)行挑選整合,以便于更好的針對他們的收視偏好制定營銷方案,對用戶進(jìn)行個(gè)性化推薦產(chǎn)品。我們首先對數(shù)據(jù)進(jìn)行預(yù)先分析處理,挖掘數(shù)據(jù)變化的特征和規(guī)律,對用戶偏好和產(chǎn)品之間的相似度建立模型,并檢驗(yàn)?zāi)P偷目煽啃?。然后用協(xié)同推薦過濾模型計(jì)算每一類的產(chǎn)品對相應(yīng)用戶的推薦指數(shù),為用戶量身定做符合偏好的個(gè)性化推薦。
(一)數(shù)據(jù)爬取
由于題中所給數(shù)據(jù)均是影視節(jié)目,僅給出節(jié)目名無法對用戶的喜好進(jìn)行判斷,所以需要繼續(xù)獲取用戶看過的節(jié)目的詳細(xì)信息,本文利用python進(jìn)行網(wǎng)絡(luò)爬蟲,將數(shù)據(jù)進(jìn)行了補(bǔ)充,并且獲取到了每個(gè)影視節(jié)目所屬類別。對產(chǎn)品和用戶貼標(biāo)簽。
獲取網(wǎng)頁后構(gòu)建正則表達(dá)式,目標(biāo)是對電影天堂進(jìn)行搜索提取數(shù)據(jù),并持續(xù)抓取數(shù)據(jù)。
(二)用戶個(gè)性化詞云標(biāo)簽
由于我們以家庭作為單位,所以用戶的個(gè)性化詞云標(biāo)簽是多維的。根據(jù)之前爬取用戶觀看節(jié)目的信息內(nèi)容,對用戶所有的觀看節(jié)目的信息寫入文檔,對此進(jìn)行切詞特征提取,并計(jì)算詞頻。
然后可視化用戶肖像,然后根據(jù)用戶的肖像對用戶進(jìn)行貼標(biāo)簽:
以上是用戶10853的用戶個(gè)性化詞云,從中抽取超時(shí)空男臣,蠟筆小新,寄生獸,少女魔幻,舌尖上的中國等類型的節(jié)目,給用戶貼標(biāo)簽:劇情、搞笑、奇幻、文化、美少女。
由用戶的標(biāo)簽可以推斷這個(gè)家庭中有個(gè)小女孩喜歡看搞笑、奇幻、美少女類的節(jié)目,同時(shí)這個(gè)家庭里的大人也喜歡看搞笑、劇情類的節(jié)目以及還喜歡看舌尖上的中國、日本櫻之味,文化美食類的節(jié)目。因此在個(gè)性化推薦過程中可以向10853這個(gè)用戶推薦兔小貝故事、淘氣爺孫、小豬佩奇、魔卡少女櫻、桃花運(yùn)等節(jié)目。
(三)中文切詞,去停用詞
在自然語言處理過程中,為了能夠更好地處理句子,往往需要把句子拆開分成一個(gè)一個(gè)的詞語,這樣能更好的分析句子的特性。在這里我們利用python中的jieba庫以精準(zhǔn)模式對文檔進(jìn)行切詞操作,篩選文檔中的中文停用詞并將其刪去。
二、推薦模型
(一)算法流程
1.收集用戶的觀看偏好,對不同行為進(jìn)行分組,然后對不同分組進(jìn)行加權(quán)計(jì)算用戶的總喜好。
2.計(jì)算相似用戶(基于用戶推薦),以及計(jì)算相似節(jié)目(基于節(jié)目推薦),關(guān)于相似度計(jì)算有很多種方法:余弦夾角相似度、歐幾里德距離度量、皮爾遜相關(guān)系數(shù)等,本文我們采用歐幾里德度量,表示相似度如下:
在計(jì)算用戶相似度時(shí),我們將一個(gè)用戶對所有物品的偏好作為一個(gè)向量,而在計(jì)算節(jié)目相似度時(shí),將用戶對某個(gè)物品的偏好作為一個(gè)向量,在得到相似度以后,然后計(jì)算相似用戶。
3.基于用戶推薦興趣最相近的K個(gè)用戶所喜歡的物品,計(jì)算如下:
其中,p(u,i)表示用戶u對物品i的感興趣程度,S(u,k)表示和用戶u興趣最接近的K個(gè)用戶,N(i)表示對物品i有過行為的用戶集合,Wuv表示用戶u和用戶v的興趣相似度,Rvi表示用戶v對物品i的興趣(這里簡化,所有Rvi都等于i)
然后利用矩陣計(jì)算推薦結(jié)果,得到物品之間的相似度,ItemCF通過如下公式計(jì)算用戶u對物品j的興趣:
基于節(jié)目的相似推薦最相近的K個(gè)節(jié)目,計(jì)算如下:
這里N(u)是用戶最喜歡的集合,S(j,k)是和物品j最相似的K個(gè)物品的集合,Wji是物品j和i的相似度,Rui是用戶u對物品i的興趣。(對于隱反饋數(shù)據(jù)集,如果用戶u對物品i有過行為,即可令Rui=1。)該公式的含義是,和用戶歷史上感興趣的物品越相似的物品,越有可能在用戶的推薦列表中獲得比較高的排名。
為了減少熱門節(jié)目的權(quán)重,給相應(yīng)的節(jié)目加上懲罰因子,因此減輕了熱門節(jié)目和較多節(jié)目相似的可能性。
4.混合推薦,在度量用戶A和B相似度時(shí),加上時(shí)間權(quán)重。在計(jì)算某用戶對某種節(jié)目的偏好程度時(shí),加上這個(gè)用戶觀看此節(jié)目的總時(shí)長權(quán)重。
(二)模型結(jié)果
根據(jù)網(wǎng)絡(luò)爬蟲將用戶可得大致分類:
將產(chǎn)品可大致分類:
參考文獻(xiàn):
[1] 任? 品.基于置信用戶偏好模型的電視推薦系統(tǒng)[D].清華大學(xué),2014
[2] 黃建宇、周愛武、肖? 云、譚天誠等.基于特征空間的文本聚類[D].安徽大學(xué),2017
[3] 華秀麗、朱巧明、李培峰等.語義分析與詞頻統(tǒng)計(jì)相結(jié)合的中文文本相似度量方法研究[D].蘇州大學(xué),2012