本發(fā)明涉及一種短文本推薦方法及裝置,屬于信息處理技術(shù)領(lǐng)域,具體涉及一種基于用戶行為和情感分析的短文本推薦方法及裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)技術(shù)和社交網(wǎng)絡(luò)的發(fā)展,網(wǎng)絡(luò)已成為人們獲取信息的主要來源,人們花費在社交網(wǎng)絡(luò)上的時間越來越多,遇事也更傾向于在社交網(wǎng)絡(luò)上抒發(fā)情感。傳統(tǒng)的社交網(wǎng)絡(luò)推薦方法不能滿足用戶對信息的發(fā)現(xiàn)需求,因為有時用戶自身也不能夠準(zhǔn)確描述目前自身的需求。
推薦算法的目的是指根據(jù)用戶的歷史行為以及個人信息等猜測用戶的喜好,向用戶推薦其可能會感興趣的內(nèi)容或者物品?,F(xiàn)有的技術(shù)中,推薦算法主要分為兩種:第一種是基于內(nèi)容過濾,基于內(nèi)容過濾的推薦系統(tǒng)通過比較商品之間的相似性而不是用戶之間的相似性實現(xiàn)推薦功能;第二種是基于協(xié)同過濾,基于協(xié)同過濾的電子商務(wù)推薦系統(tǒng)并不分析商品之間的相似性而是學(xué)習(xí)目標(biāo)用戶和歷史用戶之間行為的相似性而不依賴商品的特征,從而根據(jù)相似歷史用戶的行為生成推薦結(jié)果。
但是在上述現(xiàn)有技術(shù)中,基于內(nèi)容過濾能考慮到短文本的相似而不能考慮到短文本的時效性,所以推薦效果不理想;基于協(xié)同過濾,必須是鑒于訪問用戶而進(jìn)行的推薦,對時效性要求較高的短文本推薦而言只推薦被訪問過的人們短文本,故在協(xié)同過濾中,就會生成一些過期的熱門短文本。同時,上述技術(shù)在為用戶推薦短文本時沒有考慮用戶的情感問題,不能夠推薦符合用戶心情,能夠積極正向引導(dǎo)用戶情感的短文本。
技術(shù)實現(xiàn)要素:
本發(fā)明針對社交網(wǎng)絡(luò)上現(xiàn)有大量短文本不能夠有效合理地推薦給相關(guān)用戶以及正向引導(dǎo)用戶情感的難題,結(jié)合用戶歷史行為以及用戶歷史短文本情感,通過情感負(fù)相關(guān)性分析,匹配相關(guān)類別的短文本和用戶,推薦相關(guān)短文本。
本發(fā)明的上述技術(shù)問題主要是通過下述技術(shù)方案得以解決的:
一種基于用戶行為和情感分析的短文本推薦方法,包括:
步驟1,基于獲取的用戶歷史數(shù)據(jù)生成用戶特征向量;
步驟2,基于所述用戶特征向量獲取與目標(biāo)用戶具有相似歷史行為的參考用戶作為目標(biāo)用戶的相似用戶群;
步驟3,計算目標(biāo)用戶最近發(fā)表的短文本情感特征向量e1;
步驟4,基于用戶最近發(fā)表的短文本的情感向量對該用戶進(jìn)行短文本的推薦。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦方法中,所述步驟1具體包括:
步驟1.1,計算用戶一段時間內(nèi)發(fā)表原創(chuàng)短文本頻率,記為fo;
步驟1.2,計算用戶一段時間內(nèi)發(fā)表轉(zhuǎn)發(fā)短文本頻率,記為ft。
步驟1.3,使用lda主題模型對用戶已發(fā)表的短文本及自我介紹進(jìn)行分析,獲取主題特征,記為t;
步驟1.4,基于fo,ft,t構(gòu)造用戶特征向量。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦方法中,所述步驟2具體包括:
步驟2.1,計算用戶發(fā)表行為相似度
步驟2.2,計算短文本的主題相似度ρt=num(t1∩t);
步驟2.3,基于公式ρh=w1ρt+w2ρu獲取用戶行為相似度,按用戶行為相似度對參考用戶進(jìn)行降序排序,取前n個參考用戶作為目標(biāo)用戶的相似用戶群;
式中,目標(biāo)用戶的原創(chuàng)短文本頻率ft1,目標(biāo)用戶的轉(zhuǎn)發(fā)短文本頻率fo1,目標(biāo)用戶的主題特征t1,w1,w2分別為用戶發(fā)表行為相似度、用戶發(fā)表行為相似度的權(quán)值。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦方法中,所述步驟3具體包括:
步驟3.1,對目標(biāo)用戶最近發(fā)表的短文本進(jìn)行分詞;
步驟3.2,統(tǒng)計不同詞性的詞語出現(xiàn)的頻率,將各詞性詞語出現(xiàn)頻率按序填入數(shù)組,記為該短文本的情感向量e1;
步驟3.3,基于公式e1=x·pemotion-y·nemotion計算情感向量e1的情感值;其中,pemotion為各正向情感詞對應(yīng)權(quán)重,nemotion為各負(fù)向情感詞對應(yīng)權(quán)重,x為情感向量e1中各正向情感詞對應(yīng)的分值,y為情感向量e1中的負(fù)向情感詞對應(yīng)的分值。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦方法中,所述步驟4具體包括:
步驟4.1,將相似用戶群最近發(fā)表的短文本選入待推薦文本集,基于以下公式獲取待推薦文本集中的各個待推薦文本與目標(biāo)用戶最近發(fā)表的短文本之間的情感相似度ρ:
式中,
步驟4.2,根據(jù)情感相似度ρ從待推薦文本集中選擇若干個待推薦文本作為候選文本。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦方法中,所述步驟4.2中,
當(dāng)e1<0時,將待推薦文本集中的短文本與目標(biāo)用戶最近發(fā)表的短文本逐一進(jìn)行比對,最后得到三個ρ最趨近于-1的短文本作為候選推薦;當(dāng)e1>0時,將待推薦文本集中的短文本與目標(biāo)用戶最近發(fā)表的短文本逐一進(jìn)行比對,最后得到三個最趨近于1的短文本作為候選推薦。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦方法中,從候選推薦的短文本選擇點贊數(shù)最高的作為推薦短文本。
一種基于用戶行為和情感分析的短文本推薦裝置,包括:
特征提取模塊,基于獲取的用戶歷史數(shù)據(jù)生成用戶特征向量;
群體劃分模塊,基于所述用戶特征向量獲取與目標(biāo)用戶具有相似歷史行為的參考用戶作為目標(biāo)用戶的相似用戶群;
情感分析模塊,計算目標(biāo)用戶最近發(fā)表的短文本情感特征向量e1;
文本推薦模塊,基于用戶最近發(fā)表的短文本的情感向量對該用戶進(jìn)行短文本的推薦。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦裝置,所述特征提取模塊,具體包括:
原創(chuàng)頻率計算單元,計算用戶一段時間內(nèi)發(fā)表原創(chuàng)短文本頻率,記為fo;
轉(zhuǎn)發(fā)頻率計算單元,計算用戶一段時間內(nèi)發(fā)表轉(zhuǎn)發(fā)短文本頻率,記為ft。
主題特征計算單元,使用lda主題模型對用戶已發(fā)表的短文本及自我介紹進(jìn)行分析,獲取主題特征,記為t;
特征向量構(gòu)造單元,基于f0,ft,t構(gòu)造用戶特征向量。
作為優(yōu)選,上述的一種基于用戶行為和情感分析的短文本推薦裝置,所述情感分析模塊具體包括:
文本分詞單元,對目標(biāo)用戶最近發(fā)表的短文本進(jìn)行分詞;
向量構(gòu)造單元,統(tǒng)計不同詞性的詞語出現(xiàn)的頻率,將各詞性詞語出現(xiàn)頻率按序填入數(shù)組,記為該短文本的情感向量e1;
情感評分單元,基于公式e1=x·pemotion-y·nemotion計算情感向量e1的情感值;其中,pemotion為各正向情感詞對應(yīng)權(quán)重,nemotion為各負(fù)向情感詞對應(yīng)權(quán)重,x為情感向量e1中各正向情感詞對應(yīng)的分值,y為情感向量e1中的負(fù)向情感詞對應(yīng)的分值。
因此,本發(fā)明具有如下優(yōu)點:
(1)時效性強(qiáng),能夠及時向用戶推薦感興趣的時效性較強(qiáng)的短文本,而非過期的熱門短文本;
(2)準(zhǔn)確性高,能夠?qū)⒎嫌脩粜那?,積極正向引導(dǎo)用戶情感的短文本推薦給用戶;
(3)目的性強(qiáng),能夠通過有效的對用戶推薦短文本達(dá)到情感干預(yù)的作用。
附圖說明
圖1是本發(fā)明中實施流程圖。
圖2是本發(fā)明中獲取相似用戶群流程圖。
圖3是本發(fā)明中分析用戶情感推薦短文本流程圖。
具體實施方式
下面通過實施例,并結(jié)合附圖,對本發(fā)明的技術(shù)方案作進(jìn)一步具體的說明。
實施例:
本發(fā)明針對社交網(wǎng)絡(luò)上現(xiàn)有大量短文本不能夠有效合理地推薦給相關(guān)用戶以及正向引導(dǎo)用戶情感的難題,通過分析用戶歷史行為以及用戶歷史短文本情感,通過情感負(fù)相關(guān)性的分析,匹配相關(guān)類別的短文本和用戶,推薦相關(guān)短文本。
本發(fā)明提供了一種基于用戶行為和情感分析的短文本推薦方法,其實施流程如圖1所示,包括如下步驟:
首先,獲取到相關(guān)用戶的歷史數(shù)據(jù),包括用戶自我介紹、近期發(fā)表的文本內(nèi)容、原創(chuàng)文本數(shù)量、轉(zhuǎn)發(fā)文本數(shù)量以及發(fā)表過的文本點贊數(shù)量,將其存儲于數(shù)據(jù)庫上。
對用戶行為進(jìn)行分析,進(jìn)行用戶聚類,獲取與目標(biāo)用戶相似的用戶群,其流程如圖2所示。將目標(biāo)用戶一段時間內(nèi)發(fā)表原創(chuàng)短文本頻率記為ft1,一段時間內(nèi)發(fā)表轉(zhuǎn)發(fā)短文本頻率,記為fo1。同時使用lda主題模型對目標(biāo)用戶已發(fā)表的短文本及自我介紹進(jìn)行分析,獲取主題特征,記為t1。將待比對用戶的一段時間內(nèi)發(fā)表原創(chuàng)短文本頻率記為ft,一段時間內(nèi)轉(zhuǎn)發(fā)的短文本記為fo,將使用lda主題模型對目標(biāo)用戶已發(fā)表的短文本及自我介紹進(jìn)行分析所獲取得主題特征記為t。計算目標(biāo)用戶與待比對用戶的用戶發(fā)表行為相似度
然后,分析目標(biāo)用戶近期情感,為其推薦相關(guān)微博,其流程如圖3所示。對用戶最近發(fā)表的短文本進(jìn)行情感分析。使用nlpir分詞工具對目標(biāo)用戶最近發(fā)表的短文本進(jìn)行分詞,并統(tǒng)計不同詞性的詞語出現(xiàn)的頻率,并將各詞性詞語出現(xiàn)頻率按序填入數(shù)組,記為該短文本的情感向量e1。取e1的情感值為e1=x·pemotion-y·nemotion,其中,pemotion為各正向情感詞對應(yīng)權(quán)重,nemotion為各負(fù)向情感詞對應(yīng)權(quán)重,x為情感向量中各正向情感詞對應(yīng)的參數(shù),y為情感向量負(fù)向情感詞對應(yīng)的參數(shù)。將獲取的相似用戶群所發(fā)所有短文本選入待推薦文本集,待推薦文本情感向量記為e,獲取情感相似度
本文中所描述的具體實施例僅僅是對本發(fā)明精神作舉例說明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對所描述的具體實施例做各種各樣的修改或補(bǔ)充或采用類似的方式替代,但并不會偏離本發(fā)明的精神或者超越所附權(quán)利要求書所定義的范圍。