552 H. Wu et al. / Future Generation Computer Systems 76 (2017) 550–560
2.2. QoS prediction based on matrix factorization
Different from neighborhood-based approaches, matrix factor-
ization approaches have attractive accuracy and scalability thus
recently become popular in recommender systems [16]. A typical
model associates each user u with an user-factors vector A
u
∈ R
f
,
and each item i with an item-factors vector B
i
∈ R
f
. The prediction
is done by taking an inner product, i.e.,
ˆ
q
ui
= A
T
u
B
i
. To exploit matrix
factorization for QoS prediction, Zheng et al. [8,12] using proba-
bilistic matrix factorization (PMF [33]) approach to decompose the
QoS matrix. For identifying latent factors, A and B, a least-square’s
problem like (2) are built and solved using gradient descent [16].
min
A,B
(u,i)∈E
(q
ui
− A
T
u
B
i
)
2
+ λ
u
∥A
u
∥
2
+ λ
i
∥B
i
∥
2
. (2)
Matrix factorization can partially alleviate sparsity-sensitive
problem of collaborative filtering thus increase the accuracy of
QoS prediction. For the last two years, numerous efforts have been
made on improving MF-based models. These works concentrate
on utilizing additional information, such as spatial and temporal
information associated with users or services. Zhang et al. [22]
use collective matrix factorization that simultaneously factor
the user–service quality matrix, service category and location
context matrices. Zhang et al. [23] factorize user–service–time
matrix of QoS using non-negative tensor factorization with time
information. Yin et al. [25] develop a location-based regularization
framework for PMF prediction model. Lo et al. [24] exploit PMF
prediction model with a location-based pre-filtering stage on QoS
matrix. He et al. [34] develop location-based hierarchical matrix
factorization. Yu et al. [26] experience trace-norm regularized
matrix factorization. Following neighborhood-integrated matrix
factorization(NIMF) [8], Qi et al. [30] propose a MF-based method,
integrating both user network neighborhood information and
service neighborhood information, to predict personalized QoS
values.
Matrix factorization can provide accurate predictions while sac-
rificing explainability, as the learned latent factors are unexplain-
able. Lack of explainability weakens the ability to persuade users
and help users make better decisions in practical systems. Also,
data sparsity has a negative impact on these methods, as data be-
comes extremely sparse, the prediction performance will be not
optimistic.
In addition, neural network based deep learning technology
has been proposed for collaborative filtering, e.g., Restricted
Boltzmann Machines [35]. Similar to matrix factorization, deep
learning methods allow us to discover the latent features
underlying data. It may indicate a new trend in the QoS prediction,
however, deep learning methods always incur high computational
overheads, and suffer from the similar problems in matrix
factorization techniques.
3. Deviation-based neighborhood model for QoS prediction
To cope with existing drawbacks of CF-based prediction
methods, we suggest using machine learning techniques to build
neighborhood model for QoS prediction. New models allow
an efficient global optimization scheme and exploit different
baseline estimate components to improve prediction accuracy. To
distinguish users from services, we take different indexing letters:
for users u, v, and for services i, j. The notation q
ui
indicates
a known quality-score observed by user u on service i and the
notation
ˆ
q
ui
represents the predicted value of q
ui
. The (u, i) pairs
for which q
ui
is observed are stored in the set E = {(u, i)|q
ui
=
null}. Usually the vast majority of QoS scores are missing. To
combat overfitting in learning prediction model on the sparse data,
models are regularized so estimates are shrunk towards baseline
estimates [16].
3.1. The framework
User-oriented methods estimate unknown quality based on
recorded QoS of like minded users. Analogously, in service-
oriented methods, a QoS value is estimated using known QoS made
by the same user on comparable services. In cloud/IoT computing
environment, the context with users is more complex and dynamic
than that of services. Prediction leveraged by similar users other
than services is more practical. Therefore, our focus is on user-
oriented approaches, but parallel techniques can be developed in
a service-oriented fashion, by switching the roles of users and
services.
We develop the QoS prediction model on the basis of
neighborhood-based collaborative filtering [16], which allows an
efficient global optimization scheme and offers improved accuracy.
To facilitate global optimization, we would want to abandon
user-specific similarity, s(u, v) in (1), in favor of global weights
independent of a specific user. The weight from user v to user u
is denoted by x
uv
are able to be learned from the data through
optimization. By this, we can overcome the weaknesses with
existing neighborhood-based models. An initial sketch of the
model describes each quality score q
ui
by:
ˆ
q
ui
= b
ui
+
v∈N
u
x
uv
(q
vi
− b
vi
), (3)
where N
u
is the neighbor set of u, b
ui
is the baseline estimate that
we will gradually construct considering different factors.
As for the interpretation of weights, usually they represent
interpolation coefficients relating unknown quality score to the
existing ones in a traditional neighborhood model [16] (recall
s(u, v) in (1)). Here, we adopt them in a different viewpoint that
weights represent offsets to baseline estimates and residual, q
vi
−
b
vi
, is viewed as the coefficients multiplying those offsets. For two
similar users u and v, x
uv
is always expected to get high, and vice
versa. So, our estimate will not deviate much from the baseline
estimate by a user v that accessed i just as expected (q
vi
− b
vi
is
around zero), or by a user v that is not known to be predictive on
u (x
uv
is close to zero).
Generally, we can take all users in N
u
other than u, however, this
would increase the number of weights to be estimated. In order to
reduce complexity of the model, we suggest pruning parameters
corresponding to unlikely user–user relations. Let N
k
u
be the set of
k users who are most similar to u, as determined by the similarity
measure s(u, v). Further, we let N
k
(i;u)
, N
i
∩N
k
u
, where N
i
is the set
of users have used the service i. Now, when predicting q
ui
according
to formula (3), it is expected that the most influential weights will
be associated with users similar to u. Hence, we replace (3) with:
ˆ
q
ui
= b
ui
+ |N
k
(i;u)
|
−
1
2
v∈N
k
(i;u)
x
uv
(q
vi
− b
vi
). (4)
When k = ∞, rule (4) coincides with (3). When k = 0,
ˆ
q
ui
= b
ui
.
However, for other values of k, it offers the potential to significantly
reduce the number of variables involved. This final prediction rule
permits fast online prediction, since more computational works,
such as similarity calculation and parameter estimation, have
been made in the pre-processing stage. Recall that unlike matrix-
factorization, the neighborhood models allow a direct explanation
of their predictions, and do not require re-training the model for
handling new services.
3.2. Components for baseline estimation
Typical QoS data exhibit large user and service effects-
i.e., systematic tendencies for some users to achieve better QoS
than others, and for some services to receive better QoS than