曹婧華,孔繁森,冉彥中
(1.吉林大學(xué) 機(jī)械與工程學(xué)院,長春130022; 2.吉林大學(xué) 計(jì)算機(jī)公共教學(xué)與研究中心,長春130012)
隨著面向服務(wù)的架構(gòu)(SOA)、軟件即服務(wù)(SaaS)、云計(jì)算等新的軟件架構(gòu)思想和理念的不斷發(fā)展,服務(wù)作為一種新的軟件資產(chǎn)正逐步興起。網(wǎng)絡(luò)上滿足相同功能屬性而非功能屬性不同的候選服務(wù)日益增多,服務(wù)質(zhì)量(Quality of service,QoS)逐漸成為服務(wù)消費(fèi)者(用戶)進(jìn)行服務(wù)選擇的重要依據(jù)。在實(shí)際應(yīng)用中,由于Internet的不可預(yù)測性和用戶環(huán)境的差異性,導(dǎo)致不同用戶體驗(yàn)到的QoS值往往存在較大差異[1]。因此,研究如何根據(jù)用戶偏好對服務(wù)進(jìn)行個性化推薦成為亟需解決的關(guān)鍵問題。
協(xié)同過濾作為推薦系統(tǒng)中最成功也最有影響力的一種技術(shù),近年來被廣泛應(yīng)用于服務(wù)推薦過程。基于協(xié)同過濾的服務(wù)推薦方法使用QoS值來代表用戶對服務(wù)的偏好,將推薦任務(wù)轉(zhuǎn)化為預(yù)測用戶-服務(wù)QoS矩陣的缺失值,進(jìn)而根據(jù)預(yù)測的QoS值對未知服務(wù)進(jìn)行排序,最后按照排序結(jié)果產(chǎn)生推薦列表。基于QoS預(yù)測的服務(wù)推薦方法存在以下問題:由于將均方誤差(MSE)作為評價指標(biāo),系統(tǒng)以高準(zhǔn)確度的QoS預(yù)測值為目標(biāo),生成的推薦結(jié)果不能準(zhǔn)確地體現(xiàn)用戶偏好。如果QoS預(yù)測值僅僅被用來產(chǎn)生推薦列表,那么預(yù)測值的準(zhǔn)確度就顯得不那么重要了,而QoS的正確排序才是解決問題的關(guān)鍵所在。
目前,研究者們提出將排序?qū)W習(xí)技術(shù)融合進(jìn)推薦算法中[2],依據(jù)學(xué)習(xí)到的項(xiàng)目排序模型來生成推薦列表,這種方法也稱為協(xié)同排序[3]。協(xié)同排序直接使用排序評價指標(biāo)作為推薦系統(tǒng)的優(yōu)化目標(biāo),能夠更加貼近用戶偏好,提高推薦的用戶滿意度。按照學(xué)習(xí)樣例的不同,協(xié)同排序一般可分為3類:點(diǎn)級(pointwise)、對級(pairwise)、列表級(listwise)。點(diǎn)級方法為每個項(xiàng)目計(jì)算一個排序分?jǐn)?shù),類似于基于評分預(yù)測的方法;對級方法通過預(yù)測每對項(xiàng)目的相對順序,得到最終排序,其計(jì)算復(fù)雜度相對較高;列表級方法以整個項(xiàng)目的排序?yàn)檩斎耄婵紤]不同項(xiàng)目的序列關(guān)系,被認(rèn)為是最有發(fā)展?jié)摿Φ膮f(xié)同排序方法。
基于上述問題,本文提出了一種用于服務(wù)推薦的QoS成列協(xié)同排序算法。首先建立矩陣因式分解模型,用以描述用戶和服務(wù)的隱含特征信息,并選用計(jì)算復(fù)雜度較低的列表級損失函數(shù)作為矩陣分解模型的優(yōu)化目標(biāo)。同時,通過序列相似度挖掘用戶間的近鄰信息來進(jìn)一步提高QoS排序的準(zhǔn)確性。由于算法綜合利用了協(xié)同過濾和列表級排序的優(yōu)勢,可以更好地實(shí)現(xiàn)基于用戶偏好的個性化服務(wù)推薦。
根據(jù)所使用的方法或技術(shù)不同,協(xié)同過濾用于服務(wù)推薦的方法主要分為2類:基于內(nèi)存的方法和基于模型的方法。
基于內(nèi)存的方法根據(jù)相似用戶或服務(wù)間的QoS歷史記錄進(jìn)行預(yù)測。文獻(xiàn)[4]提出了一種基于歐幾里得距離的用戶相似度計(jì)算方法,并依據(jù)相似用戶之間的歷史信息對目標(biāo)用戶進(jìn)行個性化的QoS預(yù)測。Zheng等[5]提出了一種基于用戶和基于服務(wù)的混合協(xié)同過濾QoS預(yù)測方法WSRec,使得QoS矩陣中的近鄰信息得到更充分利用。文獻(xiàn)[6]提出將用戶和服務(wù)按自身特性和區(qū)域信息進(jìn)行分類,然后對不同類別用戶和服務(wù)進(jìn)行更復(fù)雜的混合協(xié)同過濾QoS預(yù)測。文獻(xiàn)[7]依據(jù)“預(yù)測得到的QoS值不會改變兩個用戶或服務(wù)的相似度”的假設(shè),對傳統(tǒng)協(xié)同過濾的預(yù)測方法進(jìn)行了全新設(shè)計(jì)。文獻(xiàn)[8]針對傳統(tǒng)相似度計(jì)算方法(PCC或余弦相似度)的缺陷,通過對QoS矩陣行(列)向量進(jìn)行正規(guī)化,然后再進(jìn)行相似度計(jì)算,實(shí)現(xiàn)了一種基于正規(guī)化相似度的協(xié)同過濾方法NRCF。
基于模型的方法認(rèn)為QoS值由用戶和服務(wù)的隱含特征共同決定,通過建立合理的模型來進(jìn)行QoS預(yù)測。Zheng等[9]利用矩陣因式分解模型建立起用戶和服務(wù)的隱含特征矩陣,并通過挖掘用戶的近鄰信息來進(jìn)一步優(yōu)化預(yù)測模型,從而實(shí)現(xiàn)對未知QoS值的合理預(yù)測。文獻(xiàn)[10]提出了一種結(jié)合近鄰信息的非負(fù)矩陣分解算法,將QoS預(yù)測問題轉(zhuǎn)化為稀疏QoS矩陣下的模型參數(shù)期望最大化估計(jì)問題。文獻(xiàn)[11]考慮QoS信息在時間上的變化,將QoS信息擴(kuò)充為用戶-服務(wù)-時間三維張量,并提出利用非負(fù)張量分解模型對問題進(jìn)行求解。
上述方法都以QoS值的準(zhǔn)確預(yù)測為目標(biāo),與QoS正確排序的服務(wù)推薦目標(biāo)存在偏差。例如,假設(shè)用戶u1對服務(wù)s1、s2和s3的真實(shí)QoS值分別為(2,3,5),使用兩種不同的協(xié)同過濾算法進(jìn)行預(yù)測得到兩個結(jié)果:前者為(3,2,4),后者為(1,2,3)。雖然前者的MSE小于后者的MSE,然而從排序的角度來說,后者預(yù)測得到了正確排序,因此要優(yōu)于前者。
文獻(xiàn)[12]意識到上述問題,提出了兩種啟發(fā)式的QoS排序預(yù)測算法CloudRank1和CloudRank2。利用相似用戶的偏好信息計(jì)算每對服務(wù)的相對偏好度,然后對服務(wù)的偏好度進(jìn)行累計(jì),最后根據(jù)累計(jì)偏好度大小對所有服務(wù)進(jìn)行排序,同時考慮已知QoS信息的服務(wù)在序列中的正確位置。該方法雖然在一定程度上解決了QoS排序預(yù)測問題,但是其需要計(jì)算每個用戶的每對服務(wù)之間的相對偏好度,計(jì)算復(fù)雜度高,是典型的對級排序方法。
本文將利用列表級協(xié)同排序方法解決服務(wù)推薦問題,利用成列損失函數(shù)優(yōu)化矩陣因式分解模型,并挖掘序列相似用戶間的近鄰信息,提高QoS排序的效率和準(zhǔn)確性。
QoS為描述服務(wù)質(zhì)量的一系列非功能屬性集合,通常包括響應(yīng)時間、吞吐量等,假設(shè)用戶集合為U={u1,u2,…,un},服務(wù)集合為S={s1,s2,…,sm},QoS屬性個數(shù)為q,則QoS信息可以用一個n×m的用戶-服務(wù)QoS矩陣R表示,其中Rij={r1,r2,…,rq},表示用戶ui調(diào)用服務(wù)sj時的QoS信息。在實(shí)際應(yīng)用中,QoS矩陣R中含有大量的缺失項(xiàng),服務(wù)推薦的目標(biāo)就是利用已有的QoS信息,對目標(biāo)用戶的未知QoS服務(wù)進(jìn)行個性化推薦。與大多數(shù)研究工作一樣,本文將只考慮單個QoS屬性組成的QoS矩陣,對多個QoS屬性進(jìn)行聯(lián)合服務(wù)推薦將作為下一步研究重點(diǎn)。
矩陣分解模型認(rèn)為QoS矩陣由少量的用戶(服務(wù))隱含特征決定,通過找到兩個低維行滿秩矩陣U和V(其中U為d×n矩陣,V為d×m矩陣,d為隱含特征因子的個數(shù),且遠(yuǎn)小于n和m),矩陣U的每一列相當(dāng)于用戶對于特征因子的特征向量,矩陣V的每一列相當(dāng)于服務(wù)對于特征因子的權(quán)重。利用矩陣乘積X=UTV對QoS矩陣R進(jìn)行擬合,則R中的缺失項(xiàng)就可以用X中對應(yīng)位置的值進(jìn)行預(yù)測,進(jìn)而進(jìn)行排序推薦。
上述問題中的矩陣U和V可以通過下式進(jìn)行優(yōu)化得到[13]:
(1)
式中:Iij為指示函數(shù),當(dāng)Rij不為空時,Iij=1;其他情況下為0;‖·‖F(xiàn)表示矩陣的F范數(shù);λU和λV是為了防止過擬合而設(shè)置的正則化系數(shù),為了簡便起見,設(shè)置λU=λV=λ。
可以看出,式(1)中的損失函數(shù)為使用矩陣分解模型得到的QoS預(yù)測值與真實(shí)QoS值之間的均方誤差,是以預(yù)測值的準(zhǔn)確度為目標(biāo)的,與服務(wù)推薦的QoS正確排序不符。因此,本文選用文獻(xiàn)[14]中的成列損失函數(shù)作為矩陣分解模型的優(yōu)化目標(biāo)。
文獻(xiàn)[14]首先定義了一種稱為TOP(Top one probability)的概率模型,表示一個服務(wù)在所有服務(wù)中QoS值排序第一的概率。具體而言,QoS值為Rij的服務(wù)sj在用戶ui的服務(wù)排序中的TOP概率定義為:
(2)
式中:φ(x)為任意嚴(yán)格單調(diào)遞增正函數(shù),如文獻(xiàn)[14]中選用的指數(shù)函數(shù)exp(x)。
假設(shè)存在兩種服務(wù)的排序y和z,在得到所有服務(wù)對于目標(biāo)用戶ui的TOP概率之后,就可以利用兩個概率分布之間的距離測度定義損失函數(shù),如文獻(xiàn)[14]中的互熵:

