論生物信息學(xué)系統(tǒng)設(shè)計中引進推薦系統(tǒng)_第1頁
論生物信息學(xué)系統(tǒng)設(shè)計中引進推薦系統(tǒng)_第2頁
論生物信息學(xué)系統(tǒng)設(shè)計中引進推薦系統(tǒng)_第3頁
論生物信息學(xué)系統(tǒng)設(shè)計中引進推薦系統(tǒng)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、論生物信息學(xué)系統(tǒng)設(shè)計中引進推薦系統(tǒng)    畢業(yè)論文     推薦系統(tǒng)(Recommender System) 1是個性化信息服務(wù)的主要技術(shù)之1,職稱論文發(fā)表它實現(xiàn)的是“信息找人,按需服務(wù)”;通過對用戶信息需要、興趣愛好和訪問歷史等的收集分析,建立用戶模型,并將用戶模型應(yīng)用于網(wǎng)上信息的過濾和排序,從而為用戶提供感興趣的資源和信息。生物信息學(xué)(Bioinformatics)2,3是由生物學(xué)、應(yīng)用數(shù)學(xué)和計算機科學(xué)相互交叉所形成的1門新型學(xué)科;其實質(zhì)是利用信息科學(xué)的方法和技術(shù)來解決生物學(xué)問題。20世紀(jì)末生物信息學(xué)迅速發(fā)展,

2、在信息的數(shù)量和質(zhì)量上都極大地豐富了生物科學(xué)的數(shù)據(jù)資源,而數(shù)據(jù)資源的急劇膨脹需要尋求1種科學(xué)而有力的工具來組織它們,基于生物信息學(xué)的2次數(shù)據(jù)庫4能比較好地規(guī)范生物數(shù)據(jù)的分類與組織,但是用戶無法從大量的生物數(shù)據(jù)中尋求自己感興趣的部分(著名的生物信息學(xué)網(wǎng)站NCBI(美國國立生物技術(shù)信息中心),僅僅是小孢子蟲(Microsporidia)的DNA序列就達3 399種),因此在生物2次數(shù)據(jù)庫上建立個性化推薦系統(tǒng),能使用戶快速找到自己感興趣的生物信息。特別是在當(dāng)前生物信息數(shù)據(jù)量急劇增長的情況下,生物信息學(xué)推薦系統(tǒng)將發(fā)揮強大的優(yōu)勢。 1推薦系統(tǒng)的工作流程 應(yīng)用在不同領(lǐng)域的推薦系統(tǒng),其體系結(jié)構(gòu)也不完全相同。1

3、般而言,推薦系統(tǒng)的工作流程5如圖1所示。 (1)信息獲取。推薦系統(tǒng)工作的基礎(chǔ)是用戶信息。用戶信息包括用戶輸入的關(guān)鍵詞、項目的有關(guān)屬性、用戶對項目的文本評價或等級評價及用戶的行為特征等,所有這些信息均可以作為形成推薦的依據(jù)。信息獲取有兩種類型6,即顯式獲取(Explicit)和隱式獲取(Implicit),由于用戶的很多行為都能暗示用戶的喜好,因此隱式獲取信息的準(zhǔn)確性比顯式高1些。 (2)信息處理。信息獲取階段所獲得的用戶信息,1般根據(jù)推薦技術(shù)的不同對信息進行相應(yīng)的處理。用戶信息的存儲格式中用得最多的是基于數(shù)值的矩陣格式,最常用的是用m×n維的用戶項目矩陣R來表示,矩陣中的每個元素Ri

4、j=第i個用戶對第j個項目的評價,可以當(dāng)做數(shù)值處理,矩陣R被稱為用戶項目矩陣。 (3)個性化推薦。根據(jù)形成推薦的方法的不同可以分為3種,即基于規(guī)則的系統(tǒng)、基于內(nèi)容過濾的系統(tǒng)和協(xié)同過濾系統(tǒng)?;谝?guī)則的推薦系統(tǒng)和基于內(nèi)容過濾的推薦系統(tǒng)均只能為用戶推薦過去喜歡的項目和相似的項目,并不能推薦用戶潛在感興趣的項目。而協(xié)同過濾系統(tǒng)能推薦出用戶近鄰所喜歡的項目,通過用戶與近鄰之間的“交流”,發(fā)現(xiàn)用戶潛在的興趣。因此本文所用的算法是基于協(xié)同過濾的推薦算法。 (4)推薦結(jié)果。顯示的任務(wù)是把推薦算法生成的推薦顯示給用戶,完成對用戶的推薦。目前最常用的推薦可視化方法是TopN列表7,按照從大到小順序把推薦分值最高的

