TOWARDS RECOMMENDER SYSTEMS BASED ON KALMAN
FILTERS
A New Approach by State Space Modelling
Samuel Nowakowski, Armelle Brun
LORIA – KIWI, UMR 7503 - BP 239 54506 Vandoeuvre Cedex, France
Anne Boyer
LORIA – KIWI, UMR 7503 - BP 239 54506 Vandoeuvre Cedex, France
Keywords: Kalman filtering, State space modelling, Recommender systems, State prediction
Abstract: This position proposes an original approach based on a new formulation of a recommender system. This
formulation uses state space description for users and web resources. Then states and parameters are
predicted and estimated with two stages algorithms of a Kalman filter. In this paper, we give the main
theoretical results of this original approach.
1 INTRODUCTION
In Web-based services of dynamic content,
recommender systems face the difficulty of
identifying new items and providing
recommendations for users.
Personalized recommendation has become a
desirable feature of Web sites to improve customer
satisfaction and customer retention.
Recommendation involves a process of gathering
information about site visitors, managing the content
assets, analyzing current and past user interactive
behaviour, and, based on the analysis, delivering the
right content to each visitor.
Recommendation methods can be distinguished
into three different approaches : rule-based filtering,
content based filtering and collaborative filtering.
Collaborative filtering (CF) is one of the most
successful and widely used recommender system
technology. CF analyzes users ratings to recognize
commonalities between users on the basis of their
historical ratings, and then generates new
recommendations based on like-minded users’
preferences.
The main idea of this paper is to propose an
alternative way for recommender systems. Our work
is based on the following assumption: we consider
Users and Web resources as a dynamic system
described in a state space. This dynamic system can
be modelled by techniques coming from control
system methods. The obtained state space is defined
by state variables which are related to the users. We
consider that the states of the users (by states, we
understand « what are the resources they want to see
in the next step ») are measured by the grades given
to one resource by the users.
In this paper, we are going to present the
effectiveness of Kalman filtering based approach for
recommendation. After a short introduction, we will
detail the backgrounds of this approach i.e. state
space description and Kalman filter. Then, we
expose the applied methodology. Our conclusion
will give some guidelines for future works.
2 BACKGROUNDS
This part is devoted to the presentation of the
theoretical backgrounds of the used techniques.
2.1 State Space Modelling
A state space representation is a mathematical model
of a physical system having a set of input, output
and state variables related by first-order differential
equations. Inputs, outputs and states are expressed as
345
Nowakowski S., Brun A. and Boyer A.
TOWARDS RECOMMENDER SYSTEMS BASED ON KALMAN FILTERS - A New Approach by State Space Modelling.
DOI: 10.5220/0002798403450349
In Proceedings of the 6th International Conference on Web Information Systems and Technology (WEBIST 2010), page
ISBN: 978-989-674-025-2
Copyright
c
2010 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
vectors and the differential and algebraic equations
are written in matrix form. The state space
representation provides a compact way to analyze
systems with multiple inputs and outputs. The state
variables are the smallest possible subset of system
variables that can represent the entire state of the
system at any given time. Considering the standard
formulation of a state space system, with the
following terms :
x
k
: state vector at time k
y
k
: measurement vector at time k
i
k
: inputs vector
A, B, E and C are matrices with the appropriate
dimensions. This state space description can be seen
in three manners:
- we consider that the whole dynamic system
(users and web resources) can be described by
a linear non singular system :
x
k +1
= Ax
k
+ Bi
k
y
k
= Cx
k
(1.a)
- to introduce interactions between internal
components, we will consider that the system
could be described by linear singular system :
Ex
k +1
= Ax
k
+ Bi
k
y
k
= Cx
k
(1.b)
- to take into account the complexity of the
interactions, we can consider a non linear
system
x
k+1
= fx
k
,Ax
k
(
)
,B,i
k
(
)
y
k
= Cx
k
(1.c)
2.2 Kalman Filtering
The Kalman filter addresses the general problem of
estimating the state of a system described by
equations as (1.a) to (1.c). We need to introduce
random variables w
k
and v
k
which represent the
process and measurement noise (respectively). They
are assumed to be independent (of each other),
white, and with normal probability distributions.
The Kalman filter estimates a process by using a
feedback control: the filter estimates the process
state at some time and then obtains feedback in the
form of (noisy) measurements.
The equations for the Kalman filter are of two
groups :
- time update equations which are responsible for
projecting forward (in time) the current state and
error covariance estimates to obtain the a priori
estimates for the next time step.
- measurement update equations which are
responsible for the feedback i.e. for incorporating
a new measurement into the a priori estimate to
obtain an improved a posteriori estimate.
The time update equations can be seen as predictor
equations, while the measurement update equations
can be thought of as corrector equations. The
measurement update equations are responsible for
the feedback—i.e. for incorporating a new
measurement into the a priori estimate to obtain an
improved a posteriori estimate. After each time and
measurement update pair, the process is repeated
with the previous a posteriori estimates used to
project or predict the new a priori estimates. This
recursive nature is one of the very main features of
the Kalman filter
3 OUR ORIGINAL APPROACH
3.1 State Space Description
Our approach will be based on the following
representation of the system represented by Users
and Resources (which will be called items). Our idea
will be to introduce time (represented by k) as
follows:
Figure 1: State representation.
WEBIST 2010 - 6th International Conference on Web Information Systems and Technologies
346
Knowing this state representation, we can see the
global system as a block scheme as presented in
Figure 2:
Figure 2: Block scheme.
To be in a most general case (including the influence
of the context, unmodelled events, unknown inputs,
interactions between users, …), we propose to work
on singular state space system. This assumption will
give us the possibility to take into account the
interaction between users (the interactions will be
users to users at time k, users at time k and users at
time k-i). We consider that:
u
k
i
: vector containing the users at time k – state
vector with i varying from 1 to n, the number of
users
item
k
j
: vector containing the resources at time k –
measurement vector with j varying from 1 to l, the
number of available resources.
11
1
22
1
1
1
11
22
... ...
... ...
kk
kk
kkk
nn
kk
kk
kk
kk
ln
kk
uu
uu
EM
uu
item u
item u
H
item u
ε
+
+
+
+
⎡⎤
⎢⎥
⎢⎥
=+
⎢⎥
⎢⎥
⎢⎥
⎣⎦
⎡⎤
⎢⎥
⎢⎥
=+
⎢⎥
⎢⎥
⎢⎥
⎣⎦
(2)
H
k
: measurement matrix with
l
× n dimensions
ε
k
: state noise – we assume that this term will
represent the lack of knowledge and/or the
disturbances due to the model
ζ
k
: measurement noise – we assume it introduces
disturbances due to the evaluation process (grades
given by the users)
The following assumptions :
- users are the state variables and Kalman filtering
will predict and estimate the future states
- web resources are the measurements linked to
states by matrix
H
k
which contain the past history
- under observability (Observability is a measure for
how well internal states of a system can be inferred
by knowledge of its external outputs) conditions
3.2 System Transformations
From (Gantmatcher, 1959), there are two non
singular matrices P and Q such as system () is
equivalent to the following one :
u
k +1
1
u
k +1
2
...
u
k +1
n
1
= M
k
1
u
k
1
u
k
2
...
u
k
n
1
1
+
ε
k
1
N
u
k +1
1
u
k +1
2
...
u
k +1
n
2
=
u
k
1
u
k
2
...
u
k
n
2
+
ε
k
2
y
k
= H
k
1
u
k
1
u
k
2
...
u
k
n
1
1
+ H
k
2
u
k
1
u
k
2
...
u
k
n
1
2
+
ς
k
(3)
Using these matrix transformations, we propose the
state canonical form which decomposes the system
in subsystems. We are going to link these
subsystems to communities of users.
3.3 Estimation Procedure
The estimation procedure is based on a 2 stages filter
(bootstrap algorithm):
- estimation of
M
k
: parameters estimation is done
using a weighed least square algorithm :
TOWARDS RECOMMENDER SYSTEMS BASED ON KALMAN FILTERS - A New Approach by State Space
Modelling
347
1
2
...
k
T
k
kk k
l
k
item
item
item
ε
⎡⎤
⎢⎥
⎢⎥
Θ +
⎢⎥
⎢⎥
⎢⎥
⎣⎦
(4)
Φ
k
: vector containing states of the system
Θ
k
: matrix containing parameters
Estimation algorithm:
()
()
111
1
1
1
ˆˆ ˆ
T
kkkkkkk
T
kkkk
My
MM
λ
+++
+
Θ=Θ+ Φ ΦΘ
=+ΦΦ
(5)
State estimation – Kalman filter
State estimation by Kalman filtering will act using
the following structure:
Figure 3: Kalman filtering implementation.
This stage is devoted to state prediction and
estimation using the following relations:
11
1/ /
22
1/ /
1/ /
1/ /
11 1
1/ 1 1/ 1
22
1/ 1 1/
1
1/ 1 1/
ˆˆ
ˆˆ
... ...
ˆˆ
ˆˆ
ˆˆ
... ...
ˆˆ
kk kk
kk kk
k
nn
kk kk
T
kk kkk k k
kk kk k
kk kk
k
nn
kk kk
uu
uu
M
uu
PMPMQ
uu item
uu
K
uu
+
+
+
+
++ + +
++ +
+
++ +
⎡⎤
⎢⎥
⎢⎥
=
⎢⎥
⎢⎥
⎢⎥
⎣⎦
=+
⎡⎤
⎢⎥
⎢⎥
=+
⎢⎥
⎢⎥
⎢⎥
⎣⎦
()
()
1
1/
22
11/
11/
1
1 1/1 11/1 1
1/ 1 1 1 1/
ˆ
ˆ
... ...
ˆ
kk
kkk
k
ln
kkk
TT
k kkk k kkk k
kk k k kk
u
item u
H
item u
KPHHPHR
PIKHP
+
++
++
+++++++
++ + + +
⎛⎞
⎤⎡
⎜⎟
⎥⎢
⎜⎟
⎥⎢
⎜⎟
⎥⎢
⎜⎟
⎥⎢
⎜⎟
⎥⎢
⎦⎣
⎝⎠
=+
=−
(6)
3.4 Expected Results
Using these algorithms, we are going to compute
predictions and estimations of the states of the
system i.e. the predicted and estimated ratings given
by the users to the items. Moreover, this approach
will take into account interactions between subsets
of users and will be an alternative way in user’s
recommendations. Thus, if we can estimate ratings
given by the users, we can use them as an indicator.
4 CONCLUSIONS
In this position, we propose the theoretical
backgrounds for implementing state spaces
modelling to describe the dynamical behaviours of
the systems composed by users, web resources and
their past. This new original formulation describing
relationships between states (users) and
measurements (resources) will give us the
opportunity to show the internal subsystems
(communities), the cross links between these
subsystems, the dynamical behaviour of this kind of
complex system. Then, having all these
informations, and choosing the appropriate model
(linear, singular, non linear), we will use the
performances of Kalman filtering to estimate and to
predict the future states of the system.
REFERENCES
B. D. O Anderson, J. B. Moore, Optimal filtering,
Englewood Cliffs, Prentice Hall, 1979
M. Boutayeb, S. Nowakowski, M. Darouach, A failure
detection and accommodation method for singular
systems with unknown parameters and states Gant-
matcher, The theory of matrices, Vol. 1 and 2, 1959
B. Mobasher and S. S. Anand, editors. Intelligent
Techniques for Web Personalization, volume 3169 of
Lecture Notes in Artificial Intelligence. Springer-
Verlag, 2005.
O. Nasraoui. World Wide Web personalization. In J.
Wang, editor, Encyclopedia of Data Warehousing and
Mining, pages 1235–1241. Idea Group, 2005
R. Guttman, A. Moukas, and P. Maes. Agent-mediated
electronic commerce: A survey. Knowledge
Engineering Review, 13(3), June 1998
M. Balabanovic and Y. Shohan. Fab: Content-based,
collaborative recommendation. Communications of the
ACM, 40, 1997
R. Burke. Hybrid systems for personalized recommend-
dations. In B. Mobasher and S. S. Anand, editors,
Intelligent Techniques for Web Personalization.
Springer-Verlag, 2005
WEBIST 2010 - 6th International Conference on Web Information Systems and Technologies
348
A. Das, M. Datar, A. Garg, and S. Rajaram. Google news
personalization: scalable online collaborative filtering.
In Proceedings of the International World Wide Web
Conference, 2007
J. B. Schafer, K. J., and J. Riedl. Recommender Systems
in e-Commerce. In Proceedings of the ACM
Conference on Electronic Commerce, 1999
T. Kailath Linear systems, Prentice Hall, Information and
System sciences series, 1980
TOWARDS RECOMMENDER SYSTEMS BASED ON KALMAN FILTERS - A New Approach by State Space
Modelling
349