王著鑫,耿秀麗,王龍羽,王婉婷
(上海理工大學(xué)管理學(xué)院,上海 200093)
云計(jì)算是并行處理、網(wǎng)絡(luò)計(jì)算和分布式計(jì)算等技術(shù)發(fā)展融合的產(chǎn)物。云服務(wù)以云計(jì)算為基礎(chǔ),向用戶(hù)提供按需、可計(jì)量的服務(wù)。由于云服務(wù)成本低、效率高,受到了越來(lái)越多企業(yè)和個(gè)人的青睞。云服務(wù)市場(chǎng)的迅速發(fā)展使得云服務(wù)種類(lèi)呈現(xiàn)多元化趨勢(shì)。雖然用戶(hù)有了更多的選擇,但也增加了用戶(hù)選擇符合自身需求的難度,這影響的不僅僅是用戶(hù),對(duì)云服務(wù)提供商的切身利益也造成很大影響。云服務(wù)市場(chǎng)規(guī)模的不斷擴(kuò)大必然導(dǎo)致競(jìng)爭(zhēng)者變得愈來(lái)愈多,云服務(wù)提供商為了提高自身競(jìng)爭(zhēng)力,除了要改善云服務(wù)質(zhì)量,還要將云服務(wù)高效而精準(zhǔn)地推薦給用戶(hù)。因此,快速推薦用戶(hù)所需的云服務(wù)具有重要研究意義。
云服務(wù)推薦研究不斷深入,模糊TOPSIS時(shí)變權(quán)重二次量化云服務(wù)推薦、CSRA云服務(wù)推薦算法、基于偏好信息和信任的云服務(wù)推薦模型等方法不斷提出,在一定程度上滿(mǎn)足了用戶(hù)和云服務(wù)提供商需求。但是現(xiàn)有的云服務(wù)推薦方法依然在推薦效率、數(shù)據(jù)稀疏性、用戶(hù)評(píng)分主觀性等方面存在問(wèn)題。如文獻(xiàn)[6]通過(guò)綜合考慮云服務(wù)的信譽(yù)度和穩(wěn)定性方法來(lái)提高推薦精度,但是忽略了算法的執(zhí)行時(shí)間。當(dāng)用戶(hù)數(shù)量較大時(shí),該算法效率低的劣勢(shì)就會(huì)突顯;文獻(xiàn)[7]采用結(jié)合信任的混雜社會(huì)網(wǎng)絡(luò)來(lái)緩解矩陣稀疏性問(wèn)題。可是該方法計(jì)算過(guò)程復(fù)雜,不適合用來(lái)處理大數(shù)據(jù);文獻(xiàn)[8]側(cè)重于處理數(shù)據(jù)稀疏性和冷啟動(dòng)問(wèn)題,卻沒(méi)有考慮到用戶(hù)評(píng)分的主觀性會(huì)降低推薦精度。
針對(duì)推薦效率問(wèn)題,文獻(xiàn)[9]通過(guò)并行化Spark上CAQGS的分區(qū)操作來(lái)縮短算法的執(zhí)行時(shí)間。該方法不是在算法本身上進(jìn)行優(yōu)化,而是通過(guò)調(diào)用平臺(tái)的方式提高推薦效率,所以不具有普適性;文獻(xiàn)[10]采用加權(quán)的SK-means聚類(lèi)方法有效降低了算法的時(shí)間復(fù)雜度,但是SK-means聚類(lèi)中心的數(shù)量和初始聚類(lèi)中心的位置選取對(duì)聚類(lèi)效果影響很大。而基于密度的聚類(lèi)算法Mean Shift不需要人為地確定聚類(lèi)中心的數(shù)量和初始聚類(lèi)中心位置,它可根據(jù)數(shù)據(jù)的密度分布自動(dòng)選擇聚類(lèi)的數(shù)量。同時(shí)Mean Shift聚類(lèi)算法計(jì)算量小、執(zhí)行速度快且較穩(wěn)定,因此本文使用Mean Shift聚類(lèi)算法來(lái)提高推薦效率。面對(duì)龐大的項(xiàng)目數(shù)量,不可能每個(gè)用戶(hù)對(duì)每個(gè)項(xiàng)目都進(jìn)行評(píng)價(jià),由此產(chǎn)生的稀疏數(shù)據(jù)會(huì)降低推薦精度。針對(duì)數(shù)據(jù)稀疏性問(wèn)題,文獻(xiàn)[12]使用HOSVD對(duì)數(shù)據(jù)進(jìn)行降維,以緩解稀疏性,但是降維的方法會(huì)導(dǎo)致數(shù)據(jù)不可解釋?zhuān)晃墨I(xiàn)[13]認(rèn)為MF-LOD可以有效解決數(shù)據(jù)稀疏問(wèn)題,但該方法過(guò)程較為繁瑣,增加了一定的時(shí)間復(fù)雜度?;疑P(guān)聯(lián)預(yù)測(cè)不會(huì)改變數(shù)據(jù)的原有屬性,而且計(jì)算量小,不受數(shù)據(jù)量的約束,因此本文采用灰色關(guān)聯(lián)預(yù)測(cè)計(jì)算用戶(hù)間的灰色關(guān)聯(lián)度以預(yù)測(cè)空缺數(shù)據(jù);由于用戶(hù)對(duì)項(xiàng)目打分存在一定的主觀性,文獻(xiàn)[14]提出一種基于云模型的主觀信任量化評(píng)價(jià)方法,使用主觀信任云的期望和超熵對(duì)信任客體信用度進(jìn)行定量評(píng)價(jià);文獻(xiàn)[15]提出一種基于信任鏈的信任評(píng)價(jià)模型,通過(guò)評(píng)價(jià)模型識(shí)別惡意節(jié)點(diǎn),減少不必要的損失。但文獻(xiàn)[14]和文獻(xiàn)[15]都只解決了用戶(hù)主觀信任的模糊性問(wèn)題,忽略了用戶(hù)興趣差異問(wèn)題。而信任云混合算法是一種信任云和興趣特征相結(jié)合的方法,它既處理了用戶(hù)主觀信任的模糊性問(wèn)題,又解決了用戶(hù)偏好不一的問(wèn)題,因此本文采用信任云混合算法來(lái)處理用戶(hù)評(píng)分的主觀性。
上述方法中,灰色關(guān)聯(lián)預(yù)測(cè)和信任云混合算法都只考慮了如何提高推薦精度,卻忽略了推薦效率的重要性,在處理大規(guī)模數(shù)據(jù)時(shí)這些方法就會(huì)顯得捉襟見(jiàn)肘。因此,本文提出基于Mean Shift聚類(lèi)算法的云服務(wù)推薦。該方法在灰色關(guān)聯(lián)預(yù)測(cè)和信任云混合算法基礎(chǔ)上融入聚類(lèi)算法MeanShift。通過(guò)采用MeanShift算法將灰色關(guān)聯(lián)預(yù)測(cè)處理后的數(shù)據(jù)進(jìn)行聚類(lèi),然后計(jì)算類(lèi)簇內(nèi)目標(biāo)用戶(hù)與其他用戶(hù)間興趣特征相似度與信任相似度加權(quán)得到的綜合相似度,并采用top-N算法將近鄰用戶(hù)的云服務(wù)方案推薦給目標(biāo)用戶(hù)。由于聚類(lèi)后只需要考慮與目標(biāo)用戶(hù)同類(lèi)簇的用戶(hù)數(shù)據(jù)即可,因此很大程度上縮短了算法的執(zhí)行時(shí)間,提高了云服務(wù)的推薦效率。本文算法主要有3點(diǎn)貢獻(xiàn),具體如下:
(1)在數(shù)據(jù)預(yù)處理階段通過(guò)灰色關(guān)聯(lián)預(yù)測(cè)彌補(bǔ)數(shù)據(jù)稀疏性。
(2)為目標(biāo)用戶(hù)推薦云服務(wù)前采用Mean Shift算法將用戶(hù)進(jìn)行聚類(lèi),只保留與目標(biāo)用戶(hù)同類(lèi)簇的數(shù)據(jù),以提高算法推薦效率。
(3)采用信任云混合算法消除用戶(hù)評(píng)分的主觀性影響,更精確地為目標(biāo)用戶(hù)推薦適合的云服務(wù)。
由于云服務(wù)市場(chǎng)的迅猛發(fā)展,云服務(wù)提供商和用戶(hù)數(shù)量眾多,各種各樣的云服務(wù)質(zhì)量也參差不齊。面對(duì)海量的數(shù)據(jù),現(xiàn)有的云服務(wù)推薦算法不能及時(shí)有效地為用戶(hù)匹配適合的云服務(wù)。而本文提出的基于Mean Shift的云服務(wù)推薦可在保證一定推薦精度的基礎(chǔ)上大大提高推薦效率,并且數(shù)據(jù)量越大效果越明顯。首先采用灰色關(guān)聯(lián)預(yù)測(cè)彌補(bǔ)數(shù)據(jù)空缺值,然后利用Mean Shift算法將用戶(hù)進(jìn)行聚類(lèi)。流程是先根據(jù)數(shù)據(jù)密度分布對(duì)所有用戶(hù)進(jìn)行訪問(wèn),而后計(jì)算用戶(hù)在各個(gè)類(lèi)簇中出現(xiàn)的累計(jì)頻數(shù),并將其劃分到累計(jì)頻數(shù)最大的類(lèi)簇中。因?yàn)樵诮酉聛?lái)尋找近鄰用戶(hù)時(shí)只需考慮目標(biāo)用戶(hù)所在類(lèi)簇的數(shù)據(jù)即可,所以大大縮短了算法的執(zhí)行時(shí)間。最后計(jì)算類(lèi)簇內(nèi)目標(biāo)用戶(hù)與其他用戶(hù)的綜合相似度,并采用top-N算法將最佳云服務(wù)方案推薦給目標(biāo)用戶(hù)。本文思路架構(gòu)如圖1所示。
一般收集到的數(shù)據(jù)都是不完整的,存在一定量的空值,但這樣的數(shù)據(jù)并不是無(wú)效數(shù)據(jù),只是信息不夠完整,可以采用灰色關(guān)聯(lián)預(yù)測(cè)進(jìn)行填充,以彌補(bǔ)數(shù)據(jù)稀疏性?;疑P(guān)聯(lián)分析是灰色關(guān)聯(lián)預(yù)測(cè)的核心,其基本原理是依據(jù)數(shù)列曲線(xiàn)幾何形狀的相似程度判斷其聯(lián)系是否緊密。曲線(xiàn)越相似,對(duì)應(yīng)數(shù)列間的關(guān)聯(lián)度就越大。不論數(shù)據(jù)量多還是少,數(shù)據(jù)有規(guī)律還是無(wú)規(guī)律,灰色關(guān)聯(lián)分析都同樣有效,其流程如下:先將原始數(shù)據(jù)區(qū)分為待估數(shù)列和比較數(shù)列并無(wú)綱量化處理,之后計(jì)算待估數(shù)列和比較數(shù)列的關(guān)聯(lián)系數(shù)和關(guān)聯(lián)度,最后依據(jù)關(guān)聯(lián)度大小將比較序列排序并進(jìn)行分析。而灰色關(guān)聯(lián)預(yù)測(cè)則是利用灰色關(guān)聯(lián)分析得到的灰色關(guān)聯(lián)度預(yù)測(cè)用戶(hù)對(duì)云服務(wù)的評(píng)分,其計(jì)算過(guò)程如下:
將每個(gè)使用過(guò)云服務(wù)的用戶(hù)U
對(duì)云服務(wù)方案F
={F
,F
,F
,...,F
}的評(píng)分r
表示為一個(gè)數(shù)列,其中i
=1,2,3,…,m
,j
=1,2,3,…,n
,則待估數(shù)列和比較數(shù)列分別表示如下:Fig.1 block diagram of this paper圖1 本文框架
由于存在量綱的影響,需要在計(jì)算灰色關(guān)聯(lián)系數(shù)之前對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化,其計(jì)算公式如下:
Y
是由評(píng)分r
標(biāo)準(zhǔn)化后得到的標(biāo)準(zhǔn)值,X
(i
)表示第i
個(gè)云服務(wù)用戶(hù)對(duì)云服務(wù)方案的評(píng)分均值。將標(biāo)準(zhǔn)值Y
表示為一個(gè)數(shù)列,則待估數(shù)列和比較數(shù)列分別如式(5)和式(6)所示:Y
(k
)和Y
(k
)都是所對(duì)應(yīng)數(shù)列的第k
個(gè)元素的值,則待估數(shù)列和比較數(shù)列的灰色關(guān)聯(lián)系數(shù)表示為:R
=(r
),則云服務(wù)用戶(hù)間所對(duì)應(yīng)的灰色關(guān)聯(lián)度為:U
的近鄰集,預(yù)測(cè)用戶(hù)U
對(duì)云服務(wù)F
的評(píng)分,計(jì)算公式如下:通過(guò)灰色關(guān)聯(lián)度預(yù)測(cè)法對(duì)空缺數(shù)據(jù)進(jìn)行彌補(bǔ)后得到完整的云服務(wù)評(píng)分?jǐn)?shù)據(jù)。為提高算法執(zhí)行速度,采用均值漂移算法MeanShift將云服務(wù)用戶(hù)進(jìn)行聚類(lèi),之后在計(jì)算目標(biāo)用戶(hù)的相關(guān)數(shù)據(jù)時(shí)只考慮目標(biāo)用戶(hù)所在類(lèi)簇中云服務(wù)用戶(hù)的數(shù)據(jù)即可。在推薦云服務(wù)過(guò)程中,一方面存在用戶(hù)主觀信任的模糊性,另一方面用戶(hù)的偏好不一可能導(dǎo)致打分過(guò)高或者過(guò)低。本文綜合考慮基于信任云的用戶(hù)相似度和用戶(hù)興趣特征相似度來(lái)保證推薦結(jié)果的準(zhǔn)確性。
M
(X
)計(jì)算公式如下:X
表示空間中的數(shù)據(jù)點(diǎn),S
表示半徑為h
的球狀領(lǐng)域,在這m
個(gè)數(shù)據(jù)點(diǎn)X
中有K
個(gè)點(diǎn)落入S
區(qū)域中,數(shù)據(jù)點(diǎn)X
位于S
領(lǐng)域的中心位置。Fig.2 Mean Shift algorithm clustering process圖2 Mean Shift算法聚類(lèi)過(guò)程
均值漂移算法Mean Shift聚類(lèi)過(guò)程及迭代過(guò)程如圖2所示。
Mean Shift聚類(lèi)算法如下:
輸入:數(shù)據(jù)集N,球狀領(lǐng)域半徑h。
輸出:K個(gè)聚類(lèi)中心,樣本點(diǎn)所屬類(lèi)簇。
(1)隨機(jī)選擇一個(gè)沒(méi)有被分類(lèi)的點(diǎn)作為初始質(zhì)心點(diǎn)X
。(2)標(biāo)定以X
為中心半徑為h
的球狀領(lǐng)域中的點(diǎn)X
屬于類(lèi)簇C,并且更新這些點(diǎn)在該類(lèi)簇中出現(xiàn)的累計(jì)頻數(shù)加1。(3)根據(jù)式(11)求漂移向量M
(X
)。(6)重復(fù)步驟(1)、(2)、(3)、(4)(5)直到所有的點(diǎn)都被分類(lèi)。
(7)獲取每個(gè)點(diǎn)在各個(gè)類(lèi)簇中出現(xiàn)的累計(jì)頻數(shù),將累計(jì)頻數(shù)最大的點(diǎn)劃分到對(duì)應(yīng)類(lèi)簇中。如果迭代收斂時(shí)有兩個(gè)類(lèi)簇的質(zhì)心距離小于h,就將它們合并成一個(gè)類(lèi)簇,并且類(lèi)簇內(nèi)點(diǎn)的累計(jì)頻數(shù)也進(jìn)行合并。否則,把他們看作不同的類(lèi)簇。
聚類(lèi)算法Mean Shift可以自動(dòng)遍歷每個(gè)用戶(hù),并記錄每個(gè)用戶(hù)在各個(gè)類(lèi)簇中出現(xiàn)的累計(jì)頻數(shù),依據(jù)累計(jì)頻數(shù)最大原則將用戶(hù)分類(lèi)。據(jù)此,可以找到目標(biāo)用戶(hù)所屬類(lèi)簇,以及獲取類(lèi)簇中所有用戶(hù)的數(shù)據(jù)。后續(xù)在尋找近鄰集并為目標(biāo)用戶(hù)推薦云服務(wù)時(shí)可以摒棄冗余信息,只考慮目標(biāo)用戶(hù)所屬類(lèi)簇的數(shù)據(jù)即可,從而有效提高推薦效率。
推薦信任和直接信任是信任關(guān)系的重要組成部分,不論哪一種都存在著主觀性和不確定性,但可以依據(jù)經(jīng)驗(yàn)將其拆成多個(gè)信任等級(jí)。因?yàn)檎蛟剖且环N將定性概念轉(zhuǎn)化為定量描述的模型,所以本文考慮通過(guò)正向云將用戶(hù)對(duì)云服務(wù)的評(píng)分轉(zhuǎn)換成云滴,進(jìn)而生成信任云。正向云、信任云、信任等級(jí)劃分以及信任云匹配的定義如下:
定義2
信任云是通過(guò)正向云將定性概念轉(zhuǎn)化成云滴,將信任度空間T
=[0,1]表示為云的定量論域,x
∈T
是定性概念上的定量信任評(píng)價(jià),也是對(duì)應(yīng)隸屬度μ
(x
)約束的隨機(jī)數(shù)。信任云的定性概念可以用C
(E
,E
,He
)表示,其中E
是信任云的期望,E
是信任云的熵,反映了云滴的離散程度,He
是超熵,描述了信任云的厚度。定義3
信任度空間是由信任等級(jí)組合而成,根據(jù)專(zhuān)家經(jīng)驗(yàn)和問(wèn)卷調(diào)查可以將信任度空間設(shè)置成如下模型:θ
,其中信任依賴(lài)度θ
用信任等級(jí)區(qū)間的平均值表示。Fig.3 Trust cloud matching圖3 信任云匹配
計(jì)算某云服務(wù)用戶(hù)的信任云相似度時(shí),首先計(jì)算它與其它用戶(hù)的信任云相似度,然后求取均值并將其作為該云服務(wù)用戶(hù)的最終相似度,記為φ
。而φ
所在f
(x
)中區(qū)間的均值即為該區(qū)間信任度的權(quán)重即信任依賴(lài)度θ
。如果只考慮信任云,推薦結(jié)果會(huì)受主觀因素的干擾而與實(shí)際不符。為了提高算法質(zhì)量,還要將用戶(hù)興趣納入模型中。根據(jù)專(zhuān)家意見(jiàn),確定云服務(wù)用戶(hù)興趣程度以及相應(yīng)權(quán)重,其結(jié)果如表1所示。
Table1 Interest similarity weight表1 興趣相似度權(quán)重
本文將云服務(wù)用戶(hù)興趣特征用T
={T
,T
,T
,...,T
}表示,其中T
,k
=1,2,3,...,q
表示第k
個(gè)興趣特征;云服務(wù)用戶(hù)用U
={U
,U
,U
,...,U
}表示,其中U
,t
=1,2,3,...,p
表示第t
個(gè)用戶(hù),U
,s
=1,2,3,...,p
表示第s
個(gè)用戶(hù);U
和U
對(duì)興趣特征的評(píng)分分別用r
和r
表示。由于不同用戶(hù)的評(píng)分標(biāo)準(zhǔn)不同,因此本文采用修正的余弦相似度公式來(lái)計(jì)算用戶(hù)的興趣特征相似度:φ
與云服務(wù)用戶(hù)興趣相似度sim
(U
,U
)加權(quán)求和,得到綜合相似度,并采用top-N算法將近鄰用戶(hù)相應(yīng)的云服務(wù)方案進(jìn)行推薦。綜合相似度計(jì)算公式如下:
w
是興趣相似度權(quán)重,θ
是信任依賴(lài)度。近年云服務(wù)行業(yè)發(fā)展迅猛,云服務(wù)的功能愈加完善,種類(lèi)也逐漸增多,呈現(xiàn)出多元化趨勢(shì),為用戶(hù)提供了更多選擇,但還存在一些問(wèn)題,這些問(wèn)題不僅損壞用戶(hù)利益,還對(duì)云服務(wù)提供商的利益產(chǎn)生一定影響。
某云服務(wù)提供商為提高其競(jìng)爭(zhēng)力,希望迅速地為用戶(hù)推薦滿(mǎn)足其自身需求的云服務(wù)方案。通過(guò)收集以往企業(yè)用戶(hù)購(gòu)買(mǎi)的云服務(wù)信息,本文隨機(jī)選取20個(gè)企業(yè)用戶(hù)U
={U
,U
,…,U
}以及相應(yīng)的云服務(wù):F
、F
、F
、F
、F
、F
、F
;用戶(hù)對(duì)云服務(wù)的興趣特征包括以下5種:可靠性(T
)、靈活性(T
)、性能(T
)、價(jià)格(T
)、安全性(T
)。表2是這20個(gè)用戶(hù)對(duì)云服務(wù)的評(píng)價(jià),其中分值1~6代表用戶(hù)對(duì)方案的滿(mǎn)意程度,分別為非常不滿(mǎn)意、不滿(mǎn)意、一般、還行、滿(mǎn)意、非常滿(mǎn)意。使用本文算法將適合的云服務(wù)推薦給用戶(hù)還需要將用戶(hù)與興趣特征建立聯(lián)系。將云服務(wù)特征進(jìn)行量化,如表3所示。表4是云服務(wù)用戶(hù)對(duì)興趣特征的需求數(shù)據(jù),其中U
是新用戶(hù)。采用灰色關(guān)聯(lián)預(yù)測(cè),填充表2和表4。首先采用式(3)、式(4)將數(shù)據(jù)標(biāo)準(zhǔn)化處理,然后采用式(7)、式(8)分別計(jì)算參考用戶(hù)與比較用戶(hù)的關(guān)聯(lián)度,最后結(jié)合預(yù)測(cè)公式將表2和表4的空缺數(shù)據(jù)填充。如表2中用戶(hù)U
對(duì)F
的評(píng)分采用式(7)計(jì)算相關(guān)系數(shù),其中ρ
取值為0.5,得出U
與U
的灰色關(guān)聯(lián)系數(shù)ζ
=0.491,0.977,0.663,0.723,0.796,0.810,根據(jù)式(8)得到關(guān)聯(lián)度γ
≈0.743。同理,U
與U
、
U
、U
、
…、U
的灰色關(guān)聯(lián)度依次為0.773、0.544、0.741、0.660、0.750、0.645、0.790、0.703、0.660、0.568、0.614、0.598、0.628、0.557、0.582、0.447、0.606、0.483。因此,選擇U
與U
灰色關(guān)聯(lián)度,然后由預(yù)測(cè)公式得出預(yù)測(cè)的分值,pred
(U
,F
)≈5.371;同理,U
對(duì)F
的預(yù)測(cè)評(píng)分通過(guò)式(7)和式(8)得出U
和U
的關(guān)聯(lián)度最大,為0.786,預(yù)測(cè)值pred
(U
,F
)≈1.642。表2填充后的結(jié)果如表5所示。Table 2 Users'ratings of cloud services表2 用戶(hù)對(duì)云服務(wù)的評(píng)分
Table3 Cloud service characteristics and quantified scores表3 云服務(wù)特征及量化分值
Table4 User's requirements for interest characteristics表4 用戶(hù)對(duì)興趣特征的需求
Table5 User'srating of cloud services(filled)表5 用戶(hù)對(duì)云服務(wù)的評(píng)分(已填充)
表4的填充方式也是采用式(7)、式(8)和式(10)進(jìn)行計(jì)算,得到U
與U
的灰色關(guān)聯(lián)度最大,為0.789,預(yù)測(cè)值pred
(U
,T
)≈2.947;同理,U
與U
的灰色關(guān)聯(lián)度最大,為0.8,預(yù)測(cè)值pred
(U
,T
)≈1.250。表4填充后的結(jié)果如表6所示。接著,使用MeanShift算法將表6中的用戶(hù)進(jìn)行聚類(lèi),得到圖4,可知新用戶(hù)U
和用戶(hù)U
、U
、U
、U
、U
、U
、U
屬于同一類(lèi)簇。因此,在為新用戶(hù)U
推薦云服務(wù)時(shí),只需關(guān)注與其同類(lèi)簇的用戶(hù)數(shù)據(jù)。根據(jù)專(zhuān)家經(jīng)驗(yàn)和問(wèn)卷方式建立信任云,本文將用戶(hù)U
、U
、U
、U
、U
、U
、U
的信任云進(jìn)行相互匹配,得出各用戶(hù)的最終相似度φ
,φ
值決定了信任依賴(lài)度θ
的大小和所在區(qū)間。將表5中的數(shù)據(jù)縮小10倍,通過(guò)正向云發(fā)生器和信任云匹配,求出用戶(hù)信任云的相似度,其結(jié)果如表7所示。方案信任云和用戶(hù)的評(píng)分存在一定的主觀性,為了解決這一問(wèn)題以及冷啟動(dòng)問(wèn)題,本文引入了用戶(hù)興趣特征需求,將舊用戶(hù)U
、U
、U
、U
、U
、U
、U
與新用戶(hù)U
的興趣特征進(jìn)行匹配,可以得到興趣特征相似度sim
,然后將其與表7中的信任云相似度加權(quán)求和,得出綜合相似度sim’
并依此進(jìn)行云服務(wù)方案推薦。其中權(quán)重w
的值參考表1,新用戶(hù)U
與同類(lèi)簇中其他用戶(hù)的綜合相似度如表8所示。Table6 User'sre quire ments for interest characteristics(filled)表6 用戶(hù)對(duì)興趣特征的需求(已填充)
Fig.4 Clustering results圖4 聚類(lèi)結(jié)果
Table 7 Trust cloud eigenvalues表7 信任云特征值
由表8可知,新用戶(hù)U
與同類(lèi)簇中其他用戶(hù)的綜合相似度,將其由大到小排列后得到與U
近鄰的用戶(hù)依次是U
、U
、U
、U
、U
、U
、U
,其中新用戶(hù)U
明顯與U
、U
、U
、U
的相似度高,因此采用top-N算法,將用戶(hù)U
、U
、U
、U
對(duì)應(yīng)的云服務(wù)方案給予推薦。Table8 Comprehen sive similarity表8 綜合相似度
為了驗(yàn)證本文算法的合理性,以數(shù)據(jù)庫(kù)中50~500個(gè)等量樣本數(shù)據(jù)作為訓(xùn)練集,既考慮算法的執(zhí)行時(shí)間又考慮算法的推薦精度,將本文算法與信任云推薦算法、信任云混合推薦算法、基于灰色關(guān)聯(lián)與信任云混合算法的推薦方法進(jìn)行比較分析,結(jié)果如圖5-圖7所示。
采用平均絕對(duì)誤差(Mean Absolute Error,MAE)和均方根誤差(Root Mean Square Error,RMSE)作為精確度評(píng)測(cè)指標(biāo)來(lái)分析本文算法的推薦效果,MAE和RMSE越小表示推薦算法的精確度越高。
Fig.5 MAE value changing carve圖5 MAE值變化曲線(xiàn)
如圖5和圖6所示,從整體上看,信任云混合推薦算法、基于灰色關(guān)聯(lián)與信任云混合算法的推薦方法與本文算法的精確度較為接近,但本文算法的MAE和RMSE值最低,精確度最高?;诨疑P(guān)聯(lián)與信任云混合算法的推薦方法僅次于本文算法,而數(shù)據(jù)的缺失會(huì)對(duì)推薦精度造成一定的影響,所以信任云混合推薦算法精確度較低。信任云推薦算法的精確度最低是因?yàn)閿?shù)據(jù)的稀疏性和用戶(hù)興趣不一所致。
Fig.6 Variation carve of RMSE value圖6 RMSE值變化曲線(xiàn)
從圖7可以看出,隨著數(shù)據(jù)量的增多,算法的執(zhí)行時(shí)間也在逐漸增加,但本文算法的執(zhí)行時(shí)間呈平穩(wěn)、緩慢上升趨勢(shì)。而信任云推薦算法、信任云混合推薦算法、基于灰色關(guān)聯(lián)與信任云混合算法的推薦方法執(zhí)行時(shí)間增長(zhǎng)較快,呈急劇增長(zhǎng)趨勢(shì)。當(dāng)訓(xùn)練集數(shù)據(jù)量超過(guò)200時(shí),本文算法的高效率優(yōu)勢(shì)逐漸突顯出來(lái),并且隨著數(shù)據(jù)量的增多,本文算法的優(yōu)勢(shì)愈加明顯,執(zhí)行效率越來(lái)越高。
Fig.7 Efficiency comparison diagram圖7 效率比較
綜上所述,本文算法在保證一定精確度的基礎(chǔ)上大大提高了推薦效率,并且隨著數(shù)據(jù)量的增加,本文算法的高效率優(yōu)勢(shì)更加突出。因此,本文算法適用于大數(shù)據(jù)推薦系統(tǒng)。
云服務(wù)擁有諸多優(yōu)點(diǎn),如降低企業(yè)經(jīng)營(yíng)成本、提高工作效率和保障數(shù)據(jù)安全等,受到越來(lái)越多的企業(yè)和個(gè)人青睞。在云服務(wù)提供商為目標(biāo)用戶(hù)科學(xué)高效地推薦云服務(wù)過(guò)程中,推薦方法尤為重要。現(xiàn)有云服務(wù)推薦方法注重如何提高推薦精度而忽略了推薦效率低下的問(wèn)題。本文提出基于MeanShift的云服務(wù)推薦,在灰色關(guān)聯(lián)預(yù)測(cè)和信任云混合算法基礎(chǔ)上融入了聚類(lèi)算法Mean Shift。首先采用Mean Shift算法將灰色關(guān)聯(lián)預(yù)測(cè)填充后的數(shù)據(jù)進(jìn)行聚類(lèi),然后計(jì)算類(lèi)簇內(nèi)目標(biāo)用戶(hù)與其他用戶(hù)間興趣特征相似度與信任相似度,加權(quán)得到綜合相似度,并采用top-N算法將近鄰用戶(hù)的云服務(wù)方案予以推薦。最后在不同數(shù)據(jù)量下將本文算法和其他算法比較執(zhí)行時(shí)間。實(shí)驗(yàn)結(jié)果表明,本文算法不僅保證了一定的推薦精度,還有效提高了推薦效率,并且數(shù)據(jù)量越大優(yōu)勢(shì)越明顯。但是,本文信任云匹配過(guò)程較為繁瑣,因此后續(xù)將對(duì)信任云匹配進(jìn)行優(yōu)化研究。