石曦彤,汪嘉琪,劉邦望,李 葉
(東北林業大學信息與計算機工程學院,哈爾濱 150040)
一種基于用戶隱式反饋的微博信息過濾方法
石曦彤,汪嘉琪?,劉邦望?,李 葉?
(東北林業大學信息與計算機工程學院,哈爾濱150040)
微博平臺的興起革新了人們的互動方式,給人們獲取信息帶來了極大便利。然而,在信息超載的環境下,人們需要花費大量的時間從許多冗余的微博信息中尋找自己感興趣的信息,剔除無用信息。針對該問題,本文設計了一種新的方法對用戶的微博信息進行過濾。該方法在傳統方法基礎上增加用戶反饋環節;同時,考慮用戶興趣隨時間變化的特點,在進行信息過濾時考慮時間對興趣度的影響。該方法為微博信息個性化過濾提供了一種新思路。
微博;信息過濾;隱式反饋;時間權重
新浪微博是一個由新浪網籌策推出的提供微型博客類服務的社交網站。通過微博,用戶可以將看到的、聽到的、想到的事情寫成一句話,或發送一張圖片,通過電腦或者手機隨時隨地提送給朋友,一起分享、討論;還可以關注朋友,即時看到朋友們的發布信息。微博平臺的興起創意變革了人們的互動方式,為人們獲取信息帶來了極大便利。然而,在信息超載[1-2]的環境下,人們需要從大量的資源內容中尋找自己感興趣的信息,剔除那些無用的信息。無用信息不僅會造成網絡資源浪費,影響人們的正常有序交流,甚至還可能會被用來散播虛假消息、商業廣告或惡意鏈接,從而造成重大的經濟和社會危害。
為了提高用戶體驗,有針對性地為用戶提供個性化的關注信息,設計一種新的能夠反映用戶興趣變化的信息過濾方法即已突顯其高度必要及重要作用。因此,本文引入用戶反饋機制,并選用用戶最新的評價信息來自動更新推薦模型,該模型能夠根據用戶的實時需求和關注動態來為用戶做出推薦,為用戶提供“私人定制”式的貼心服務,用戶體驗也隨即得到現實高度提升。
本文設計研發的基于用戶隱式反饋的微博信息過濾方法如圖1所示。就整體來說,方法主要包括收集用戶數據、提取微博信息特征、建立用戶興趣模型、信息過濾和推薦、用戶反饋和更新用戶興趣集6個部分。在具體實現過程中,該方法利用新浪公開的API獲取用戶的基本數據和用戶行為日志作為數據集合進行實驗;利用TF-IDF方法對經由中文分詞技術得到的詞進行統計以獲取微博信息特征;采用隱式方式確定用戶的興趣后,再利用基于向量空間模型的表示法來建立用戶興趣模型;然后,又采用向量的夾角余弦值來計算用戶興趣特征與微博內容特征之間的相似度,將其作為向用戶推薦微博的推薦度,同時則選取推薦度較大的一定數量微博作為推薦集而對外形成推薦;最后,即根據用戶的反饋將微博信息分為有用信息和無用信息2類,而且將其中的有用信息添加到用戶興趣集,開始新一輪的特征提取工作,以更新用戶的興趣模型。下面將逐一論述各個部分的重點實現過程。
1.1建立用戶興趣集
微博信息的提取主要有2種方式。一種是利用圖遍歷的思想通過網絡爬蟲提取,另一種是通過微博開放平臺的微博API提取。利用網絡爬蟲提取的微博信息,一般為文本文件的形式,里面包含了很多標簽內容,占用存儲空間大,格式復雜且規范性較差,需要對其進行文本規范化處理[3]。而通過微博開放平臺的微博API提取的微博信息需要的存儲空間相對較小,格式相對規范和簡便,易于操作。所以本文采用微博API提取微博信息。提取的數據經過處理、且去除垃圾信息后用于本方法。提取的部分數據如圖2所示。

