欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法

文檔序號(hào):6637903閱讀:307來(lái)源:國(guó)知局
一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法
【專利摘要】一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法,推薦引擎通過(guò)數(shù)據(jù)挖掘?qū)崿F(xiàn)個(gè)性化推薦,采用分布式人工智能領(lǐng)域的多Agent技術(shù)實(shí)現(xiàn)個(gè)性化推薦引擎,所述推薦引擎基于多Agent建模,基于Agent進(jìn)行擬人化建模,讓推薦系統(tǒng)更加個(gè)性化。本發(fā)明致力于結(jié)合分布式人工智能和電子商務(wù)中的數(shù)據(jù)挖掘這兩個(gè)【技術(shù)領(lǐng)域】,提出一種基于多Agent的個(gè)性化推薦建模方法,通過(guò)多Agent技術(shù)的智能性,社會(huì)性,學(xué)習(xí)性和自主性給電子商務(wù)推薦系統(tǒng)帶來(lái)更加個(gè)性化的推薦效果。
【專利說(shuō)明】—種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)數(shù)據(jù)挖掘【技術(shù)領(lǐng)域】,涉及分布式人工智能技術(shù),用于個(gè)性化推薦,為一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法。

【背景技術(shù)】
[0002]多Agent技術(shù)屬于分布式人工智能領(lǐng)域,采用分布式的Agent協(xié)同合作完成系統(tǒng)目標(biāo)。Agent是一個(gè)計(jì)算實(shí)體或程序,可以感知外界環(huán)境的變化,根據(jù)自己的目標(biāo)做出反應(yīng)。Agent具有智能,自主性,自治性,反應(yīng)性,社會(huì)能力和推理能力。目前構(gòu)建的多Agent系統(tǒng)多數(shù)處于實(shí)驗(yàn)和學(xué)術(shù)研究階段,在電子商務(wù)個(gè)性化推薦領(lǐng)域的相關(guān)成果還很少。
[0003]Jadex是一個(gè)基于Java的分布式多Agent開發(fā)平臺(tái),采用基于組件的架構(gòu)(Service Component Architecture,簡(jiǎn)稱 SCA)。 Jadex 提供BDI (Belief-Desire-1ntent1n,信念-愿望-意圖模型)推薦引擎框架,讓用戶方便的設(shè)計(jì)和開發(fā)多Agent應(yīng)用。其BDI Vl版本基于Java和XML實(shí)現(xiàn)了 goal-oriented(面向目標(biāo))的推理引擎,BDI V2版本和Vl版本基本相同,改進(jìn)在于基于RETE規(guī)則引擎重新實(shí)現(xiàn)了 BDI的規(guī)則推理,Jadex BDI V3 Kernel是Jadex BDI推理引擎的最新版本,最新版的V3引入了全新的編程方法,隱藏了 Jadex框架更多的內(nèi)部細(xì)節(jié),提供透明的編程接口,不再采用XML的方式配置BDI,而是采用Java注解的方式來(lái)實(shí)現(xiàn),依賴注入和反射機(jī)制的應(yīng)用是一大特點(diǎn)。同時(shí)BDI V3中集成了更多的面向?qū)ο蟮姆椒ê屠砟?,讓?shí)現(xiàn)變得更加簡(jiǎn)單,支持繼承、P0J0編程和依賴注入。
[0004]協(xié)同過(guò)濾(Collaborative Filtering, CF)推薦算法是基于群體的行為和集體智慧來(lái)進(jìn)行個(gè)性化推薦的算法,在電子商務(wù)網(wǎng)站個(gè)性化推薦系統(tǒng)中廣泛采用,可以用于商品、圖書、電影、博客和新聞等的推薦。該算法主要包括兩個(gè)算法:
[0005]第一,基于用戶的推薦(User CF),簡(jiǎn)言之即推薦相似用戶喜歡的商品給用戶,相似用戶的計(jì)算通常采用皮爾遜相關(guān)系數(shù),相似鄰居的選取一般采用Κ-Neighborhoods (固定數(shù)量的鄰居)或者Threshold-based Neighborhoods (基于相似度門濫的鄰居)。
[0006]第二,基于物品相似度(Item CF)的推薦,根據(jù)所有用戶對(duì)某一物品的偏好計(jì)算物品的相似度,也可采用皮爾遜相關(guān)系數(shù),推薦相似的物品給用戶。
[0007]兩種算法各有優(yōu)缺,對(duì)于單個(gè)用戶而言,User CF算法推薦的多樣性優(yōu)于Item CF,而User CF多推薦相似用戶喜歡的物品,一般是熱門的商品給用戶,Item CF會(huì)推薦很多相似但非熱門的物品給用戶。協(xié)同過(guò)濾算法并沒(méi)有指出如何綜合利用User CF和Item CF算法。
[0008]協(xié)同過(guò)濾算法的實(shí)現(xiàn)在開源社區(qū)有Mahout,是由Apache Software Foundat1n(Apache軟件基金會(huì))開發(fā)的機(jī)器學(xué)習(xí)庫(kù),它是Hadoop生態(tài)系統(tǒng)的項(xiàng)目之一,基于Hadoop實(shí)現(xiàn)大數(shù)據(jù)的Machine Learning的處理,實(shí)現(xiàn)了 User CF和Item CF算法、聚類分析算法和分類分析算法等。Mahout同時(shí)也提供了很多線性代數(shù)和統(tǒng)計(jì)的Java實(shí)現(xiàn)。Mahout的大部分應(yīng)用基于Hadoop的Map Reduce框架來(lái)實(shí)現(xiàn),同時(shí)Mahout的Taste Library也提供非 Hadoop的實(shí)現(xiàn)。