(3)
將式(3)引入到式(1)中,得到基于成列損失函數(shù)的矩陣分解模型:
(4)
從式(4)中可以看出,通過將成列損失函數(shù)引入到矩陣因式分解模型,不僅可以直接對QoS排序進(jìn)行優(yōu)化,而且相比點(diǎn)級和對級方法計(jì)算效率更高。
矩陣因式分解模型難以利用相似用戶(服務(wù))間的有效排序信息,為了進(jìn)一步提高QoS排序的準(zhǔn)確性,本文提出將相似用戶的排序偏好信息整合進(jìn)協(xié)同排序過程中,詳細(xì)步驟如下。
傳統(tǒng)基于向量的相似度計(jì)算方法(PCC和余弦相似度)無法準(zhǔn)確測度兩個序列間的相似度,因此本文利用KRCC相關(guān)系數(shù)[12]計(jì)算兩個用戶u,v在QoS排序偏好上的相似度:
(5)
式中:N為用戶u,v共同調(diào)用過的服務(wù)個數(shù);C為其中排序一致的服務(wù)對個數(shù);D為其中排序不一致的服務(wù)對個數(shù)。
可以看出,KRCC相關(guān)系數(shù)的取值為[-1,1],當(dāng)兩個序列的順序完全一致時,取值為1;當(dāng)兩個序列的順序完全顛倒時,取值為-1。且N必須滿足N≥2。
根據(jù)式(5)計(jì)算得到目標(biāo)用戶u與其他所有用戶的相似度后,選擇其中KRCC系數(shù)大于0且相似度最大的TOP-k個用戶組成目標(biāo)用戶的相似用戶集:
N(u)={v|v∈Tu,sim(u,v)>0,v≠u}
(6)
式中:Tu為與目標(biāo)用戶相似度u最大的TOP-k個用戶。
目標(biāo)用戶u的QoS偏好應(yīng)與相似用戶集N(u)的QoS值相似,表現(xiàn)為在矩陣因式分解模型中,最終預(yù)測值為當(dāng)前預(yù)測值與相似用戶預(yù)測值的加權(quán)和:
(7)
式中:α(0<α<1)為平衡因子,wik為相似用戶k在相似用戶集N(i)中占的比重:
(8)
將式(7)整合進(jìn)式(4)中,得到結(jié)合近鄰信息的QoS成列協(xié)同排序模型(見式9)。目標(biāo)函數(shù)(9)可以通過梯度下降算法來求得最優(yōu)的用戶和服務(wù)隱含特征矩陣U和V(見式(10)和式(11)):
(9)
(10)
(11)
式中:B(i)表示將用戶i作為近鄰用戶的用戶集。
將本文提出的結(jié)合近鄰信息的QoS成列協(xié)同排序算法命名為NILMF(neighborhood integrated list matrix factorization)。NILMF算法的偽代碼如算法1所示。
算法1(NILMF算法)
輸出:完整QoS矩陣R
1 初始化U←Rand(d,n),V←Rand(d,m)
2 For (i=1;i≤n;i++)
3 根據(jù)式(5)計(jì)算其他用戶與用戶i的相似度
4 根據(jù)式(6)得到用戶i的近鄰用戶集N(i)
5endFor
6L0(U,V)=0
7For(t=1;t≤tmax;t++)
8If((Lt(U,V)-Lt-1(U,V))≤ε)then
9break
10else
11 根據(jù)式(10)和式(11)計(jì)算當(dāng)前的梯度
12For(i=1;i≤n;i++)
14endFor
15 For (j=1;j≤m;j++)
17 end For
18 end f
19 根據(jù)式(9)計(jì)算當(dāng)前Lt(U,V)
20 end For
21 X←UTV
22 用X中元素值取代R中對應(yīng)的缺失項(xiàng)
23 output R
算法復(fù)雜度分析:損失函數(shù)的計(jì)算復(fù)雜度為O(Sd+SNd),其中S為稀疏QoS矩陣R中的已觀測項(xiàng),d為隱含特征因子的個數(shù),N為用戶的平均近鄰用戶個數(shù)。梯度的計(jì)算復(fù)雜度分別為O(Sd+SNd+SMd+SNMd)和O(Sd+ShNd),其中M為用戶作為近鄰用戶的平均次數(shù),h為用戶的平均已觀測項(xiàng)個數(shù)。因此,梯度下降一次迭代的計(jì)算復(fù)雜度為O(ShNd+SNMd),由于h,N,M遠(yuǎn)小于S,所以復(fù)雜度與QoS矩陣R中的已觀測項(xiàng)S成線性關(guān)系。
為了驗(yàn)證NILMF算法的有效性,利用Matlab實(shí)現(xiàn)了該算法。實(shí)驗(yàn)數(shù)據(jù)集采用真實(shí)的QoS數(shù)據(jù)集WS-DREAM[1],該數(shù)據(jù)集記錄了位于30個國家的339個用戶調(diào)用73個國家的5825個服務(wù)的QoS信息(包括響應(yīng)時間QoS矩陣和吞吐量QoS矩陣)。為了便于分析,在實(shí)驗(yàn)中與文獻(xiàn)[10]一樣,從數(shù)據(jù)集中分別獲取了300×3000的響應(yīng)時間QoS矩陣和吞吐量QoS矩陣。
采用協(xié)同排序中最常用的評價標(biāo)準(zhǔn)NDCG[2]作為本文的評價標(biāo)準(zhǔn)。對于目標(biāo)用戶u,給定所有服務(wù)的QoS正確排序和預(yù)測排序,則前k個排序的NDCG@k值計(jì)算如下:
(12)
式中:DCGk和IDCGk分別為預(yù)測排序和正確排序的前k個服務(wù)的DCG值,其計(jì)算公式如下:
(13)
式中:reli為排序?yàn)閕的服務(wù)的QoS值。可以看出,NDCGk取值范圍為[0, 1],值越大說明預(yù)測排序越接近正確排序。
為了驗(yàn)證NILMF算法的性能,與WSRec方法[5]、NIMF方法[9]、CloudRank1和CloudRank2方法[12]進(jìn)行對比。其中,WSRec和NIMF方法為傳統(tǒng)的基于QoS預(yù)測的推薦方法,CloudRank1和CloudRank2方法為啟發(fā)式的基于對級排序的推薦方法。各算法的參數(shù)均取其默認(rèn)值。
為了消除數(shù)據(jù)集的影響,將其分為5個不相關(guān)的300×600矩陣,每次實(shí)驗(yàn)分別對這5個QoS矩陣進(jìn)行排序預(yù)測,最后取5次實(shí)驗(yàn)的NDCG@10均值作為實(shí)驗(yàn)結(jié)果。為了模擬現(xiàn)實(shí)情況,在每次實(shí)驗(yàn)中都隨機(jī)移除矩陣中每行用戶的若干項(xiàng),即為每行用戶留下given number數(shù)的已知QoS數(shù)據(jù),得到不同given number下的QoS矩陣。在實(shí)驗(yàn)中,given number數(shù)以5為步長從5遞增到50,研究算法在不同given number下的性能。算法的目標(biāo)是根據(jù)這些已有的QoS信息對未知服務(wù)進(jìn)行推薦,同時利用移除項(xiàng)的原值對算法進(jìn)行評價。在沒有特別說明的情況下,算法參數(shù)為:特征因子個數(shù)d為10,正則化參數(shù)λ為0.001,平衡因子α為0.3,近鄰用戶個數(shù)k為10,學(xué)習(xí)速率δ為0.001,迭代次數(shù)tmax為100。
圖1和圖2分別給出了在不同given number下,各算法在響應(yīng)時間和吞吐量上進(jìn)行排序預(yù)測的NDCG@10值的變化曲線。