5、N個事物或者最權(quán)威的N條評價以列表的形式顯示給用戶。 2生物信息學(xué)推薦系統(tǒng)的設(shè)計 綜合各種推薦技術(shù)的性能與優(yōu)缺點,本文構(gòu)造的生物信息學(xué)推薦系統(tǒng)的總體結(jié)構(gòu)如圖2所示。 生物信息學(xué)推薦系統(tǒng)實現(xiàn)的主要功能是在用戶登錄生物信息學(xué)網(wǎng)站時,所留下的登錄信息通過網(wǎng)站傳遞到推薦算法部分;推薦算法根據(jù)該用戶的用戶名從數(shù)據(jù)庫提取出推薦列表,并返回到網(wǎng)站的用戶界面;用戶訪問的記錄返回到數(shù)據(jù)庫,系統(tǒng)定時調(diào)用推薦算法,對數(shù)據(jù)庫中用戶訪問信息的數(shù)據(jù)進行分析計算,形成推薦列表。 本系統(tǒng)采用基于近鄰的協(xié)同過濾推薦算法,其結(jié)構(gòu)可以進1步細(xì)化為如圖3所示。算法分為鄰居形成和推薦形成兩大部分,兩部分可以獨立進行。這是該推薦系統(tǒng)有別

6、于其他系統(tǒng)的優(yōu)勢之1。由于信息獲取后的用戶項目矩陣維數(shù)較大,使得系統(tǒng)的可擴展性降低。本系統(tǒng)采用SVD矩陣降維方法,減少用戶項目矩陣的維數(shù),在計算用戶相似度時大大降低了運算的次數(shù),提高了推薦算法的效率。     (1)信息獲取。用戶對項目的評價是基于用戶對某1個項目(為表示簡單,以下提及的項目均指網(wǎng)站上的生物物種)的點擊次數(shù)來衡量的。當(dāng)1個用戶注冊并填寫好個人情況以后,系統(tǒng)會自動為該用戶創(chuàng)建1個“信息矩陣”,該矩陣保存了所有項目的ID號以及相應(yīng)的用戶評價,保存的格式為:S+編號+用戶評價,S用于標(biāo)記項目,每個項目編號及其評價都以“S”相隔開;編號是唯1的,

7、占5位;用戶評價是用戶點擊該項目的次數(shù),規(guī)定其范圍是0100,系統(tǒng)設(shè)定當(dāng)增加到100時不再變化。這樣做可防止形成矩陣時矩陣評價相差值過大而使推薦結(jié)果不準(zhǔn)確。 (2)信息處理。信息處理是將所有用戶的信息矩陣轉(zhuǎn)換為用戶項目矩陣,使用戶信息矩陣數(shù)值化,假設(shè)系統(tǒng)中有M個用戶和N個項目,信息處理的目的就是創(chuàng)建1個M×N的矩陣R,RIJ代表用戶I對項目J的評價。 (3)矩陣處理。協(xié)同過濾技術(shù)的用戶項目矩陣的數(shù)據(jù)表述方法所帶來的稀疏性嚴(yán)重制約了推薦效果,而且在系統(tǒng)較大的情況下,它既不能精確地產(chǎn)生推薦集,又忽視了數(shù)據(jù)之間潛在的關(guān)系,發(fā)現(xiàn)不了用戶潛在的興趣,而且龐大的矩陣增加了計算的復(fù)雜度,因此有必要

8、對該矩陣的表述方式做優(yōu)化,進行矩陣處理。維數(shù)簡化是1種較好的方法,本文提出的算法應(yīng)用單值分解(Singular Value Decomposition,SVD)技術(shù)8,對用戶項目矩陣進行維數(shù)簡化。 (4)相似度計算。得到降維以后的用戶矩陣US,就可以尋找每個用戶的近鄰。近鄰的確定是通過兩個用戶的相似度來度量的。本文采用Pearson相關(guān)度因子9求相似度。(5)計算用戶鄰居。該方法有兩種10,即基于中心的鄰居(CenterBased Neighbor)和集合鄰居(Aggregate Neighbor)。本系統(tǒng)采用了第1種方法,直接找出與用戶相似度最高的前N個用戶作為鄰居,鄰居個數(shù)N由系統(tǒng)設(shè)定,比

9、如規(guī)定N5。 (6)推薦形成。推薦形成的前提是把當(dāng)前用戶的鄰居ID號及其與當(dāng)前用戶的相似度保存到數(shù)據(jù)庫中,而在前面的工作中已找出各用戶的鄰居以及與用戶的相似度,推薦形成部分只需要對當(dāng)前登錄用戶進行計算。推薦策略是:對當(dāng)前用戶已經(jīng)訪問過的項目不再進行推薦,推薦的范圍是用戶沒有訪問的項目,其目的是推薦用戶潛在感興趣的項目;考慮到系統(tǒng)的項目比較多,用戶交互項目的數(shù)量很大,所以只篩選出推薦度最大的N個項目,形成TopN推薦集,設(shè)定N5。 3生物信息學(xué)推薦系統(tǒng)的實現(xiàn) 生物信息學(xué)推薦系統(tǒng)的實現(xiàn)可以用圖4來表示。數(shù)據(jù)庫部分主要存儲用戶信息和項目信息,用SQL Server 2000實現(xiàn)。 數(shù)據(jù)訪問層實現(xiàn)了與