【發(fā)明內(nèi)容】

[0009]本發(fā)明所要解決的技術(shù)問(wèn)題是:現(xiàn)有電子商務(wù)系統(tǒng)使用的推薦方法都是基于Web日志,而未見使用人工智能技術(shù)的報(bào)道,目前分布式人工智能領(lǐng)域的多Agent技術(shù)的實(shí)際應(yīng)用并不廣泛,尤其在電子商務(wù)領(lǐng)域的個(gè)性化推薦中尚無(wú)很好的成果。同時(shí),目前的大數(shù)據(jù)挖掘分析,特別是個(gè)性化推薦的分析,采用多Agent技術(shù)的應(yīng)用很少。
[0010]本發(fā)明的技術(shù)方案為:一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法,推薦引擎通過(guò)數(shù)據(jù)挖掘?qū)崿F(xiàn)個(gè)性化推薦,采用分布式人工智能領(lǐng)域的多Agent技術(shù)實(shí)現(xiàn)個(gè)性化推薦引擎,所述推薦引擎基于多Agent建模,設(shè)計(jì)多個(gè)Agent,包括Agent如下:
[0011].User Agent:接收用戶的輸入,以及展示最終的推薦結(jié)果;
[0012].Recommendat1n Agent:根據(jù)用戶的輸入啟動(dòng)數(shù)據(jù)挖掘,控制整個(gè)數(shù)據(jù)挖掘的過(guò)程,針對(duì)用戶的不同輸入給出個(gè)性化推薦的數(shù)據(jù);
[0013].Data Mining Agent:執(zhí)行數(shù)據(jù)挖掘;
[0014].Strategy Agent:執(zhí)行算法決策,決定采用何種數(shù)據(jù)挖掘算法;
[0015]# User CF Agent:執(zhí)行 User CF 算法;
[0016]# Item CF Agent:執(zhí)行 Item CF 算法;
[0017].Search Agent:根據(jù)數(shù)據(jù)挖掘的結(jié)果,在數(shù)據(jù)存儲(chǔ)中搜索挖掘結(jié)果對(duì)應(yīng)物品的詳細(xì)信息;
[0018].Recommendat1n Build Agent:將數(shù)據(jù)挖掘的最終結(jié)果格式化為可展示的結(jié)果;
[0019]個(gè)性化推薦引擎中采用分層架構(gòu),最上層應(yīng)用層包括上述Agent ;中間層為數(shù)據(jù)模型層,用于封裝對(duì)數(shù)據(jù)庫(kù)的操作,提供透明的數(shù)據(jù)庫(kù)訪問(wèn)操作;最底層為數(shù)據(jù)存儲(chǔ)層,存儲(chǔ)數(shù)據(jù)挖掘所需的數(shù)據(jù)。
[0020]本發(fā)明采用Jadex多Agent開發(fā)平臺(tái)設(shè)計(jì)并建模Agent,結(jié)合Mahout機(jī)器學(xué)習(xí)庫(kù)實(shí)現(xiàn)協(xié)同過(guò)濾推薦,由多Agent并發(fā)協(xié)作給出推薦內(nèi)容。
[0021]進(jìn)一步的,在數(shù)據(jù)挖掘過(guò)程中,Strategy Agent分析當(dāng)前用戶的偏好,根據(jù)當(dāng)前用戶偏好的自相似度決策采用User CF算法或者Item CF算法,所述數(shù)據(jù)挖掘過(guò)程如下:
[0022]I) Data Mining Agent 收到 Recommendat1n Agent 的數(shù)據(jù)挖掘請(qǐng)求;
[0023]2) Data Mining Agent請(qǐng)求Strategy Agent進(jìn)行算法決策,計(jì)算當(dāng)前用戶所有偏好物品的自相似度,自相似度表現(xiàn)為當(dāng)前用戶所有偏好的標(biāo)準(zhǔn)差σ,設(shè)定決策閥值,σ小于決策閥值,則自相似度較大,即認(rèn)為當(dāng)前用戶的偏好比較為集中,采用Item CF算法;當(dāng)σ大于決策閥值,則自相似度較小,認(rèn)為當(dāng)前用戶的偏好不集中,采用User CF算法;決策閥值根據(jù)所推薦的場(chǎng)景和數(shù)據(jù)集的不同來(lái)選取設(shè)定;
[0024]3)當(dāng)米用 Item CF 算法,DataMining Agent 請(qǐng)求 ItemCF Agent 米用 Item CF 算法進(jìn)行數(shù)據(jù)挖掘,采用Log LikeliHood計(jì)算待推薦物品與當(dāng)前用戶偏好的相似度,并給出推薦集;
[0025]4)當(dāng)米用 User CF 算法,Data Mining Agent 請(qǐng)求 User CF Agent 米用 User CF算法挖掘,選擇與當(dāng)前用戶偏好最相似的K個(gè)鄰居用戶,K默認(rèn)為10,以這K個(gè)鄰居用戶的偏好物品為推薦物品基礎(chǔ),采用皮爾遜相關(guān)系數(shù)計(jì)算推薦物品與當(dāng)前用戶偏好的相似度,向當(dāng)前用戶給出推薦集;
[0026]5)所得推薦集結(jié)果再經(jīng)由 Data Mining Agent 返回給 Recommender Agent ;
[0027]6) Recommendat1n Agent 觸發(fā) Search Agent 調(diào)用數(shù)據(jù)模型層,將 Data MiningAgent產(chǎn)生的推薦集的物品編號(hào)轉(zhuǎn)化為更詳細(xì)的物品信息;
[0028]7)Recommender Agent將推薦集和Search Agent返回的物品的詳細(xì)信息整合成用于展示的最終結(jié)果集。
[0029]本發(fā)明推薦引擎適用的推薦數(shù)據(jù)包括任何可以采用協(xié)同過(guò)濾進(jìn)行推薦的數(shù)據(jù),要求數(shù)據(jù)已經(jīng)經(jīng)過(guò)清洗,每一個(gè)數(shù)據(jù)元組要求至少有三項(xiàng):用戶編號(hào),物品編號(hào)和偏好值,偏好值經(jīng)過(guò)歸一化處理。
[0030]在當(dāng)今電子商務(wù)領(lǐng)域的推薦系統(tǒng)中,經(jīng)典方法是采用基于Web日志的數(shù)據(jù)挖掘方法進(jìn)行商品推薦,而還沒(méi)有基于人工智能的多Agent技術(shù)的推薦,主要原因是:
[0031]首先,個(gè)性化推薦算法,例如協(xié)同過(guò)濾推薦、基于關(guān)聯(lián)規(guī)則推薦等都是屬于信息論的數(shù)學(xué)算法,在21世紀(jì)初才開始在電子商務(wù)領(lǐng)域中得到大規(guī)模應(yīng)用,其中,個(gè)性化推薦相關(guān)的數(shù)據(jù)挖掘技術(shù)更是新興領(lǐng)域,基本采用成熟的面向?qū)ο蠼?,還沒(méi)有考慮到采用多Agent技術(shù)建模。相對(duì)應(yīng)的,多Agent技術(shù)作為分布式人工智能(DAI)領(lǐng)域最新發(fā)展技術(shù)之一,它的主要目前應(yīng)用集中在人工智能領(lǐng)域,也還沒(méi)有大規(guī)模應(yīng)用到現(xiàn)有的電子商務(wù)系統(tǒng)中的豐富經(jīng)驗(yàn)。如何合理設(shè)計(jì)Agent是多Agent技術(shù)有效運(yùn)行的關(guān)鍵。
[0032]其次,現(xiàn)有的電子商務(wù)推薦系統(tǒng)也需要更加智能的架構(gòu)來(lái)克服現(xiàn)有的一些局限性:第一,缺乏智能性,離線的數(shù)據(jù)挖掘系統(tǒng)往往對(duì)所有用戶選擇采取單一的推薦算法,比如協(xié)同過(guò)濾推薦,基于內(nèi)容推薦或者基于關(guān)聯(lián)規(guī)則推薦等,不會(huì)根據(jù)不同用戶的偏好選取不同的推薦算法,這難以滿足用戶的個(gè)性化推薦需求。第二,缺乏適應(yīng)性,用戶的偏好是在不斷變化的,而不能動(dòng)態(tài)調(diào)整推薦策略的推薦系統(tǒng)顯示出缺乏對(duì)環(huán)境變化的適應(yīng)性。
[0033]本發(fā)明正是致力于結(jié)合分布式人工智能和電子商務(wù)中的數(shù)據(jù)挖掘這兩個(gè)【技術(shù)領(lǐng)域】,提出一種基于多Agent的個(gè)性化推薦建模方法,通過(guò)多Agent技術(shù)的智能性,社會(huì)性,學(xué)習(xí)性和自主性給電子商務(wù)推薦系統(tǒng)帶來(lái)更加個(gè)性化的推薦效果。
[0034]本發(fā)明推薦引擎通過(guò)多Agent的方式來(lái)實(shí)現(xiàn)個(gè)性化推薦,其優(yōu)勢(shì)在于:
[0035](I)各部分具有自主性。將推薦引擎的各個(gè)功能模塊,如交互模塊、數(shù)據(jù)挖掘模塊、算法決策模塊等設(shè)計(jì)為具有智能的Agent,這種擬人化的建模和設(shè)計(jì)使得各個(gè)Agent具有各自的信念、愿望和計(jì)劃,可以自主完成各自的任務(wù)。
[0036](2)具有更好的適應(yīng)性。Strategy Agent可以根據(jù)用戶偏好的特征動(dòng)態(tài)地選取推薦算法,當(dāng)用戶的偏好發(fā)生了變化,也能自適應(yīng)地的調(diào)整算法。相比傳統(tǒng)的推薦引擎采用單一的推薦策略并且不能動(dòng)態(tài)的調(diào)整算法,這是本發(fā)明的進(jìn)步之處。
[0037](3)具有很好的可擴(kuò)展性。本發(fā)明推薦引擎設(shè)計(jì)了 User CF Agent和Item CFAgent,各自持有不同的推薦算法,相互獨(dú)立完成。后期還可以擴(kuò)展出更多的算法。基于多Agent的建模,相比采用面向?qū)ο蠓绞浇5耐扑]引擎,耦合度更低,帶來(lái)更好的可擴(kuò)展性。
[0038](4)具有分布式特性。多Agent協(xié)作推薦可以實(shí)現(xiàn)分布式并發(fā),提高推薦引擎的性能,可以提供線上實(shí)時(shí)推薦。

