吳文慶 修雅慧
【摘要】文章立足于當(dāng)今社會(huì)互聯(lián)網(wǎng)飛速發(fā)展現(xiàn)狀,簡(jiǎn)明扼要地概括了軟件開(kāi)發(fā)推薦技術(shù)所涉及的主要內(nèi)容,并通過(guò)理論與實(shí)際相結(jié)合的方式,對(duì)以關(guān)聯(lián)規(guī)則為立足點(diǎn)的推薦技術(shù)內(nèi)容進(jìn)行了深入、系統(tǒng)的分析,供設(shè)計(jì)人員參考。
【關(guān)鍵詞】關(guān)聯(lián)規(guī)則;軟件開(kāi)發(fā);推薦技術(shù)分析
隨著社會(huì)的發(fā)展,人們對(duì)軟件所具有的要求與之前相比變得越來(lái)越高,設(shè)計(jì)人員在軟件設(shè)計(jì)的過(guò)程中應(yīng)當(dāng)將關(guān)注的重點(diǎn)轉(zhuǎn)向軟件智能化方面?,F(xiàn)階段在軟件開(kāi)發(fā)過(guò)程中所應(yīng)用的技術(shù)無(wú)法滿足用戶需求,而推薦技術(shù)的出現(xiàn)能夠有效解決這一問(wèn)題。
一、軟件開(kāi)發(fā)推薦技術(shù)的概述
(一)推薦系統(tǒng)
隨著互聯(lián)網(wǎng)的發(fā)展,現(xiàn)階段互聯(lián)網(wǎng)所接入站點(diǎn)以及服務(wù)器的數(shù)量與之前相比呈現(xiàn)出非常迅猛的增長(zhǎng)趨勢(shì)。因此。呈現(xiàn)在用戶面前的資源信息數(shù)量和種類也變得更多,用戶想在短時(shí)間內(nèi)對(duì)自己所需信息進(jìn)行瀏覽和查找的工作就變得越發(fā)困難。推薦系統(tǒng)正是依托傳統(tǒng)搜索引擎無(wú)法對(duì)用戶所具有的特殊需求加以滿足這一現(xiàn)狀而出現(xiàn)的,作為以信息超載問(wèn)題的解決為目的延伸出的智能處理系統(tǒng)。推薦系統(tǒng)最主要的作用是在大量的資源信息中幫助用戶對(duì)自己所需信息進(jìn)行挖掘,從根本上對(duì)信息超載這一現(xiàn)象所帶來(lái)的不利影響進(jìn)行規(guī)避。
(二)主要技術(shù)
1.關(guān)聯(lián)推薦
關(guān)聯(lián)推薦的出現(xiàn)依托于人們對(duì)數(shù)據(jù)集中項(xiàng)目所具有內(nèi)在聯(lián)系的分析和挖掘。在對(duì)關(guān)聯(lián)推薦技術(shù)進(jìn)行應(yīng)用時(shí),主要是通過(guò)分析用戶對(duì)信息選擇所具有的傾向性確定不同項(xiàng)目所存在的關(guān)聯(lián)規(guī)則。以關(guān)聯(lián)規(guī)則為立足點(diǎn)所延伸出來(lái)的推薦系統(tǒng),就是將用戶需要的信息視為規(guī)則頭,通過(guò)相應(yīng)的計(jì)算方式對(duì)滿足推薦結(jié)構(gòu)的規(guī)則進(jìn)行獲取時(shí)所應(yīng)用的軟件系統(tǒng)。
2.聚類推薦
聚類推薦主要是通過(guò)對(duì)聚類分析技術(shù)的應(yīng)用,實(shí)現(xiàn)將信息向目標(biāo)用戶進(jìn)行推薦這一目標(biāo)的技術(shù)。對(duì)聚類推薦的應(yīng)用,首先需要將用戶進(jìn)行聚類,然后再通過(guò)特定的計(jì)算方式,將需要提供給目標(biāo)用戶的推薦列表進(jìn)行計(jì)算。該推薦技術(shù)最突出的優(yōu)勢(shì)主要有以下兩個(gè),首先是聚類推薦能夠?qū)5膹?fù)雜程度進(jìn)行降低,這在很大程度上降低了近鄰用戶尋找的難度。需要注意的是,和協(xié)同過(guò)濾相比,聚類推薦的精度相對(duì)較低,這主要是因?yàn)榫垲愑?jì)算往往不涉及到近鄰用戶所對(duì)應(yīng)的距離信息。
3.協(xié)同過(guò)濾
作為出現(xiàn)時(shí)間最早并且應(yīng)用范圍最廣的推薦技術(shù),現(xiàn)階段,協(xié)同過(guò)濾已經(jīng)被世界各地的大型網(wǎng)站作為向用戶提供內(nèi)容推薦的技術(shù)。協(xié)同過(guò)濾主要是以興趣、愛(ài)好高度相似的用戶為出發(fā)點(diǎn),通過(guò)對(duì)其他用戶的分析,完成對(duì)目標(biāo)用戶實(shí)際信息需求的預(yù)測(cè)。對(duì)協(xié)同過(guò)濾技術(shù)進(jìn)行應(yīng)用的流程主要分為兩步,首先通過(guò)對(duì)所收集用戶信息進(jìn)行計(jì)算的方式,確定用戶相似度,然后再選擇與目標(biāo)用戶契合度最高的用戶,對(duì)目標(biāo)用戶實(shí)際信息需求進(jìn)行預(yù)測(cè)。
由于不同類型的推薦算法都存在無(wú)法避免的缺陷,因此在應(yīng)用過(guò)程中,設(shè)計(jì)人員往往會(huì)選擇將不同推薦算法進(jìn)行結(jié)合,用以保證推薦精確度的提高?,F(xiàn)階段,較為常見(jiàn)的組合方式共有三種:第一種,根據(jù)不同推薦技術(shù)所計(jì)算的結(jié)果對(duì)推薦結(jié)果進(jìn)行確定;第二種,對(duì)不同推薦技術(shù)所獲得的計(jì)算結(jié)果進(jìn)行羅列;第三種,根據(jù)實(shí)際情況對(duì)推薦技術(shù)進(jìn)行選擇,確保將推薦技術(shù)所具有的積極作用進(jìn)行最大化發(fā)揮。
二、基于關(guān)聯(lián)規(guī)則的軟件開(kāi)發(fā)推薦技術(shù)
(一)關(guān)聯(lián)規(guī)則的概述
1.概念
關(guān)聯(lián)規(guī)則的挖掘指的是對(duì)數(shù)據(jù)不同集中項(xiàng)之間所具有的關(guān)聯(lián)性進(jìn)行發(fā)現(xiàn)的過(guò)程。關(guān)聯(lián)規(guī)則的挖掘?qū)?shù)據(jù)挖掘領(lǐng)域具有無(wú)法替代的作用。而基于關(guān)聯(lián)規(guī)則所推薦的系統(tǒng)指的是,通過(guò)對(duì)關(guān)聯(lián)規(guī)則所對(duì)應(yīng)挖掘技術(shù)的應(yīng)用,完成數(shù)據(jù)分析的過(guò)程,進(jìn)而滿足給出推薦結(jié)果這一要求的系統(tǒng)。
2.分類
第一種分類方式的依據(jù)為規(guī)則處理值的類型,按照這種分類方式關(guān)聯(lián)規(guī)則可被分為數(shù)值以及布爾兩種。數(shù)值關(guān)聯(lián)規(guī)則主要用于對(duì)量化項(xiàng)或是其屬性關(guān)聯(lián)進(jìn)行描述,而關(guān)聯(lián)對(duì)象往往是處于動(dòng)態(tài)離散狀態(tài)下的數(shù)值。布爾關(guān)聯(lián)規(guī)則主要用于對(duì)項(xiàng)是否存在進(jìn)行表示,關(guān)聯(lián)對(duì)象主要是離散對(duì)象;第二種分類方式的依據(jù)為數(shù)據(jù)抽象的層次,按照這種分類方式關(guān)聯(lián)規(guī)則可被分為單層以及多層兩種。單層的關(guān)聯(lián)規(guī)則通常并不涉及到項(xiàng)所對(duì)應(yīng)的不同層次,多層的關(guān)聯(lián)規(guī)則卻需要對(duì)項(xiàng)所對(duì)應(yīng)的不同層次;第三種分類方式的依據(jù)為數(shù)據(jù)維,按照這種分類方式關(guān)聯(lián)規(guī)則可被分為單維以及多維兩種。單維的關(guān)聯(lián)規(guī)則往往只涉及到項(xiàng)的某一個(gè)維度,多維的關(guān)聯(lián)規(guī)則需要對(duì)涉及不同維度的數(shù)據(jù)進(jìn)行處理。
(二)系統(tǒng)設(shè)計(jì)
想要保證推薦系統(tǒng)的完整性,設(shè)計(jì)人員需要從模型分析、推薦和行為記錄這三個(gè)方面出發(fā),對(duì)推薦系統(tǒng)進(jìn)行設(shè)計(jì)。行為記錄主要負(fù)責(zé)的內(nèi)容在于對(duì)用戶偏好以及歷史行為和相關(guān)數(shù)據(jù)進(jìn)行收集;模型分析需要對(duì)行為記錄所收集到的相關(guān)信息進(jìn)行分析和建模,以此保證對(duì)用戶特征的獲?。煌扑]部分則指的用戶特征為基礎(chǔ),通過(guò)推薦算法對(duì)信息進(jìn)行篩選,保證推薦給用戶的信息與用戶愛(ài)好和需求相符。以LabVIEw為例,負(fù)責(zé)關(guān)聯(lián)規(guī)則挖掘的部分為I-Apriori算法,負(fù)責(zé)推薦候選分析和計(jì)算的部分為加權(quán)計(jì)算策略。行為記錄用于對(duì)相關(guān)代碼進(jìn)行收集,同時(shí)以公開(kāi)與否作為主要參考因素對(duì)所收集代碼進(jìn)行分類,并分別儲(chǔ)存在公共或是私有的代碼庫(kù)之中,推薦部分則通過(guò)交互的方式,對(duì)推薦列表進(jìn)行計(jì)算,并提供給用戶供用戶自己選擇。
(三)系統(tǒng)模塊構(gòu)成
1.采集模塊
采集模塊最主要的作用在于對(duì)推薦系統(tǒng)的源代碼進(jìn)行收集和分析。推薦系統(tǒng)源代碼一般情況下分為公共和私有兩種形式,公共代碼指的是系統(tǒng)自帶代碼以及互聯(lián)網(wǎng)共享代碼等,私有代碼指的是用戶代碼,包括用戶自行編寫(xiě)的代碼、公司內(nèi)部代碼等。通常來(lái)說(shuō),推薦系統(tǒng)自帶代碼和私有代碼是比較容易獲得的,互聯(lián)網(wǎng)共享代碼由于遍布世界各地。因此,想要對(duì)其進(jìn)行獲取需要首先抓取、收集VI文件,再將其進(jìn)行下載并且在公共代碼庫(kù)中進(jìn)行保存。雖然在當(dāng)今社會(huì),互聯(lián)網(wǎng)資源始終處于變化的過(guò)程中,推薦技術(shù)經(jīng)過(guò)數(shù)據(jù)分析所獲得的推薦結(jié)果仍舊具有一定的穩(wěn)定性,但是如果對(duì)互聯(lián)網(wǎng)資源進(jìn)行頻繁的抓取,會(huì)導(dǎo)致公共代碼庫(kù)所包含代碼內(nèi)容不斷變化,進(jìn)而影響推薦結(jié)果的穩(wěn)定性。除此之外,高頻率對(duì)互聯(lián)網(wǎng)資源進(jìn)行抓取,必然需要花費(fèi)相應(yīng)的時(shí)間進(jìn)行資源的分析和計(jì)算,這也會(huì)在一定程度上導(dǎo)致推薦系統(tǒng)所具有穩(wěn)定性降低。通過(guò)對(duì)這一現(xiàn)象進(jìn)行分析可以發(fā)現(xiàn),按照特定時(shí)間對(duì)互聯(lián)網(wǎng)資源進(jìn)行抓取、收集和下載是比較科學(xué)的,這樣做不僅能夠提升公共代碼庫(kù)所具有的穩(wěn)定性,還能避免資源抓取對(duì)推薦系統(tǒng)性能產(chǎn)生的不利影響。
2.交互模塊
交互模塊主要面對(duì)的工作方向?yàn)橛脩趔w驗(yàn),也就是說(shuō)以用戶體驗(yàn)為出發(fā)點(diǎn),對(duì)推薦列表進(jìn)行優(yōu)化,使其更加符合用戶的使用需求。調(diào)查結(jié)果顯示,大部分用戶在對(duì)推薦技術(shù)進(jìn)行應(yīng)用的過(guò)程中,使用頻率最高的部分通常為快速搜索面板。因此,推薦系統(tǒng)可以按照推薦面板的模式,以不同節(jié)點(diǎn)為出發(fā)點(diǎn),對(duì)推薦結(jié)果進(jìn)行分類,這樣做能夠在很大程度上縮短用戶對(duì)所需節(jié)點(diǎn)進(jìn)行定位的時(shí)間。另外,想要對(duì)推薦系統(tǒng)所具有的靈活性進(jìn)行提升,設(shè)計(jì)人員可以將推薦列表的長(zhǎng)度和其他相關(guān)選項(xiàng)的設(shè)置加入到相應(yīng)的系統(tǒng)配置項(xiàng)中。
3.監(jiān)視模塊
作為推薦系統(tǒng)最重要的推薦部分,監(jiān)視模塊主要用于對(duì)開(kāi)發(fā)者一系列的操作行為進(jìn)行實(shí)時(shí)監(jiān)視。關(guān)聯(lián)規(guī)則的核心理念是通過(guò)規(guī)則頭對(duì)規(guī)則體進(jìn)行推測(cè)。所以,監(jiān)視模塊用于對(duì)規(guī)則頭的相關(guān)信息進(jìn)行獲取,并且將所獲取信息傳遞至推薦模塊,再由推薦模塊對(duì)其進(jìn)行處理。
4.計(jì)算模塊
作為推薦技術(shù)重要的構(gòu)成部分,計(jì)算模塊可以根據(jù)不同的監(jiān)視模塊分為不同類型。如果監(jiān)視模塊對(duì)VI程序框圖進(jìn)行檢測(cè)發(fā)現(xiàn)用戶尚未對(duì)節(jié)點(diǎn)進(jìn)行選擇,也就是說(shuō)關(guān)聯(lián)頭不具有任何相關(guān)信息,那么計(jì)算模塊只需要對(duì)交易數(shù)據(jù)相對(duì)集中的項(xiàng)集進(jìn)行計(jì)算,如果監(jiān)視模塊對(duì)VI程序框圖進(jìn)行檢測(cè)發(fā)現(xiàn)用戶已經(jīng)對(duì)節(jié)點(diǎn)進(jìn)行了選擇,那么計(jì)算模塊需要將該節(jié)點(diǎn)所對(duì)應(yīng)信息作為模塊頭進(jìn)行計(jì)算。
三、結(jié)論
綜上所述,文章核心的內(nèi)容為軟件開(kāi)發(fā)推薦技術(shù),首先對(duì)現(xiàn)階段主要應(yīng)用的推薦技術(shù)進(jìn)行了敘述,例如關(guān)聯(lián)推薦、協(xié)同過(guò)濾、聚類推薦等,然后又以采集、交互、監(jiān)視和計(jì)算模塊作為切入點(diǎn),對(duì)推薦系統(tǒng)的構(gòu)建進(jìn)行了細(xì)致的分析,希望可以為設(shè)計(jì)工作的開(kāi)展提供參考。