圖1 基于用戶反饋的微博信息過濾方法Fig.1 Method for filtering microblog information based on user’s implicit feedback
在此,針對提取信息的說明解釋即如表1所示。
提取與用戶相關的微博信息之后,將一定時間段內(如近30天)用戶閱讀過或做出轉發、點贊、評論等行為的微博信息作為用戶u的興趣集合,記作Ru。這個用戶興趣集合將是下一步進行微博信息特征提取的基礎。
1.2提取微博信息特征
1.2.1進行中文分詞
利用中文分詞把沒有分割標志的漢字串(沒有詞的邊界)轉換到符合語言實際的詞串,也就是在書面漢語中建立詞的邊界。例如,對圖2所示的信息提取樣例中的text字段內容進行分詞,則可將“就是在一起沒有心理負擔”轉化為“就是/在一起/沒有/心理/負擔”。現代中文分詞系統包括:中國科學院計算所漢語詞法分析系統ICTCLAS(Institute of Computing Technology,Chinese Lexical Analysis System),量智能分詞研究版和Taku Kudo博士創立的基于CRFs(Conditional Random Fields)D的CRF++等分詞系統[4-7]。本文中推薦采用的是ICTCLAS,其特色表現即是綜合性能優,分詞精度較高及分析速度較快,而這些優點均可與微博信息的分詞要求相互匹配、且能達到良好適應。
1.2.2提取文本內容的特征向量
在計算詞語權值的方法中使用較多的是Saltond在1989年提出的TF-IDF算法,這是一種可得較好效果的技術方法。故本文采用基于TF-IDF的話題相關性度量方法來處理微博信息。TF-IDF是一種統計方法,用以評估一個字詞對于一個文件集或一個語料庫中內含的一份文件的重要程度,TF-IDF的思想是對關于可見預定文檔中最有意義的字詞應該是在文件中出現的頻率高,但同時在語料庫中其他的文檔中出現頻率低的字詞。研究中,將針對在訓練文本集中的每個字詞計算其TF-IDF值。

圖2 數據提取樣例Fig.2 A sample of data extraction

表1 微博信息字段的含義Tab.1 Meaning of Microblog information field
給定一個含有s條微博信息的集合S,給定一條微博信息k,給定一個詞v,分析可知該詞的TF-IDF值則能用以下公式進行計算:

其中,d是指微博信息集合S中包含v詞的微博數目,hv是指詞v在微博信息k中出現的次數,nk是指微博信息k的總詞數。通過公式(1)計算得出微博信息中每個字詞的TFIDF值后,將這些字詞按TF-IDF值降序排列,并選取排在最前面的m個字詞作為該微博信息的特征詞,微博信息k被表示成特征詞的向量{(x1,v1)(x2,v2)…(xm,vm)},向量中的元素xi是第i項關鍵詞,vi表示第i項特征詞xi的TF-IDF值。
1.3建立用戶興趣模型
用戶興趣模型用于描述、存儲和管理用戶的興趣需求。目前常見的用戶興趣模型表示法有:主題表示法、關鍵詞列表表示法和基于向量空間模型的表示法等。本文對于用戶的興趣,采用隱式方式確定,并用基于向量空間模型的表示法建立用戶模型。對在用戶u感興趣的微博信息集合Ru中的所有微博信息進行中文分詞,分詞后得到的字詞pi的權重wi可以通過公式(4)計算得到。

其中,ek表示所有含字詞ki的微博信息中字詞ki的TFIDF值的累加和,Ck={t1,t2,t3,t4}表示用戶對微博信息k的操作集合。一般地,可以根據用戶行為所反映的興趣度不同,將t1、t2、t3和t4設定為不同的值,以體現用戶對微博信息的興趣差異。在本文方法中,所關注的用戶行為主要包括:瀏覽、點贊、評論和轉發4種,令t1=0.1表示用戶微博瀏覽了該微博信息,t2=0.2表示用戶對該微博信息給予了點贊,t3=0.3表示用戶對該微博信息發表了評論,t4=0.4表示用戶已經轉發了該微博信息。由公式(4)可以得到表示用戶對該字詞感興趣的程度的權值,然后將這些字詞按權值wi降序排列,取前n個字詞,作為用戶u的特征詞,再將用戶興趣模型表示成一個n維的特征向量{(p1,w1)(p2,w2)…(pn,wn)},其中的每一維分量均由特征詞pi及其權重wi共同組成。
1.4信息過濾和推薦
為了能生成最適合用戶的微博信息推薦列表,需要對微博信息內容與用戶興趣的相似度進行衡量。本文采用余弦相似度[8-10]計算用戶興趣特征與微博信息內容的特征詞向量之間的相似度。
研究得到的用戶興趣模型的特征向量為U={p1,p2,…,pn},其中pi為特征詞,總共n個。微博信息k的特征詞向量為Xk={x1,x2,…,xm},其中xi為特征詞,總共m個。合并2個向量,便將得到特征詞的集合D= Xk∪U={r1,r2,…,rt},合并之后則有t個特征詞。由于2個向量的特征詞可能會有部分出現重復,故合并后集合中特征詞的數量t是在區間[max(m,n),m+n]上的。根據特征詞的集合D,進一步可以得到2個向量Dk={v1,v2,…,vr}和DU={w1,w2,…,wr},其中v代表Dk中對應的特征詞在微博k的特征詞集中的權重,若無對應特征詞則賦值為0;w代表D中對應的特征詞在用戶興趣集中的權重,同樣,若這個詞不存在,則賦值為0。此時,根據余弦相似度的思想,研究還可將這2個向量類比成空間中的2條線段,通過計算其夾角的大小來判斷向量的相似程度。公式如下:

最終求得的余弦相似度R越接近于1,就表示向量之間更相似。此時相似度R便可作為向用戶發出推薦的推薦依據。將R(DU,Dk)的值按從大到小排列,取其中推薦度最大的30條微博信息作為用戶的推薦集,其它的信息即可視作無用信息予以過濾處理。
1.5用戶反饋和更新用戶興趣集
綜上可知,一次用戶信息過濾已經完成,為使得下一次用戶信息過濾更加貼合用戶興趣,就需要利用本次用戶反饋的信息更新用戶興趣集合。本文利用用戶的行為分析隱式獲取用戶反饋,同時更新用戶興趣集合Ru。為了考慮數據的時效性,每次用戶登錄時,對于微博集合Ru中的每個微博均需重新賦予一個時間權重。文獻[11]中提出時間權重ρk應該滿足如下條件:
1)ρk在k≥1上為單調增加的正函數;
2)ρk增長趨勢應該比較平緩;
研究中僅僅考慮與用戶當前正在瀏覽的時間最近的30天之內的微博,對于微博集合Ru中的微博以用戶當前正在瀏覽的時間點A往前數30天的時間點B為基礎(以分鐘為單位),若用戶在這30天內瀏覽或轉發、點贊、評論微博k的時間點C與時間點B之間的間隔為K分鐘,那么微博信息k
本文提出了一種基于用戶隱式反饋的微博信息過濾方法,以幫助用戶快速地發現其感興趣的微博內容。考慮到用戶的興趣可能會隨著時間的推移而發生改變,本文在傳統的基于內容過濾的方法上提出了改進,直接有效地對用戶訪問過的微博信息賦予時間權重,以更準確地獲得用戶的喜好模型,推薦符合其當前興趣的微博內容,為該領域的研究提供了一種新思路。
[1]李書寧.互聯網信息環境中信息超載問題研究[J].情報科學,2005,23(10):1587-1590.
[2]羅玲.信息時代的信息超載影響及對策[J].現代情報,2011,31(6):36-38.
[3]邱洋.微博數據提取及話題檢測方法研究[D].大連:大連理工大學,2013.
[4]奉國和,鄭偉.國內中文自動分詞技術研究綜述[J].圖書情報工作,2011,55(2):41-45.
[5]張華平,劉群.ICTCLAS漢語分詞系統[EB/OL].[2016-01-27].http://ictclas.nlpir.org/.
[6]海量信息技術有限公司.海量信息[EB/OL].[2016-01-28]. http://www.hylanda.com/.
[7]韓雪冬.基于CRFs的中文分詞算法研究與實現[D].北京:北京郵電大學,2010.
[8]胡迪,陳運,楊義先,等.基于支持向量機與余弦夾角法的中文網頁過濾的研究與設計[J].成都信息工程學院學報,2011,26(5):527-532.
[9]郭慶琳,李艷梅,唐琦.基于VSM的文本相似度計算的研究[J].計算機應用研究,2008,25(11):3256-3258.
[10]王嫣然,陳梅,王翰虎,等.一種基于內容過濾的科技文獻推薦算法[J].計算機技術與發展,2011,21(2):66-69.
[11]殷春武.基于時間權重的回歸預測模型[J].統計與決策,2011(7):161-162.
A method for filtering microblog information based on user’s implicit feedback
SHI Xitong,WANG Jiaqi?,LIU Bangwang?,LI Ye?
(School of Information&Computer Engineering,Northeast Forestry University,Harbin 150040,China)
The development of Microblog innovates the communication ways and makes information access more convenient.However,under the circumstance of information overload,it is time-consuming for people to find interesting information from a large amount of redundant information.To tackle the problem,this paper provides a new method for filtering microblog information.This method adds a step of user’s feedback based on the traditional methods.Considering user’s interest changes with time,this method measures the effect of time on the interesting degree the information.The method provides a new way for filtering weblog information.
microblog;information filtering;implicit feedback;weight of time
TP391
A
2095-2163(2016)03-0038-04
2016-04-18
石曦彤(1995-),女,本科生,主要研究方向:智能信息處理;汪嘉琪(1995-),女,本科生,主要研究方向:智能信息處理;劉邦望(1995-),女,本科生,主要研究方向:智能信息處理;李 葉(1992-),女,本科生,主要研究方向:智能信息處理。
?代表作者貢獻相同,排名不分先后。