圖1 響應(yīng)時間數(shù)據(jù)集各算法實(shí)驗(yàn)結(jié)果Fig.1 The experiment results of each algorithm onresponse time dataset

圖2 吞吐量數(shù)據(jù)集各算法實(shí)驗(yàn)結(jié)果Fig.2 The experiment results of each algorithm onthroughput dataset
從圖1和圖2可以看出,隨著given number的增大,各算法的NDCG值都呈上升趨勢,即排序的準(zhǔn)確性越來越好。這是由于隨著given number的增多,可利用的QoS信息越來越豐富,越有利于各算法的近鄰信息或(和)隱含特征的挖掘。從圖1和圖2中還可以看出,由于NILMF算法綜合利用了矩陣分解和列表級排序及近鄰信息的優(yōu)勢,在響應(yīng)時間和吞吐量上的排序準(zhǔn)確度上普遍優(yōu)于其他方法;尤其當(dāng)given number較少時,優(yōu)勢更加明顯。WSRec方法在given number較少時,NDCG值呈現(xiàn)出較低值,這是由于WSRec方法根據(jù)用戶和服務(wù)進(jìn)行協(xié)同過濾,隨著可利用QoS信息的減少,不可避免地影響其排序的準(zhǔn)確度。
為了驗(yàn)證NILMF方法引進(jìn)近鄰信息以及利用KRCC系數(shù)計(jì)算用戶間排序相似度的正確性,將NILMF方法與沒有引進(jìn)近鄰信息的NILMF方法(記為LMF方法)、以及利用PCC系數(shù)計(jì)算用戶間相似度的NILMF方法(記為NILMFPCC)進(jìn)行對比。圖3和圖4分別給出了在不同given number下,三種算法在響應(yīng)時間和吞吐量上進(jìn)行排序預(yù)測的NDCG@10值的變化曲線。