10、用戶交互必需的存儲過程以及觸發(fā)器,也使用SQL Server 2000,主要完成以下功能:初始化新用戶信息矩陣;插入新項目時更新所有用戶的信息矩陣;用戶點擊項目時更新該用戶對項目的評價;刪除項目時更新所有用戶的信息矩陣。用戶訪問層主要涉及網(wǎng)頁與用戶的交互和調(diào)用數(shù)據(jù)訪問層的存儲過程,在這里不做詳細(xì)的介紹。 (2)數(shù)據(jù)操作類DataControl。該類負(fù)責(zé)推薦算法與數(shù)據(jù)庫的數(shù)據(jù)交換,靜態(tài)成員Con調(diào)用DataCon. getcon()獲得數(shù)據(jù)庫連接,然后對數(shù)據(jù)庫進行各種操作。把所有方法編寫成靜態(tài),便于推薦算法中不創(chuàng)建對象就可以直接調(diào)用。 (3)RecmmendSource與CurrentUserN

11、eighbor。這兩個類作為FCRecommand類的內(nèi)部類,RecmmendSource用于保存當(dāng)前用戶的推薦列表,包括推薦項目號和推薦度;CurrentUserNeighbor用于保存鄰居信息,包括鄰居ID號、相似度及其訪問信息。 (4)協(xié)同過濾推薦算法FCRecommand。該類實現(xiàn)了整個推薦算法,主要分為鄰居形成方法FCArithmetic和推薦形成方法GenerateRecommend。    下面給出方法FCArithmetic的關(guān)鍵代碼: Matrix user_item=this.User_Item_Arry(); /獲取用戶項目矩陣 u

12、ser_item=this.SVD_Calculate(user_item); /調(diào)用SVD降維方法 Vector c_uservector = new Vector(); /當(dāng)前用戶向量 Vector o_uservector = new Vector(); /其他用戶向量 Vector c_user_correlate_vector = new Vector(); /當(dāng)前用戶與其他用戶之間相似度向量 for(int i=0;ifor(int j=0;jc_uservector.addElement(user_item.get(i,j); /1.獲得當(dāng)前用戶向量 for(int k=0;k

13、o_uservector.clear(); for(int l=0;lo_uservector.addElement(user_item.get(k,l); /2.獲得其他用戶的向量 /3.計算當(dāng)前用戶與其他用戶的相似度 usercorrelativity=this.Correlativity(c_uservector,o_uservector); c_user_correlate_vector.addElement(usercorrelativity); /4.根據(jù)當(dāng)前用戶與其他用戶的相似度,計算其鄰居 this.FindUserNeighbor(i,c_user_correlate_vec

14、tor); 根據(jù)鄰居形成方法FCArithmetic,可以得到每個用戶的鄰居。作為測試用例,圖6顯示用戶Jack與系統(tǒng)中1部分用戶的相似度,可以看出它與自己的相似度必定最高;并且它與用戶Sugx訪問了相同的項目,它們之間的相似度也為1,具有極高的相似度。 4結(jié)束語 在傳統(tǒng)推薦系統(tǒng)的基礎(chǔ)上,結(jié)合當(dāng)前生物信息學(xué)網(wǎng)站的特點,提出1個基于生物信息平臺的推薦系統(tǒng),解決了傳統(tǒng)生物信息網(wǎng)站平臺信息迷茫的缺點,為用戶推薦其感興趣物種的DNA或蛋白質(zhì)序列。 優(yōu)點在于協(xié)同過濾的推薦算法能發(fā)現(xiàn)用戶潛在的興趣,能促進生物學(xué)家之間的交流;推薦算法的鄰居形成與推薦形成兩部分可以單獨運行,減少了系統(tǒng)的開銷。進1步的工作是分

15、析生物數(shù)據(jù)的特點及生物數(shù)據(jù)之間的關(guān)系,增加用戶和項目數(shù)量,更好地發(fā)揮推薦系統(tǒng)的優(yōu)勢。 參考文獻: 1PAUL R,HAL R V. Recommender systemsJ.Communications of the ACM,1997,40(3): 5658. 3林毅申, 林丕源.基于Web Services的生物信息解決方案J. 計算機應(yīng)用研究, 2005,22(6): 157158,164.4邢仲璟, 林丕源, 林毅申.基于Bioperl的生物2次數(shù)據(jù)庫建立及應(yīng)用J. 計算機系統(tǒng)應(yīng)用, 2004(11): 5860. 5AIRIA S, TAKAHISA A, HIROYA I,et al

16、. Personalization system based on dynamic learning:International Semantic Web ConferenceC.Sardinia:s.n.,2002. 6BREESE J S, HECKERMAN D,KADIE C.Emperical analysis of predictive algorithms for collaborative filtering:proceedings of the Fourteenth Conference on University in Artificial IntelligenceC. Madison:WI,1998:4352. 7SCHAFER J B, KONSTAN J,RIEDL J.Recommender systems in ecommerce:proceedin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論