【專利附圖】

【附圖說(shuō)明】
[0039]圖1為本發(fā)明推薦引擎的分層架構(gòu)示意圖。
[0040]圖2為本發(fā)明推薦引擎的詳細(xì)設(shè)計(jì)類圖。
[0041]圖3為本發(fā)明推薦引擎進(jìn)行協(xié)同過(guò)濾推薦計(jì)算的順序圖。
[0042]圖4為本發(fā)明推薦引擎的數(shù)據(jù)挖掘過(guò)程狀態(tài)圖。

【具體實(shí)施方式】
[0043]本發(fā)明的目標(biāo)是將分布式人工智能中的多Agent技術(shù)應(yīng)用到電子商務(wù)的個(gè)性化推薦中。傳統(tǒng)的電子商務(wù)中的推薦系統(tǒng)存在一定的局限性,本發(fā)明米用多Agent技術(shù),基于Agent進(jìn)行擬人化建模,讓推薦系統(tǒng)更加個(gè)性化。采用多Agent技術(shù)來(lái)開發(fā)個(gè)性化推薦引擎,是一種創(chuàng)新。
[0044]協(xié)同過(guò)濾推薦算法是一種利用用戶群體行為和智慧來(lái)進(jìn)行推薦的算法,該算法被廣泛應(yīng)用于電子商務(wù)網(wǎng)站,包括User CF和Item CF兩種算法,實(shí)踐發(fā)現(xiàn)結(jié)合User CF和Item CF來(lái)進(jìn)行推薦的效果最佳。本發(fā)明結(jié)合多Agent技術(shù)和協(xié)同過(guò)濾算法,實(shí)現(xiàn)一種新的個(gè)性化推薦引擎。
[0045]下面來(lái)說(shuō)明本發(fā)明的具體實(shí)施。如圖1所示,本發(fā)明推薦引擎主要了采用分層架構(gòu):
[0046](I)Data Storage Layer 數(shù)據(jù)存儲(chǔ)層
[0047]數(shù)據(jù)存儲(chǔ)層用于存儲(chǔ)物品信息,用戶信息和用戶偏好信息,這里物品信息對(duì)應(yīng)的數(shù)據(jù)可以是任何能夠采用協(xié)同過(guò)濾進(jìn)行推薦的數(shù)據(jù),例如商品數(shù)據(jù)、電影數(shù)據(jù)、新聞數(shù)據(jù)、圖書數(shù)據(jù)等,這里要求數(shù)據(jù)已經(jīng)經(jīng)過(guò)清洗,每一個(gè)數(shù)據(jù)元組要求至少有三項(xiàng):用戶編號(hào),物品編號(hào)和偏好值。偏好要經(jīng)過(guò)歸一化處理,以保證推薦結(jié)果的準(zhǔn)確性。在本推薦引擎中,采用MySQL數(shù)據(jù)來(lái)存儲(chǔ),并采用了 MySQL數(shù)據(jù)庫(kù)提供的索引機(jī)制,提高數(shù)據(jù)的查詢性能。
[0048](2) Data Model Layer 數(shù)據(jù)模型層
[0049]數(shù)據(jù)模型層基于數(shù)據(jù)存儲(chǔ)層,數(shù)據(jù)模型層提供封裝了底層數(shù)據(jù)庫(kù)操作的數(shù)據(jù)模型(Model),為Applicat1n Layer提供透明的操作接口,同時(shí)對(duì)數(shù)據(jù)的查詢進(jìn)行優(yōu)化。該層主要包括三個(gè)Model:
[0050]a) Commodity Data Model:物品數(shù)據(jù)模型,提供對(duì)物品數(shù)據(jù)進(jìn)行檢索,增加,刪除和修改的接口。
[0051]b)User Data Model:用戶數(shù)據(jù)模型,提供對(duì)用戶信息進(jìn)行檢索的接口。
[0052]c) Preference Data Model:偏好數(shù)據(jù)模型,提供對(duì)用戶偏好進(jìn)行檢索的接口。
[0053](3) Applicat1n Layer 應(yīng)用層
[0054]應(yīng)用層包括8個(gè)Agent:
[0055]a) User Agent (用戶Agent):接收用戶的輸入,監(jiān)聽用戶的行為,并展示最終的推薦結(jié)果。
[0056]b) Recommendat1n Agent (推薦Agent):控制整個(gè)數(shù)據(jù)挖掘的過(guò)程,針對(duì)用戶的不同輸入給出個(gè)性化推薦的數(shù)據(jù)Recommendat1n Agent是協(xié)調(diào)與控制者,獲取用戶的行為,請(qǐng)求Data Mining Agent采用協(xié)同過(guò)濾算法計(jì)算出原始推薦集,再請(qǐng)求Search Agent搜索出推薦的詳細(xì)信息,再請(qǐng)求Recommendat1n Build Agent構(gòu)建出可以展示的結(jié)果集,并將最終的結(jié)果集返回給User Agent。
[0057]c)Data Mining Agent (數(shù)據(jù)挖據(jù) Agent):執(zhí)行數(shù)據(jù)挖掘。Data Mining Agent 請(qǐng)求Strategy Agent進(jìn)行算法決策,并觸發(fā)User CF Agent或Item CF Agent進(jìn)行協(xié)同過(guò)濾計(jì)算。
[0058]d) Strategy Agent (策略 Agent):執(zhí)行算法決策;Strategy Agent 計(jì)算當(dāng)前用戶偏好的自相似度,如果自相似度大則采用ItemCF,默認(rèn)采用UserCF算法。
[0059]e)User CF Agent (基于用戶的協(xié)同過(guò)濾Agent):執(zhí)行基于用戶的協(xié)同過(guò)濾(UserCF, User Collaborative Filtering)算法;
[0060]f) Item CF Agent (基于物品的協(xié)同過(guò)濾Agent):執(zhí)行基于物品的協(xié)同過(guò)濾(ItemCF, Item Collaborative Filtering)算法;
[0061]g) Search Agent (搜索Agent):根據(jù)數(shù)據(jù)挖掘的結(jié)果,一般為推薦的物品編號(hào)集合,按編號(hào)在數(shù)據(jù)存儲(chǔ)中搜索物品的詳細(xì)信息;
[0062]h) Recommendat1n Build Agent (推薦展示Agent):將數(shù)據(jù)挖掘的最終結(jié)果格式化為可展示的結(jié)果。
[0063]推薦引擎的類詳細(xì)設(shè)計(jì)如圖2,基于Java的應(yīng)用,主要有8個(gè)包,包間的關(guān)系如圖2所示,除了 Common包和Model包,其他6個(gè)包每個(gè)包就是一個(gè)基于BDI的Agent結(jié)構(gòu)。多Agent的交互是通過(guò)Jadex BDI V3提供的基于Service的Goal觸發(fā)機(jī)制,每個(gè)Goal是Java P0J0,采用Goal作為代理是一種松耦合的設(shè)計(jì),基于依賴注入和反射機(jī)制綁定不同的Goal到不同的Service。
[0064](I) Common包:提供Applicat1n, xml,為推薦引擎的啟動(dòng)入口。
[0065](2)Model 包:定義了 Data Model (數(shù)據(jù)模型),包括 Item Data Model (物品數(shù)據(jù)模型),User Data Model (用戶數(shù)據(jù)模型),Rating Data Model (評(píng)分?jǐn)?shù)據(jù)模型),同時(shí)還有Data Source Factory (數(shù)據(jù)源倉(cāng)庫(kù)),創(chuàng)建MySQL的鏈接。
[0066](3) Recommender 包:定義了 Recommender BDI (推薦者 BDI), RecommendServiceInterface (推薦服務(wù)接口)和 Recommendat1n Goal (推薦目標(biāo)),RecommendServiceInterface 即為圖 2 中的 TRecommend Service, Recommender 包作為 Controller,提供透明的推薦接口,同時(shí)會(huì)請(qǐng)求Recommendat1n Build BDI (推薦展示BDI), DataMiningBDI (數(shù)據(jù)挖掘BDI)和Search BDI (搜索BDI)來(lái)完成推薦計(jì)算。
[0067](4)User 包:定義了 User BDI (用戶 BDI), User BDI 啟動(dòng)時(shí)會(huì)創(chuàng)建 User Input⑶I (用戶輸入圖形用戶界面)獲取用戶的輸入,請(qǐng)求Recommender BDI給出推薦結(jié)果。
[0068](5) DataMining 包:該包中包括 DataMining BDI (數(shù)據(jù)挖掘 BDI), ItemCF BDI (基于物品的協(xié)同過(guò)濾BDI),UserCF BDI (基于用戶的協(xié)同過(guò)濾BDI),三者提供DataMiningService (數(shù)據(jù)挖掘服務(wù)),DataMining BDI會(huì)請(qǐng)求Strategy BDI (策略BDI)給出推薦算法決策,按照決策請(qǐng)求ItemCF BDI,或者UserCF BDI,計(jì)算并返回結(jié)果。
[0069](6) Search 包:該包中定義了 ISearch Service (搜索服務(wù)接口 ), SearchBDI (搜索BDI)和SearchGoal (搜索目標(biāo)),該BDI Agent會(huì)搜索數(shù)據(jù)庫(kù)中推薦的物品的詳細(xì)信息。
[0070](7)Build 包:該包中定義了 IRecommendat1n Build Service (推薦展不服務(wù)接口),Reco_endat1n Build BDI (推薦展不 BDI)和 Reco_endat1n Build Goal (推薦展示目標(biāo)),該BDI匯總所有的計(jì)算結(jié)果,并給出可以用于展示的推薦結(jié)果集。
[0071]推薦引擎進(jìn)行協(xié)同過(guò)濾推薦計(jì)算的順序圖如圖3,圖中每個(gè)對(duì)象代表一個(gè)BDI Agent, UserBDI 對(duì)應(yīng) User Agent, RecommenderBDI 對(duì)應(yīng) Recommendat1n Agent,DataMiningBDI 對(duì)應(yīng) DataMining Agent, SearchBDI 對(duì)應(yīng) Search Agent, RecommBuildBDI對(duì)應(yīng)Recommendat1nBuild Agent。各個(gè)Agent之間的交互順序如下:
[0072](I)UserBDI 通過(guò)Dispatch Goal (調(diào)用目標(biāo))的方式請(qǐng)求Reco_enderBDI 進(jìn)行協(xié)同過(guò)濾推薦。
[0073](2) RecommenderBDI 收到請(qǐng)求后,觸發(fā) RecommendPlan, RecommendPlan 即 BDI 中的 Intent1n(意圖)。
[0074](3) RecommenderBDI 通過(guò) DispatchSubGoal (調(diào)用子目標(biāo))的方式請(qǐng)求DataMiningBDI,進(jìn)行數(shù)據(jù)挖掘。
[0075](4)待返回挖掘的原始結(jié)果集之后,再請(qǐng)求SearchBDI根據(jù)原始結(jié)果集,給出所推薦物品的詳細(xì)信息。
[0076](5)請(qǐng)求RecommBuildBDI將計(jì)算得到的各個(gè)結(jié)果集進(jìn)行整合成可以展示的推薦項(xiàng)目并返回結(jié)果集。
[0077](6)最后Reco_enderBDI將得到的結(jié)果集返回給UserBDI。
[0078]RecommenderBDI是系統(tǒng)中的控制者和協(xié)調(diào)者,通過(guò)Goal的方式觸發(fā)其他Agent的行為。
[0079]數(shù)據(jù)挖掘過(guò)程是本發(fā)明推薦引擎的核心,挖掘的方式是結(jié)合協(xié)同過(guò)濾的User CF算法和Item CF算法來(lái)挖掘。挖掘的決策是計(jì)算用戶當(dāng)前偏好的自相似度,如果自相似度大就采用Item CF,自相似度小就默認(rèn)采用User CF。自相似度通過(guò)計(jì)算當(dāng)前用戶的所有評(píng)分偏好的標(biāo)準(zhǔn)差。
[0080]如圖4是本發(fā)明推薦引擎的數(shù)據(jù)挖掘過(guò)程狀態(tài)圖:
[0081]I) Data Mining Agent 收到 Recommendat1n Agent 的數(shù)據(jù)挖掘請(qǐng)求;
[0082]2) Data Mining Agent請(qǐng)求Strategy Agent進(jìn)行算法決策,計(jì)算當(dāng)前用戶所有偏好物品的自相似度。對(duì)物品偏好的度量一般是一個(gè)歸一化的評(píng)分,如O?5分,自相似度在本推薦引擎中采用計(jì)算用戶所有偏好的標(biāo)準(zhǔn)差,用σ表示。設(shè)定決策閥值,當(dāng)σ小于決策閥值,則自相似度較大,即認(rèn)為用戶的偏好比較為集中,采用Item CF算法會(huì)有更好的推薦效果。當(dāng)σ大于決策閥值,則自相似度較小,用戶的偏好不集中,則采用User CF算法會(huì)獲得更好的推薦效果。
[0083]決策閥值需要根據(jù)所推薦的場(chǎng)景和數(shù)據(jù)集的不同來(lái)選取,不能太大,這樣會(huì)導(dǎo)致很多需要用Item CF算法進(jìn)行推薦的用戶,采用了 User CF ;同理,也不能太小,這樣會(huì)導(dǎo)致很多需要用User CF算法進(jìn)行推薦的用戶采用了 Item CF算法??傊?,決策閥值的選取需要在對(duì)數(shù)據(jù)集進(jìn)行清洗后,定出一個(gè)合理的值。在本推薦引擎的實(shí)施例中,我們以電影推薦進(jìn)行試驗(yàn)為例,選用了 MovieLens網(wǎng)站提供的百萬(wàn)電影評(píng)分?jǐn)?shù)據(jù),最后將σ的決策閥值定為0.8能產(chǎn)生較為合理的推薦結(jié)果集;
[0084]3)當(dāng)米用 Item CF 算法,DataMining Agent 請(qǐng)求 ItemCF Agent 米用 Item CF 算法進(jìn)行數(shù)據(jù)挖掘,采用LogLikeliHood計(jì)算所推薦物品的相似度,并給出推薦集;
[0085]4)當(dāng)米用 User CF 算法,Data Mining Agent 請(qǐng)求 User CF Agent 米用 User CF算法挖掘,采用皮爾遜相關(guān)系數(shù)計(jì)算所推薦物品相似度,并選擇與當(dāng)前用戶偏好最相似的K個(gè)鄰居(K默認(rèn)為10),以這K個(gè)鄰居的偏好物品為基礎(chǔ),給出推薦集;
[0086]5)所得推薦集結(jié)果再經(jīng)由 Data Mining Agent 返回給 Recommender Agent ;
[0087]6) Recommendat1n Agent 觸發(fā) Search Agent 調(diào)用數(shù)據(jù)模型層,將 Data MiningAgent產(chǎn)生的推薦物品編號(hào)轉(zhuǎn)化為更詳細(xì)的物品信息;
[0088]7) Recommender Agent將推薦集和Search Agent返回的詳細(xì)信息整合成用于展示的最終結(jié)果集。
【權(quán)利要求】
1.一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法,推薦引擎通過(guò)數(shù)據(jù)挖掘?qū)崿F(xiàn)個(gè)性化推薦,其特征是采用分布式人工智能領(lǐng)域的多Agent技術(shù)實(shí)現(xiàn)個(gè)性化推薦引擎,所述推薦引擎基于多Agent建模,設(shè)計(jì)多個(gè)Agent,包括Agent如下: ?User Agent:接收用戶的輸入,以及展示最終的推薦結(jié)果; ?Recommendat1n Agent:根據(jù)用戶的輸入啟動(dòng)數(shù)據(jù)挖掘,控制整個(gè)數(shù)據(jù)挖掘的過(guò)程,針對(duì)用戶的不同輸入給出個(gè)性化推薦的數(shù)據(jù); ?Data Mining Agent:執(zhí)行數(shù)據(jù)挖掘; ?Strategy Agent:執(zhí)行算法決策,決定采用何種數(shù)據(jù)挖掘算法;
?User CF Agent:執(zhí)行 User CF 算法;
?Item CF Agent:執(zhí)行 Item CF 算法; ?Search Agent:根據(jù)數(shù)據(jù)挖掘的結(jié)果,在數(shù)據(jù)存儲(chǔ)中搜索挖掘結(jié)果對(duì)應(yīng)物品的詳細(xì)信息; ?Recommendat1n Build Agent:將數(shù)據(jù)挖掘的最終結(jié)果格式化為可展示的結(jié)果; 個(gè)性化推薦引擎中采用分層架構(gòu),最上層應(yīng)用層包括上述Agent ;中間層為數(shù)據(jù)模型層,用于封裝對(duì)數(shù)據(jù)庫(kù)的操作,提供透明的數(shù)據(jù)庫(kù)訪問(wèn)操作;最底層為數(shù)據(jù)存儲(chǔ)層,存儲(chǔ)數(shù)據(jù)挖掘所需的數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法,其特征是采用Jadex多Agent開發(fā)平臺(tái)設(shè)計(jì)并建模Agent,結(jié)合Mahout機(jī)器學(xué)習(xí)庫(kù)實(shí)現(xiàn)協(xié)同過(guò)濾推薦,由多Agent并發(fā)協(xié)作給出推薦內(nèi)容。
3.根據(jù)權(quán)利要求1所述的一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法,其特征是在數(shù)據(jù)挖掘過(guò)程中,Strategy Agent分析當(dāng)前用戶的偏好,根據(jù)當(dāng)前用戶偏好的自相似度決策采用User CF算法或者Item CF算法,所述數(shù)據(jù)挖掘過(guò)程如下: 1)Data Mining Agent 收到 Recommendat1n Agent 的數(shù)據(jù)挖掘請(qǐng)求; 2)DataMining Agent請(qǐng)求Strategy Agent進(jìn)行算法決策,計(jì)算當(dāng)前用戶所有偏好物品的自相似度,自相似度表現(xiàn)為當(dāng)前用戶所有偏好的標(biāo)準(zhǔn)差σ,設(shè)定決策閥值,σ小于決策閥值,則自相似度較大,即認(rèn)為當(dāng)前用戶的偏好比較為集中,采用Item CF算法;當(dāng)σ大于決策閥值,則自相似度較小,認(rèn)為當(dāng)前用戶的偏好不集中,采用User CF算法;決策閥值根據(jù)所推薦的場(chǎng)景和數(shù)據(jù)集的不同來(lái)選取設(shè)定; 3)當(dāng)米用Item CF 算法,DataMining Agent 請(qǐng)求 ItemCF Agent 米用 Item CF 算法進(jìn)行數(shù)據(jù)挖掘,采用Log LikeliHood計(jì)算待推薦物品與當(dāng)前用戶偏好的相似度,并給出推薦集; 4)當(dāng)米用User CF 算法,Data Mining Agent 請(qǐng)求 User CF Agent 米用 User CF 算法挖掘,選擇與當(dāng)前用戶偏好最相似的K個(gè)鄰居用戶,K默認(rèn)為10,以這K個(gè)鄰居用戶的偏好物品為推薦物品基礎(chǔ),采用皮爾遜相關(guān)系數(shù)計(jì)算推薦物品與當(dāng)前用戶偏好的相似度,向當(dāng)前用戶給出推薦集; 5)所得推薦集結(jié)果再經(jīng)由DataMining Agent返回給Reco_ender Agent ; 6)Recommendat1n Agent 觸發(fā) Search Agent 調(diào)用數(shù)據(jù)模型層,將 Data Mining Agent產(chǎn)生的推薦集的物品編號(hào)轉(zhuǎn)化為更詳細(xì)的物品信息; 7)Recommender Agent將推薦集和Search Agent返回的物品的詳細(xì)信息整合成用于展示的最終結(jié)果集。
4.根據(jù)權(quán)利要求3所述的一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法,其特征是推薦引擎適用的推薦數(shù)據(jù)包括任何可以采用協(xié)同過(guò)濾進(jìn)行推薦的數(shù)據(jù),要求數(shù)據(jù)已經(jīng)經(jīng)過(guò)清洗,每一個(gè)數(shù)據(jù)元組要求至少有三項(xiàng):用戶編號(hào),物品編號(hào)和偏好值,偏好值經(jīng)過(guò)歸一化處理。
5.根據(jù)權(quán)利要求1或2或3所述的一種基于多Agent的個(gè)性化推薦引擎實(shí)現(xiàn)方法,其特征是Search Agent所依據(jù)的數(shù)據(jù)挖掘的結(jié)果為推薦集中物品的物品編號(hào)集合,按物品編號(hào)在數(shù)據(jù)存儲(chǔ)中搜索對(duì)應(yīng)物品的詳細(xì)信息。
【文檔編號(hào)】G06F17/30GK104462373SQ201410749221
【公開日】2015年3月25日 申請(qǐng)日期:2014年12月9日 優(yōu)先權(quán)日:2014年12月9日
【發(fā)明者】張瑾玉, 梁國(guó)蓉 申請(qǐng)人:南京大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
鄂尔多斯市| 酉阳| 中超| 乌拉特后旗| 潜山县| 阳泉市| 文登市| 德格县| 新绛县| 临泉县| 邛崃市| 平安县| 札达县| 武隆县| 龙江县| 轮台县| 霍邱县| 永新县| 辽阳市| 株洲县| 长武县| 乾安县| 剑河县| 天柱县| 隆昌县| 勐海县| 泗阳县| 大兴区| 深水埗区| 阿合奇县| 五原县| 定日县| 个旧市| 自治县| 会同县| 阜平县| 高邮市| 金溪县| 大同市| 尚义县| 内江市|