摘要:個(gè)性化推薦系統(tǒng)分為離線系統(tǒng)和在線系統(tǒng),二者相互聯(lián)系,相互配合,且它在發(fā)展過(guò)程中也存在一些問(wèn)題。針對(duì)以上問(wèn)題,可以通過(guò)用戶主導(dǎo)推薦和項(xiàng)目指導(dǎo)推薦分別進(jìn)行改進(jìn)。另外,一個(gè)好的個(gè)性化推薦系統(tǒng)離不開(kāi)優(yōu)秀的設(shè)計(jì),主要分為4個(gè)管理系統(tǒng):源數(shù)據(jù)管理、ETL管理、數(shù)據(jù)策略管理和集群管理,重點(diǎn)是數(shù)據(jù)策略管理。該文通過(guò)對(duì)協(xié)同過(guò)濾算法的個(gè)性化推薦系統(tǒng)進(jìn)行分析,希望能夠通過(guò)該文簡(jiǎn)單地分析探討為后研究者提供借鑒意義。
關(guān)鍵詞:協(xié)同過(guò)濾 ?算法 ?個(gè)性化推薦系統(tǒng) ?系統(tǒng)設(shè)計(jì)
中圖分類號(hào):G71??文獻(xiàn)標(biāo)識(shí)碼:A???文章編號(hào):1672-3791(2022)05(b)-0000-00
基金項(xiàng)目:2020年廣西高校中青年教師科研基礎(chǔ)能力提升項(xiàng)目(項(xiàng)目編號(hào):2020KY48012); 2020年百色市現(xiàn)代教育技術(shù)科研課題(項(xiàng)目編號(hào):SZ202008)。
作者簡(jiǎn)介:覃瓊花(1981—),女,本科,講師,研究方向?yàn)橛?jì)算機(jī)技術(shù)應(yīng)用、教育信息化。
DOI:10.16661/j.cnki.1672-3791.2112-5042-2431
Research on Personalized Recommendation System Based on Collaborative Filtering Algorithm
QIN Qionghua
(Baise Vocational College,Baise,Guangxi?Zhuang?Autonomous?Region,533000 China)
Abstract: Personalized recommendation system is divided into offline system and online system, which are interrelated and cooperate with each other. It also has some problems in the process of development. To solve the above problems, user-led recommendation and project guidance recommendation can be respectively improved. In addition, a good personalized recommendation system cannot be separated from excellent design, which is mainly divided into four management systems: source data management, ETL management, data policy management and cluster management, with the emphasis on data policy management. This paper analyzes the personalized recommendation system of collaborative filtering algorithm, hoping to provide reference for future researchers through simple analysis and discussion in this paper.
Key Words: Collaborative filtering; The algorithm; Personalized recommendation system; The system design
個(gè)性化推薦系統(tǒng)早在1997年,被Resnick和Varian提出,在電子商務(wù)平臺(tái)上,它根據(jù)用戶的實(shí)際喜好,推薦相應(yīng)的產(chǎn)品信息,給用戶提供建議與指導(dǎo),類似于承擔(dān)著“虛擬銷售”的作用,極大方便用戶的購(gòu)買需求[1]。完整的個(gè)性化推薦系統(tǒng)包括多個(gè)模塊,即用戶行為記錄、用戶數(shù)據(jù)分析和推薦算法,不同的模塊承擔(dān)不同的處理功能[2]。用戶行為記錄就是根據(jù)用戶在互聯(lián)網(wǎng)上進(jìn)行的操作行為,例如:點(diǎn)評(píng)、瀏覽、信息停留閱讀時(shí)間以及點(diǎn)贊等,判斷用戶對(duì)該同類信息的喜好,確定用戶信息推薦范圍。用戶數(shù)據(jù)分析是根據(jù)用戶的行為直接進(jìn)行分析,確定用戶的真實(shí)喜好,有針對(duì)性地提出類似的相關(guān)推薦信息。推薦算法則是這一整套流程的運(yùn)行依據(jù),確保流程的準(zhǔn)確運(yùn)行,是系統(tǒng)中最重要的關(guān)鍵技術(shù)。
1 協(xié)同過(guò)濾算法的類型
總體來(lái)說(shuō),協(xié)同過(guò)濾算法可以分為,基于模型的協(xié)同過(guò)濾算法和基于內(nèi)存的協(xié)同過(guò)濾算法兩個(gè)大類。
1.1基于模型的協(xié)同過(guò)濾算法
基于內(nèi)存的協(xié)同過(guò)濾算法是以項(xiàng)目為依托,以用戶的想法為根據(jù)的過(guò)濾算法,它先根據(jù)用戶的實(shí)際需求篩選與其想法類似的協(xié)同鄰居用戶,再根據(jù)協(xié)同鄰居用戶的關(guān)聯(lián)項(xiàng)目為推薦對(duì)象和評(píng)分對(duì)象,對(duì)用戶進(jìn)行推薦,并預(yù)測(cè)用戶對(duì)這些項(xiàng)目可能的評(píng)分值,并能根據(jù)分值進(jìn)行優(yōu)劣篩選[3]。值得一提的是,項(xiàng)目的評(píng)分會(huì)作為本算法的判斷依據(jù),類比思想也會(huì)在此體現(xiàn),如果協(xié)同鄰居用戶絕大多數(shù)均趨向于以上項(xiàng)目,那么判斷該用戶也會(huì)喜歡以上項(xiàng)目,相應(yīng)的評(píng)分制度會(huì)推給該用戶,默認(rèn)喜歡相似的項(xiàng)目。
1.2基于內(nèi)存的協(xié)同過(guò)濾算法
基于模型的協(xié)同過(guò)濾算法與基于內(nèi)存的協(xié)同過(guò)濾算法有本質(zhì)區(qū)別,前者趨向于在尋找關(guān)聯(lián)協(xié)同鄰居用戶之前,進(jìn)行模型構(gòu)建(將用戶的瀏覽、點(diǎn)擊、購(gòu)買與資訊閱讀信息建立用戶喜好綜合模型),將模型與協(xié)同鄰居用戶的進(jìn)行比對(duì),預(yù)測(cè)用戶的喜好,通過(guò)將項(xiàng)目集合分成多個(gè)模塊,根據(jù)用戶的模型將協(xié)同鄰居用戶的模塊單元進(jìn)行分類,篩選與用戶模型最匹配的模塊集合,將內(nèi)容推薦給用戶。這種技術(shù)有較多的分支,均體現(xiàn)關(guān)聯(lián)性和對(duì)比分析的思想。E342F02E-7A77-4FB2-92FE-371A5EE03885
2 個(gè)性化推薦系統(tǒng)分析(協(xié)同過(guò)濾)
2.1 個(gè)性化推薦系統(tǒng)(協(xié)同過(guò)濾)的分類
協(xié)同過(guò)濾算法可以說(shuō)是個(gè)性化推薦系統(tǒng)的最主要的算法,在系統(tǒng)的發(fā)展過(guò)程中起到舉足輕重的地位。1992年,Tapesry系統(tǒng)處理技術(shù)是以個(gè)性化推薦系統(tǒng)為依托的技術(shù)[4]。1994年,GroupLens系統(tǒng)劃時(shí)代地出現(xiàn)了,將個(gè)性化推薦系統(tǒng)引入了新航道。目前為止,協(xié)同過(guò)濾算法仍然是個(gè)性化推薦系統(tǒng)的主流算法,負(fù)責(zé)將協(xié)同鄰居用戶的推薦信息及時(shí)傳遞給系統(tǒng),接受下一步指令。
協(xié)同過(guò)濾算法的核心思想是在短時(shí)間內(nèi)有效搜尋用戶喜好相關(guān)的鄰居用戶,根據(jù)鄰居用戶對(duì)項(xiàng)目的喜好進(jìn)行篩選與排序,將結(jié)果推薦給初始用戶。在算法進(jìn)行過(guò)程中,需要按照項(xiàng)目相似度尋找相關(guān)聯(lián)的協(xié)同鄰居用戶,采用數(shù)學(xué)方法按相似度的高低進(jìn)行排序。
個(gè)性化推薦系統(tǒng)可以分為離線系統(tǒng)和在線系統(tǒng),二者相互聯(lián)系,相互配合。在線系統(tǒng)中,老用戶和新用戶也有不同的分析路徑,老用戶會(huì)受到系統(tǒng)的重點(diǎn)分析,先通過(guò)用戶行為數(shù)據(jù)庫(kù)進(jìn)行搜尋比對(duì),再對(duì)其行為特征進(jìn)行提取,找到相似的行為特征的用戶,根據(jù)協(xié)同過(guò)濾算法,將鄰居用戶的有效信息進(jìn)行篩選,類比、過(guò)濾和排名,最終呈現(xiàn)排名后的結(jié)果[5]。新用戶由于無(wú)法摸清初始喜好,只能通過(guò)協(xié)同過(guò)濾算法進(jìn)行粗略篩選,提取出精度較低的類似對(duì)比結(jié)果,和老用戶一樣進(jìn)行過(guò)濾和排名后,確定最終的篩選結(jié)果。離線系統(tǒng)是幫助在線系統(tǒng)運(yùn)行的重要手段,通過(guò)實(shí)施用戶行為模型分析、用戶和項(xiàng)目聚類分析、相似度表和用戶反饋模型,以使在線系統(tǒng)及時(shí)選擇分析結(jié)果。
2.2 個(gè)性化推薦系統(tǒng)的問(wèn)題
個(gè)性化推薦系統(tǒng)雖然經(jīng)過(guò)20余年的發(fā)展,取得一定的成果,但仍然存在一些問(wèn)題。首先,存在數(shù)據(jù)缺乏的問(wèn)題[6]。雖然在互聯(lián)網(wǎng)上用戶面臨海量的關(guān)聯(lián)數(shù)據(jù),但是當(dāng)個(gè)性化推薦系統(tǒng)輔之以協(xié)同過(guò)濾算法,會(huì)對(duì)協(xié)同鄰居用戶數(shù)量進(jìn)行精挑細(xì)選,必然會(huì)導(dǎo)致最終選擇的用戶數(shù)相對(duì)執(zhí)行算法前較少,忽略了低分的有效數(shù)據(jù)的收集整理,所以在創(chuàng)建樣本矩陣時(shí),出現(xiàn)樣本不足的情況,影響矩陣的建立。其次,樣本豐富度問(wèn)題。用戶的喜好雖然可以用協(xié)同過(guò)濾算法下的個(gè)性化推薦系統(tǒng)進(jìn)行提煉推薦,但是在事物的喜好上,仍然存在用戶之間的微小差距,當(dāng)用戶因?yàn)閭€(gè)人原因或其他原因?qū)δ撤N喜好產(chǎn)生厭倦,必然會(huì)影響最終的推薦結(jié)果。因此,廣泛地推薦喜好能避免因個(gè)人原因?qū)е聠我煌扑]失效的問(wèn)題,在推薦系統(tǒng)中可以考慮將推薦范圍和類別延伸,多角度、多方位考慮推薦對(duì)象。再次,系統(tǒng)的運(yùn)算能力要滿足數(shù)據(jù)庫(kù)內(nèi)的數(shù)據(jù)迭代更新的需要,當(dāng)系統(tǒng)經(jīng)過(guò)多次篩選、排名后,必然會(huì)使系統(tǒng)的數(shù)據(jù)增加,甚至影響系統(tǒng)的穩(wěn)定運(yùn)行速度,所以系統(tǒng)自身運(yùn)算能力要足夠強(qiáng)大,滿足有限時(shí)間內(nèi)產(chǎn)生指定數(shù)量的推薦結(jié)果,如果在系統(tǒng)長(zhǎng)期運(yùn)行中無(wú)法保證高效運(yùn)算,用戶會(huì)喪失對(duì)系統(tǒng)的使用耐心,放棄使用系統(tǒng)。最后,新用戶問(wèn)題是系統(tǒng)自始至終一直存在的問(wèn)題,主要原因是新用戶相關(guān)信息缺乏,系統(tǒng)無(wú)法預(yù)見(jiàn)新用戶的真實(shí)喜好,初次采用協(xié)同過(guò)濾算法分析會(huì)導(dǎo)致推薦準(zhǔn)確度大大降低。
2.3 個(gè)性化推薦系統(tǒng)(協(xié)同過(guò)濾)的改進(jìn)
2.3.1 用戶主導(dǎo)推薦
以用戶為識(shí)別依據(jù),是個(gè)性化推薦系統(tǒng)的創(chuàng)新,它直接將初始用戶與對(duì)比用戶相匹配,可以根據(jù)對(duì)比用戶對(duì)項(xiàng)目的喜愛(ài)程度預(yù)測(cè)初始用戶對(duì)同樣項(xiàng)目的喜愛(ài)程度。例如:在網(wǎng)購(gòu)時(shí),甲較乙之前看中了一件商品,系統(tǒng)通過(guò)分析,發(fā)現(xiàn)甲和乙對(duì)該商品具有類似的喜好,所以默認(rèn)為乙也喜歡該商品,故將甲喜歡的該商品推薦給乙。用戶主導(dǎo)推薦的評(píng)價(jià)機(jī)制是評(píng)分,通過(guò)對(duì)某一項(xiàng)目進(jìn)行評(píng)分后再比對(duì),把評(píng)分較高的相關(guān)用戶喜歡的商品推薦給初始用戶,實(shí)際上也體現(xiàn)了加權(quán)逼近的思想。
2.3.2 項(xiàng)目主導(dǎo)推薦
項(xiàng)目主導(dǎo)的核心思想是以項(xiàng)目之間的評(píng)分為依據(jù),將大量用戶喜歡的項(xiàng)目與初始用戶喜歡的項(xiàng)目進(jìn)行對(duì)比后篩選,再通過(guò)排序確定最優(yōu)的項(xiàng)目,那么這個(gè)最優(yōu)質(zhì)的項(xiàng)目也是初始用戶喜歡的項(xiàng)目[7]。這種推薦方法與上述用戶主導(dǎo)的推薦方法相比有不同之處,如果我們計(jì)劃確定初始用戶對(duì)某一項(xiàng)目的評(píng)分,需要確定這一項(xiàng)目和其他類似項(xiàng)目之間的相似度,按評(píng)分的高低將相似度進(jìn)行排序,得到排序中較高的項(xiàng)目排序集合,將此集合的加權(quán)平均值作為初始項(xiàng)目的最終評(píng)分,以次評(píng)分為初始項(xiàng)目的評(píng)分,從而確定初始用戶的評(píng)分。
3 個(gè)性化推薦系統(tǒng)設(shè)計(jì)(協(xié)同過(guò)濾)
3.1 系統(tǒng)結(jié)構(gòu)模塊設(shè)計(jì)
個(gè)性化推薦系統(tǒng)模塊可以分為4個(gè)管理系統(tǒng):源數(shù)據(jù)管理、ETL管理、數(shù)據(jù)策略管理和集群管理,以上順序也是管理流程的順序。源數(shù)據(jù)可以分為結(jié)構(gòu)化模塊數(shù)據(jù)和非結(jié)構(gòu)化模塊數(shù)據(jù),結(jié)構(gòu)化數(shù)據(jù)包括日志、項(xiàng)目和用戶,非結(jié)構(gòu)化數(shù)據(jù)包括文本、網(wǎng)頁(yè)和圖表等,分類進(jìn)行數(shù)據(jù)采集是數(shù)據(jù)處理的第一步。ETL管理是數(shù)據(jù)存儲(chǔ)的管理模式,它是將非結(jié)構(gòu)化的數(shù)據(jù)進(jìn)行整理,通過(guò)分布、數(shù)據(jù)儲(chǔ)存,然后在元數(shù)據(jù)庫(kù)中整理分析。個(gè)性化推薦系統(tǒng)設(shè)計(jì)的關(guān)鍵模塊是數(shù)據(jù)策略管理,它能實(shí)現(xiàn)基于協(xié)同過(guò)濾算法的數(shù)據(jù)推薦策略分析,通過(guò)用戶、項(xiàng)目、評(píng)價(jià)、偏好等因素,選擇相關(guān)的算法,通過(guò)分析后,采用過(guò)濾、排序和推薦確定最終推薦結(jié)果。集群管理采用分發(fā)的模式,將集群分發(fā)給相關(guān)門戶,通過(guò)門戶提供相應(yīng)的服務(wù)。
3.2 系統(tǒng)重點(diǎn)模塊舉例介紹
3.2.1 數(shù)據(jù)策略模塊
這個(gè)模塊也是上述系統(tǒng)設(shè)計(jì)的核心,如上所述,通過(guò)用戶、項(xiàng)目、評(píng)價(jià)、偏好等因素,選擇相關(guān)的算法,通過(guò)分析后,采用過(guò)濾、排序和推薦確定最終推薦結(jié)果。例如,為用戶推薦某地圖上某區(qū)域排名前10的小吃店,每行首列表示用相關(guān)用戶的名字,后面的10列表示篩選出的小吃店的編號(hào),選擇27號(hào)用戶,發(fā)現(xiàn)該用戶為男性,年齡為26歲,平均每日點(diǎn)外賣2.3次,為其篩選出的小吃店編號(hào)分別是1280、1602、904、1017、824、1282、1071、1681、358、968,體現(xiàn)了篩選的無(wú)序性和排序的精確性。E342F02E-7A77-4FB2-92FE-371A5EE03885
3.2.2 源數(shù)據(jù)管理模塊
源數(shù)據(jù)管理可以分為非結(jié)構(gòu)化數(shù)據(jù)管理和結(jié)構(gòu)化數(shù)據(jù)管理,在個(gè)性化推薦系統(tǒng)中,結(jié)構(gòu)化數(shù)據(jù)包括用戶初始數(shù)據(jù)、文本數(shù)據(jù)、記錄數(shù)據(jù)等,非結(jié)構(gòu)化數(shù)據(jù)包括圖片、音頻文件等,不同類型的數(shù)據(jù)采用不同的管理方法。數(shù)據(jù)管理可以采用下面的偽代碼進(jìn)行分析。
輸入端口:數(shù)據(jù)標(biāo)記。輸出端口:標(biāo)記。
(1)添加結(jié)構(gòu)化數(shù)據(jù);(2)判別數(shù)據(jù)首列,添加用戶數(shù)據(jù),添加文本數(shù)據(jù);(3)添加非結(jié)構(gòu)化數(shù)據(jù);(4)判別非結(jié)構(gòu)化數(shù)據(jù)首列;(5)插入;(6)循環(huán)操作。
4結(jié)語(yǔ)
該文分開(kāi)論述協(xié)同過(guò)濾算法和個(gè)性化推薦系統(tǒng),并闡述二者之間的關(guān)聯(lián)性,重點(diǎn)介紹了基于協(xié)同推薦算法的個(gè)性化推薦系統(tǒng)的結(jié)構(gòu)、分類和優(yōu)缺點(diǎn),并拓展介紹了系統(tǒng)的改進(jìn)方法。從上可知,協(xié)同過(guò)濾算法分為基于模型的協(xié)同過(guò)濾算法和基于內(nèi)存的協(xié)同過(guò)濾算法,基于內(nèi)存的過(guò)濾算法是以項(xiàng)目為依據(jù),基于模型的過(guò)濾算法以用戶為依據(jù),與個(gè)性化推薦系統(tǒng)的分類有相似之處。
個(gè)性化推薦系統(tǒng)是以協(xié)同過(guò)濾算法為核心的系統(tǒng),其核心思想是在短時(shí)間內(nèi)有效搜尋用戶喜好相關(guān)的鄰居用戶,根據(jù)鄰居用戶對(duì)項(xiàng)目的喜好進(jìn)行篩選與排序,將結(jié)果推薦給初始用戶。它分為離線系統(tǒng)和在線系統(tǒng),二者相互聯(lián)系,相互配合。它在發(fā)展過(guò)程中也存在一些問(wèn)題,例如數(shù)據(jù)缺乏、樣本豐富度不足、系統(tǒng)運(yùn)算能力低和新用戶、新產(chǎn)品干擾等。針對(duì)以上問(wèn)題,可以通過(guò)用戶主導(dǎo)推薦和項(xiàng)目指導(dǎo)推薦分別進(jìn)行改進(jìn)。一個(gè)好的個(gè)性化推薦系統(tǒng)離不開(kāi)優(yōu)秀的設(shè)計(jì),主要分為4個(gè)管理系統(tǒng):源數(shù)據(jù)管理、ETL管理、數(shù)據(jù)策略管理和集群管理,重點(diǎn)是數(shù)據(jù)策略管理。
參考文獻(xiàn)[1] 陳耶拉,耿秀麗.基于改進(jìn)協(xié)同過(guò)濾的個(gè)性化產(chǎn)品服務(wù)系統(tǒng)方案推薦[J].計(jì)算機(jī)集成制造系統(tǒng),2021,27(1):240-248.
[2] 楊雪.基于協(xié)同過(guò)濾的圖書(shū)館書(shū)目個(gè)性化推薦系統(tǒng)[J].微型電腦應(yīng)用,2021,37(9):169-171+175.
[3] 陳煉.基于快速矩陣分解的分布式協(xié)同過(guò)濾推薦算法研究[D].長(zhǎng)沙:湖南大學(xué),2020.
[4] 王保.基于協(xié)同過(guò)濾算法的農(nóng)業(yè)信息推薦系統(tǒng)研究[J].電腦編程技巧與維護(hù),2021(9):124-125,128.