圖4 吞吐量數(shù)據(jù)集近鄰信息實(shí)驗(yàn)結(jié)果Fig.4 The neighbor information experiment resultson throughput dataset
從圖3和圖4可以看出,NILMF方法優(yōu)于NILMFPCC方法,而NILMFPCC方法又優(yōu)于LMF方法。這是由于LMF方法僅通過建立隱含特征矩陣對排序進(jìn)行優(yōu)化,難以利用相似用戶(服務(wù))間的有效排序信息;而NILMFPCC方法計(jì)算用戶QoS向量之間的相關(guān)系數(shù),當(dāng)兩個向量強(qiáng)相關(guān)時,只能說明兩個向量越線性相關(guān);而NILMF方法中的KRCC系數(shù)計(jì)算的是兩個向量排序之間的相似度,更能準(zhǔn)確挖掘相似用戶間的排序信息,因此要優(yōu)于其他算法。
為了研究參數(shù)α對算法性能的影響,圖5和圖6分別給出了平衡因子α在不同取值下的響應(yīng)時間和吞吐量排序預(yù)測的NDCG@10曲線。其中,given number取值為100。

圖5 響應(yīng)時間數(shù)據(jù)集平衡因子實(shí)驗(yàn)結(jié)果Fig.5 The balance factor experiment results onresponse time dataset

