施笑畏,宓為建,萇道方,張 艷
(上海海事大學(xué)物流工程學(xué)院,上海 201306)
數(shù)字電視作為一種全新的廣播方式,為電視觀眾帶來海量節(jié)目.為了讓用戶快速、準(zhǔn)確地獲取其真正感興趣的內(nèi)容,主動向用戶推薦符合其需求的個性化推薦技術(shù)應(yīng)運而生.
文獻(xiàn)[1-3]提出的個性化推薦技術(shù)的特點:(1)推薦原理.根據(jù)用戶喜好對基本電子節(jié)目指南(EPG)進(jìn)行篩選.鑒于各因素的不確定性,僅憑基本EPG信息很難使推薦系統(tǒng)有效找到用戶喜歡的節(jié)目.(2)喜好學(xué)習(xí)方法.文獻(xiàn)[1]假設(shè)用戶喜好是靜態(tài)不變的;文獻(xiàn)[2]僅采用清晰反饋法修正用戶顯性喜好;文獻(xiàn)[3]采用清晰反饋與對頻道觀看頻率的反饋統(tǒng)計相結(jié)合的方法來修正用戶喜好,但根據(jù)頻道學(xué)習(xí)的喜好遠(yuǎn)遠(yuǎn)不能完整表示用戶的潛在需求.(3)用戶喜好檔案內(nèi)容.3個系統(tǒng)僅包含用戶喜好特征,忽略用戶厭惡特征.實際上,厭惡特征對用戶的節(jié)目選擇同樣起決定性作用.(4)篩選推薦算法.都采用清晰算法,即節(jié)目的評估結(jié)果是“感興趣”或“不感興趣”.清晰數(shù)學(xué)不能模擬人類的柔性推理思維,尤其是當(dāng)一個節(jié)目既包括用戶感興趣的特征又包括用戶厭惡的特征時,就很難評估該節(jié)目是否值得被推薦.
從以上分析可以發(fā)現(xiàn),如何模擬人的思維,向用戶推薦高質(zhì)量的個性化節(jié)目是目前需要進(jìn)一步研究的問題.
本文從以下幾個方面入手提高推薦質(zhì)量:(1)節(jié)目指南信息量的完善.鑒于即時電視規(guī)范(TVAnytime)[4]中,元數(shù)據(jù)不僅包括詳細(xì)的節(jié)目內(nèi)容描述信息,還包括用戶喜好信息和用戶觀看節(jié)目的歷史數(shù)據(jù)[5],本文在TV-Anytime環(huán)境下進(jìn)行節(jié)目推薦研究.(2)用戶喜好的真實性和完整性.用戶檔案同時包括喜好和厭惡特征,鑒于喜好隨時間推移而變化發(fā)展,本文動態(tài)修正喜好檔案.(3)模糊邏輯模擬人的思維方式.
推薦系統(tǒng)結(jié)構(gòu)見圖1.該系統(tǒng)主要包括模糊用戶喜好檔案、模糊篩選代理、模糊推薦代理、交互代理和檔案修正代理.模糊篩選代理基于模糊邏輯推理,將即將播放節(jié)目的元數(shù)據(jù)與模糊用戶喜好檔案進(jìn)行匹配,然后根據(jù)模糊閾值篩選出用戶可能感興趣的節(jié)目;模糊推薦代理向每個用戶提供最優(yōu)的節(jié)目推薦表,并發(fā)送到用戶端;交互代理提供界面,負(fù)責(zé)收集用戶清晰或隱含的反饋信息;檔案修正代理基于交互代理遞交的反饋信息,修正用戶喜好檔案.在多代理系統(tǒng)(MAS)中,代理間需要依賴相互通信實現(xiàn)不能單獨完成的功能.通常,MAS中的代理間通信是基于知識查詢和處理語言(KQML)完成的.[6-7]在本系統(tǒng)中,各代理間也存在通信關(guān)系,例如,為了得到用戶新的喜好信息,需要模糊推薦代理和交互代理與檔案修正代理通信.
圖1 推薦系統(tǒng)結(jié)構(gòu)
篩選推薦過程如下:初始狀態(tài)下,系統(tǒng)僅具備部分的用戶顯性喜好知識,需要在推薦過程中不斷學(xué)習(xí)用戶的潛在喜好以及用戶喜好的發(fā)展變化,為保證推薦的可靠性奠定基礎(chǔ).是否選擇某個節(jié)目基于用戶的顯性和潛在喜好、各喜好及厭惡特征之間的綜合考慮等,用戶的決定是基于一些復(fù)雜反應(yīng)的最終結(jié)果.換言之,由于很難量化用戶對某個節(jié)目的各種感覺,整個推薦過程難以建立清晰的數(shù)學(xué)模型.鑒于模糊原理可以通過模擬人的思維方式來柔性描述并解決這類問題,本文在節(jié)目推薦系統(tǒng)中采用模糊邏輯推理方法.典型的模糊邏輯推理結(jié)構(gòu)[8-9]見圖2.
圖2 模糊邏輯推理結(jié)構(gòu)
采用FLW用戶喜好檔案描述用戶喜好特征和厭惡特征,其中每一個特征都用3維矢量(特征、喜好程度和權(quán)重)定義.在FLW中,特征指節(jié)目的屬性,如特定的節(jié)目類型、演員等.
如果用戶喜好檔案U中有q個不同特征,則可表示為
式中:fi表示第i個特征;li表示對fi的喜好程度;wi表示fi的權(quán)重.權(quán)重是相關(guān)特征種類的重要性指標(biāo),如用戶選擇節(jié)目時看重節(jié)目類型,則節(jié)目類型的權(quán)重大.喜好程度則表示用戶喜歡該特征的程度.相同特征種類的權(quán)重一樣,不同特征的喜好程度不一定相同.
模糊用戶檔案將清晰參數(shù)值(喜好程度和權(quán)重)轉(zhuǎn)化為隸屬度,見圖3.圖中:l和w分別表示特征喜好程度和權(quán)重;μ為變量所屬相關(guān)區(qū)域的可信度.l∈[-0.5,0.5],|i|越大說明用戶喜歡或厭惡的情緒越強(qiáng)烈;w∈[0,1],w越大表示該特征越重要.
圖3 用戶檔案參數(shù)的模糊化
為便于交換信息,本系統(tǒng)中節(jié)目信息和用戶檔案信息都用可擴(kuò)展標(biāo)記語言(XML)表示.[10]
首先,模糊篩選代理基于模糊邏輯推理,對即將播出的節(jié)目信息與FFLW喜好檔案進(jìn)行匹配,預(yù)估出用戶對該節(jié)目感興趣的程度P.然后根據(jù)閾值篩選出用戶可能喜歡的節(jié)目,按P對篩選的結(jié)果進(jìn)行歸類排序,由模糊推薦代理生成推薦列表,并發(fā)送至用戶端.具體可被分解為3個子步驟:(1)特征匹配評估;(2)節(jié)目匹配評估;(3)設(shè)定閾值進(jìn)行節(jié)目篩選和推薦排序.最后,用戶收到的推薦表中不僅包含推薦節(jié)目的信息,還包含各推薦節(jié)目相應(yīng)的P.P不僅包含反映節(jié)目與用戶檔案匹配程度的數(shù)值大小,還包含預(yù)計用戶可能對該節(jié)目的情緒感受.感興趣程度的模糊隸屬函數(shù)分布見圖4,該圖不僅適用于節(jié)目匹配結(jié)果,也適用于特征匹配結(jié)果.
圖4 感興趣程度的模糊隸屬函數(shù)分布
特征匹配是指評估節(jié)目中某特征與用戶喜好的相關(guān)性.節(jié)目
式中:ti為第i個特征.
為了得到用戶對該特征的感興趣程度f,需要首先將節(jié)目中的該特征映射到用戶喜好檔案中.若用戶喜好檔案中不包含該特征,則f為“0”;若用戶喜好檔案中包含該特征,則執(zhí)行以下步驟.
(1)選定輸入輸出變量.該步驟是能否體現(xiàn)模糊邏輯控制優(yōu)越性的關(guān)鍵,對于以后控制結(jié)果的理想程度起著至關(guān)重要的作用.先選定輸出變量,再找出對輸出變量影響最大的變量作為輸入變量.本文將f作為輸出變量,選擇對f影響最大的特征喜好程度l和特征權(quán)重w作為輸入變量.
(2)輸入輸出變量的模糊化.對輸入輸出變量進(jìn)行模糊區(qū)劃分,給每個區(qū)一個唯一的名字,然后從語義上對每個標(biāo)號定義相應(yīng)的模糊集.根據(jù)大量的實驗數(shù)據(jù),本文確定的輸入輸出變量的隸屬函數(shù)分別見圖3和4.
(3)建立模糊推理規(guī)則.模糊推理規(guī)則主要是指聯(lián)系輸入/輸出變量的控制規(guī)則.本文所得規(guī)則如下:① If l is“不喜歡”And w is“次要”Then f is“厭惡”;② If l is“不喜歡”And w is“重要”Then f is“非常厭惡”;③ If l is“一般”And w is“重要”Then f is“一般”;……;④ If l is“喜歡”And w is“重要”Then f is“很感興趣”.
(4)去模糊化.為了最終輸出控制動作,模糊推理結(jié)果的模糊量必須轉(zhuǎn)換為清晰量.最常用的兩種轉(zhuǎn)換方法為面積重心法和最大平均值法:前者合成所有有激勵輸出的規(guī)則作為結(jié)果,適用于平滑控制,是過程控制常用的方法;后者取激勵強(qiáng)度最大的規(guī)則作為結(jié)果,常用于最壞情況分析或風(fēng)險分析等決策控制.
由于面積重心法可考慮到更多有用的因素,本系統(tǒng)采用該方法去f的模糊化,即
式中:μ[j]為第j條規(guī)則輸出面積的高;yj為重心橫坐標(biāo);m為規(guī)則總數(shù).根據(jù)具體條件激勵起的規(guī)則隸屬度可求出f,其他未被激勵的規(guī)則隸屬度為0.
節(jié)目匹配用于評估P.由于節(jié)目的組成特征在評估時已考慮特征的喜好程度和特征種類權(quán)重等因素,可通過相關(guān)f的平均值計算得出
式中:n為節(jié)目中包含的特征總數(shù).將P映射到圖4中,可得到用戶對該節(jié)目的預(yù)測態(tài)度.
設(shè)置閾值篩選節(jié)目元數(shù)據(jù),選擇用戶可能感興趣的節(jié)目,然后根據(jù)P依次排序,并推薦給用戶.在本系統(tǒng)中,由模糊推薦代理進(jìn)行排序和推薦處理.
模糊篩選代理中設(shè)定的閾值既可以是一個清晰值,也可以是一個模糊值,比如“用戶有多么喜歡它”.如果P大于閾值,說明用戶想要看該節(jié)目,篩選代理把該節(jié)目的元數(shù)據(jù)發(fā)給模糊推薦代理.
本系統(tǒng)中,用戶喜好建模包括初始化和動態(tài)修正兩個過程.用戶檔案模型的初始化可采用兩種方法進(jìn)行:(1)根據(jù)用戶清晰反饋信息;(2)分析用戶行為歷史數(shù)據(jù).第1種方法無須贅述,第2種方法類似于用戶檔案修正算法.由于用戶無法清晰表達(dá)其潛在需求,并且用戶的需求隨時間不斷發(fā)展變化,在初始建模后,用戶喜好檔案需根據(jù)清晰反饋和對行為反饋的學(xué)習(xí)不斷地進(jìn)行補充和修正.這些工作由檔案修正代理負(fù)責(zé)完成.
對一個推薦節(jié)目,用戶通常有3種態(tài)度:播放、刪除和忽略.系統(tǒng)將根據(jù)用戶行為進(jìn)一步修正用戶檔案,算法描述如下:
(1)如果用戶觀看某個節(jié)目中的一段,在該系統(tǒng)中,對節(jié)目i,
式中:fji是節(jié)目i中第j個特征;wtji是特征fji屬于t特征類型的權(quán)重;w′tji是修正后的wtji;lji是用戶對特征fji的喜好程度;l′ji是修正后的lji;Wi是觀看節(jié)目i的總時間;Ri是節(jié)目i本身的時間長度;θ是觀看時間閾值,若觀看時間小于θ,認(rèn)為用戶對該推薦節(jié)目不感興趣,權(quán)重和喜好程度需下調(diào);α,β∈(0,1),用于減小權(quán)重和喜好程度的變化速度.因為權(quán)重較之喜好程度更穩(wěn)定,α≤β.參考圖3,修正后的權(quán)重被約束在[0,1.00]區(qū)間內(nèi),而修正后的特征喜好程度被約束在[-0.50,0.50]區(qū)間內(nèi).
(2)若用戶已刪除某推薦節(jié)目,Wi為“0”.
(3)若用戶忽略某推薦節(jié)目,無反饋.
實驗包括1臺 PC,1個 TriMedia card,多代理系統(tǒng)和1臺電視.PC充當(dāng)用戶端PDR,存放節(jié)目源并安裝系統(tǒng),TriMedia card用于進(jìn)行視頻解碼,電視用于演示節(jié)目.該系統(tǒng)在單機(jī)PC/Linux下運行.
圖5為本推薦系統(tǒng)的主界面.界面左欄列出系統(tǒng)各個功能;中間列的上方為節(jié)目推薦表,下方為選中節(jié)目的信息.對選中的節(jié)目,用戶可以選擇播放、刪除、忽略.對前兩個選擇,可獲取反饋信息,用于修正檔案.
圖5 系統(tǒng)主界面
節(jié)目源:包含200個不同節(jié)目的片段,每個節(jié)目片段2~10 min.30個用戶參加實驗.
評估過程:首先,用戶建立初始用戶喜好檔案;然后,200個節(jié)目分5批用于測試推薦系統(tǒng)的推薦結(jié)果是否符合用戶需求.
評估準(zhǔn)則:則用參數(shù)p和r評估節(jié)目推薦系統(tǒng)的推薦效果.p反映推薦的節(jié)目與用戶興趣的相關(guān)程度.r反映有多少用戶感興趣的節(jié)目被推薦,又有多少用戶感興趣的節(jié)目被誤判為乏味的節(jié)目.
式中:nT是推薦的節(jié)目總數(shù);nR是推薦符合用戶興趣的節(jié)目總數(shù);nI是符合用戶興趣的節(jié)目總數(shù).若用戶觀看某節(jié)目的時間大于該節(jié)目總時間的70%,則認(rèn)為用戶對該節(jié)目有興趣.
表1是測試平均結(jié)果.
表1 實驗結(jié)果
實驗結(jié)果顯示,該推薦系統(tǒng)可以學(xué)習(xí)用戶的潛在需求,并能動態(tài)捕捉用戶喜好的潛在變化,為用戶提供可靠的推薦服務(wù).當(dāng)系統(tǒng)開始運行時,由于用戶注冊時的顯性需求不足以完全表達(dá)用戶的真正喜好,推薦效果一般;隨著系統(tǒng)使用時間增加,推薦效果逐步提高.鑒于用戶喜好總是緩慢進(jìn)行潛在變化,推薦效果無法達(dá)到百分之百的滿意.
如何模擬人的思維以提高推薦質(zhì)量是個性化節(jié)目推薦中需要解決的問題.本文提出一個智能多代理節(jié)目推薦系統(tǒng),用于在TV-Anytime環(huán)境下向多個用戶提供個性化推薦服務(wù).與傳統(tǒng)方法不同,該系統(tǒng)基于節(jié)目元數(shù)據(jù)和模糊用戶檔案知識管理,將用戶檔案以一種緊湊簡潔的模糊結(jié)構(gòu)表示,包括用戶喜歡的和不喜歡的特征.用戶檔案可進(jìn)行動態(tài)修正,如根據(jù)反饋信息增加或減少相關(guān)特征的參數(shù)大小.篩選和推薦代理基于模糊喜好檔案,使用模糊邏輯模擬人的柔性思維方式,可解決對一個既包含用戶喜好特征,又包含用戶厭惡特征節(jié)目評估的二義性問題.實驗結(jié)果顯示該系統(tǒng)推薦效果可靠.
[1]COTTER P,SMYTH B.PTV:personalized TV guides[C]//Proc 12th Conf on Innovative Applications of Artificial Intelligence,Austin,Texas,2000:287-295.
[2]Duco DAS,Herman ter HORST.Recommender Systems for TV[C]//Proc AAAI,1998:243-251.
[3]KURAPATI K,GUTTA S,SCHAFFER D,et al.A multi-agent TV recommender[C]//Proc User Modeling 2001:Personalization in Future TV Workshop,Sonthofen,Germany,2001:458-463.
[4]TV-Anytime system description document(informative with mandatory appendix B)[Z].WD608,TV-Anytime Forum,Aug.2004.
[5]TV-Anytime metadata specifications document[Z].SP003v12 Part A Appendix B,TV-Anytime Forum,Jun.2005.
[6]FININ T,F(xiàn)RITZSON R,MCKAY D,et al.KQML as an agent communication language[C]//Proc 3rd Int Conf on Inform and Knowledge Manage,1994:456-463.
[7]楊神化,施朝健,劉宇宏,等.多agent理論和技術(shù)在自動避碰決策系統(tǒng)中的應(yīng)用[J].上海海事大學(xué)學(xué)報,2007,28(1):121-125.
[8]BABUSKA R.Fuzzy modeling for control[M].Norwell,MA:Int Series in Intelligent Technologies,Kluwer Academic Publishers,1998.
[9]陳錦標(biāo),吳廣宇,應(yīng)士君.基于灰色模糊綜合評估法的大型船舶模擬操縱評價[J].上海海事大學(xué)學(xué)報,2008,29(4):1-5.
[10]JIS X4160-2007,XML Path Language(XPath)2.0[S].