1. 程式人生 > >論文閱讀筆記3

論文閱讀筆記3

文獻名稱:Predicting QoS Values via Multi-dimensional QoS Data for Web Service Recommendations
作者資訊:You Ma,這個作者屬於跨領域發的論文比較多,各種會議都有發文章,比較雜。
發表日期:2015,6
發表期刊/會議:ICWS會議,是IEEE服務計算委員會發起的世界上服務計算領域規模最大、水平最高好的系列國際學術會議,後來擴充套件到雲端計算和大資料等領域。其中,ICWS和SCC是目前服務計算鄰域的頂級國際學術會議。
被引量:6

主要內容:這篇文章主要講了如何利用多個維度的QoS資料進行預測和推薦。由於服務質量受一系列的因素的影響,包括響應時間、吞吐量、目標使用者的位置等,因此只用一個維度的資料來進行預測是不夠準確的,作者提出將多個維度的資料綜合起來考慮,並引入張量的概念,通過張量分解的方法和張量優化重建的方法進行預測。為了證明方法的有效性,本文采取了兩個資料集,一個是WSdream傳統資料集,另一個是已有的計程車的資料集。通過實驗,我們的方法比傳統方法有很大的提升。
首先作者介紹了什麼是高維的服務質量資料,如圖1所示,展示了一個五維的QoS資料,橫座標是QoS屬性,縱座標是位置資訊,每個grid是一個三階的張量,包括服務id、使用者id和時間序列。這樣一個維度的QoS資料要如何表示呢?作者採用的高階張量的方法表示。
高維QoS資料


圖1 高維的QoS資料
然後解釋為什麼要用張量來表示高階的QoS資料,並介紹如何採用張量分解的方法來預測,同時提出了一個改進的優化分解演算法來還原原始張量。目標函式如下:
這裡寫圖片描述
目的是讓損失函式最小,就能獲得最優的分解結果。後面的部分是歸一化項,防止函式過擬合。基於這個損失函式,作者提出了一個優化演算法iRPROP+方法,不是採用傳統的梯度下降的演算法,克服了梯度下降演算法的缺點,具有兩點優勢:1)用不同的迭代步長計算不同的變數,2)迭代步長自適應每個變數的迭代計算,以保證快速收斂。
分解完成之後就可以採用以下公式進行預測:
這裡寫圖片描述
實驗部分,採用了兩個資料集來驗證效果,一個是傳統的資料集wsdream,包含4532 web services*142users*64time intervals,是由作者zhang zibin在論文中提供的公開資料集,是公認的測試資料集,大部分學者的論文大都是採用這個資料集來做實驗。第二個實驗資料集是計程車資料,這個資料集是第一次出現。重點介紹了這個資料集的由來和如何用這個資料集進行實驗。
這個資料集包含了1億條計程車記錄,包括計程車id、經緯度、計程車速度、駕駛方向、載乘客與否、樣本時間等,作者抽取了一個星期的時間來做實驗。作者把北京三環以內的區域劃分為3600個grid,每個grid是240m*240m。
這裡寫圖片描述

圖2 北京三環內地區劃分圖
如圖2所示,每個grid我們統計兩種資訊,有多少人叫車和有多少人下車,可以用作為計程車推薦系統的資料。 然後作者講述如何利用這些資料進行張量建模。第一個資料集的大小是142*4532*64*2,第二個資料集的大小是3600*144*7*2。
實驗結果如圖3所示,作者把傳統的基於時間的預測和矩陣分解的方法與自己的方法進行對比,結果證明作者的方法比這兩種方法寓有很大的改善。因為之前的預測方法都是基於一個QoS屬性,所以準確率可能不如作者的提出的方法高。由此可以解釋,作者的方法確實提供了一個新穎的思路。
這裡寫圖片描述
圖3 準確率對比實驗結果圖

閱讀心得:張量分解的方法是很久之前就已經有學者提出來的,不過梯度下降的方法遇到了瓶頸導致推行不下去,作者提出的方法和思路都很新穎。首先才用了一種新的優化求解的演算法進行張量分解,然後利用了一個全新的資料集來驗證方法的可行性,在一定程度上來說,給讀者耳目一新的感覺。因為資料集1是讀者特別熟悉的資料集,幾乎所有的論文都採用該作者提供的資料集來做實驗。所以當看到計程車的資料集時,難免會多看幾眼,想要了解它。該作者很聰明,在這篇文章上可取的地方有很多,不僅思路新,文章的措辭也是非常準確到位,沒有采用老掉牙中式詞彙,而是地道的美式表達,很令人佩服。這篇文章給了我很多靈感,我們可以根據已有的資料來綜合預測QoS,取代傳統的每次僅預測一個QoS屬性,這樣一來可以獲取QoS更多的潛在特徵,從而預測的更加準確,並且還能提高效率。不過很好奇的一點,作者這麼大規模的張量在運算過程種有沒有遇到執行不起來的問題,因為我之前採用張量分解的方法來預測,就遇到過這個問題,由於資料量太大,運算特別卡。作者也沒有詳細闡述自己的演算法的時間複雜度和具體的預測一次所花費的時間,因此這個也是在接下來的過程種要注意的。