圖6 吞吐量數(shù)據(jù)集平衡因子實(shí)驗(yàn)結(jié)果Fig.6 The balance factor experiment resultson throughput dataset
從圖5和圖6可以看出,當(dāng)α取值為0~1時,NDCG值要大于α取值為0或1時的NDCG值,當(dāng)α逐漸增大時,NDCG值首先呈上升趨勢,當(dāng)α超過某個特定閾值時,NDCG值又呈現(xiàn)出下降趨勢,這從另一個方面又說明NILMF同時引入成列排序損失函數(shù)和近鄰用戶間有效排序信息的合理性。從圖中還可以看出,當(dāng)α取值為0.3時,NDCG取得最大值。這也是本文設(shè)置α默認(rèn)為0.3的原因。
由于篇幅的原因,其他參數(shù)(如特征因子個數(shù)、最近鄰用戶個數(shù))對算法性能的影響,在此不再贅述。
(1)針對傳統(tǒng)基于QoS預(yù)測的服務(wù)推薦方法不能準(zhǔn)確體現(xiàn)用戶偏好的問題,提出了一種基于協(xié)同排序的服務(wù)推薦算法NILMF。將成列損失函數(shù)引入矩陣因式分解模型,綜合利用矩陣分解模型和列表級排序的優(yōu)勢,實(shí)現(xiàn)了更貼近用戶偏好的服務(wù)推薦。
(2)為了進(jìn)一步挖掘相似用戶間的QoS偏好,利用排序相似度KRCC計(jì)算得到用戶的相似用戶集,并將近鄰用戶的QoS偏好信息整合進(jìn)列表級矩陣分解模型中,能夠進(jìn)一步提高QoS排序的準(zhǔn)確性。
(3)在真實(shí)QoS數(shù)據(jù)集上的大量實(shí)驗(yàn)表明,相比于傳統(tǒng)的基于QoS預(yù)測的方法和啟發(fā)式的成對排序方法,NILMF算法的排序評價指標(biāo)更好。實(shí)驗(yàn)同時還分析了不同參數(shù)對算法的影響。
[1] Zheng Z, Zhang Y,Lyu M R. Investigating QoS of real-world Web services[J]. 2014, 7(1):32-39.
[2] 黃震華, 張佳雯, 田春岐,等. 基于排序?qū)W習(xí)的推薦算法研究綜述[J]. 軟件學(xué)報(bào), 2016, 27(3):691-713.
Huang Zhen-hua,Zhang Jia-wen,Tian Chun-qi.Survey on learning to rank based on recommendition alogorithms [J].Journal of software,2016,27(3):691-713.
[3] Balakrishnan S,Chopra S. Collaborative ranking[C]∥ ACM International Conference on Web Search and Data Mining,ACM, 2012:143-152.
[4] 邵凌霜, 周立, 趙俊峰,等. 一種Web Service的服務(wù)質(zhì)量預(yù)測方法[J]. 軟件學(xué)報(bào), 2009, 20(8):2062-2073.
Shao Ling-shuang,Zhou Li,Zhao Jun-feng,el al.Web service QoS prediction.approach[J].Journal of Software,2009,20(8):2062-2073.
[5] Zheng Z, Ma H, Lyu M R, et al. QoS-aware web service recommendation by collaborative filtering[J]. IEEE Transactions on Services Computing, 2011, 4(2):140-152.
[6] 俞東進(jìn), 殷昱煜, 吳萌萌,等. 基于混合協(xié)同過濾的Web服務(wù)QoS預(yù)測方法[J]. 浙江大學(xué)學(xué)報(bào):工學(xué)版, 2014, 48(11):2039-2045.
Yu Dong-jin,Yin Yu-yu,Wu Meng-meng,et al.QoS prediction for Web services based on hybrid collaborative filtering[J].Journal of Zhe jiang University(Engineering Science),2014,48(11):2039-2045.
[7] Ma Y, Wang S, Hung P C K, et al. A highly accurate prediction algorithm for unknown Web service QoS values[J]. IEEE Transactions on Services Computing, 2017, 9(4):511-523.
[8] Zheng Z, Chen J,Lyu M R. Personalized Web service recommendation via normal recovery collaborative filtering[J]. IEEE Transactions on Services Computing, 2013, 6(4):573-579.
[9] Zheng Z, Ma H,Lyu M R, et al. Collaborative Web service QoS prediction via neighborhood integrated matrix factorization[J]. IEEE Transactions on Services Computing, 2013, 6(3):289-299.
[10] 蘇凱, 馬良荔, 孫煜飛,等. 面向Web服務(wù)QoS預(yù)測的非負(fù)矩陣分解模型[J]. 浙江大學(xué)學(xué)報(bào):工學(xué)版, 2015, 49(7):1358-1366.
Su Kai,Ma Liang-li,Sun Yu-fei,et al.Non-negative matrix factorization model for Web service QoS prediction[J],Journal of Zhejiang University (Engineering Science),2015,49(7):1358-1366.
[11] Zhang W, Sun H, Liu X, et al. Temporal QoS-aware Web service recommendation via non-negative tensor factorization[C]∥ International Conference on World Wide Web,2014:585-596.
[12] Zheng Z, Wu X, Zhang Y, et al.QoS ranking prediction for cloud services[J]. IEEE Transactions on Parallel & Distributed Systems, 2013, 24(6):1213-1222.
[13] Salakhutdinov R, Mnih A. Probabilistic matrix factorization[C]∥ International Conference on Neural Information Processing Systems, Curran Associates Inc,2007:1257-1264.
[14] Cao Z, Qin T, Liu T Y, et al. Learning to rank: from pairwise approach tolistwise approach[C]∥ International Conference on Machine Learning,ACM, 2007:129-136.