two-step personalized services. Service
recommender is responsible for service
recommendation; hence, it is to set up a weighted
list of useful services according to user behavior
patterns in the current situation and user’s service
preference shown in Fig. 5. Equation (1) shows
user’s preference for service recommender. That is
to say, for user u, the preference value of service i is
computed by equation (1). Contents recommender is
responsible for contents recommendation according
to selected service domain. As previous mentioned
in Fig. 5, IPTV is included in this case.
Preference
u,
=
×Preference
(Up)
u,i
+
×Preference
(Us)
u,i
u : user, i : services
Preference
u,i
: The preference value of user u about item i
Preference
(Up)
u,i
: The preference of user preference model
Preference
(Us)
u,i
: The preference of user service usage
model
α : The weight of user preference model
β : The weight of user service usage model
(1)
4.3.1 Service Recommendation Function
The service recommender fuction is as following
equation (2). Equation (2) is applied to learner and
preference ontology modeling.
reference
u,
=
×preferenceProbalility(u, S
j
)
+
β
×(w
k
×C-TBL[a
k,i
][S
j
] )
u : user, S
j
: j
th
services item
Preference
u,j
: The preference value of user u about
service item S
j
preferenceProbalility(u, S
j
): The preference of user
preference model by ontology shown in Fig. 5.
C-TBL[a
k,i
][S
j
]: The preference of user service
usage model by learner
a
k,i
: the attribute value of C
k
w
k :
the weight of context C
k
α : The weight of user preference model
β : The weight of user service usage model
(2)
According to Equation (2), weighted list of preferred
services is to set up and notifies to user. Suppose
that “watch TV” service is recommended. If user
selected TV service among service categories to be
recommended at the first step, it should match a
user’s desired TV programs and recommend TV
programs with high user preference by contents
recommender according to information of shown in
Fig. 5.
4.3.2 Contents Recommendation Function
For contents recommendation of TV domain, we
choose content-based approaches in order that
sparsity and cold-start (Papagelis et al., 2005)
problems are solved. The sparsity problem has a
major negative impact on the effectiveness of a
collaborative filtering approach. Because of sparsity,
it is impossible that the similarity between two users
cannot be defined, rendering collaborative filtering
useless. Even when the evaluation of similarity is
possible, it may not be very reliable, because of
insufficient information processed. Cold-start refers
that it cannot be recommended unless it has been
rated by a substantial number of users.
This is preference model for TV application
domain. The content of TV programs can be
represented in these items: identification information
(ID/title), category information (genres/subgenres),
broadcast information (channel/the starting time and
ending time of the program), content ratings and
keywords. To compute user preference, the TV
model is divided into three types of information
about TV content: “genre”, “channel” and
“companion”.
Companion: with whom the TV was seen (alone,
with friends, with family). It is possible to be
included in common model.
To collect this information about the user’s
interests, the system can ask a user manually
indicate his/her interests by giving GUI. The
function of TV specific model consists of computing
the preference of genre, channel and person, and
multiplying the each result by weights as equation
(3). The previous mentioned Fig. 6 shows the
example of ontology model of TV genre preferences.
P
u,i
=W
g
P
genre
u,p
+ W
c
P
channel
u,p
+W
c
×P
companion
u,p
u : user, i : items p: TV broadcasting program
W
g
: weight of genre, W
c
: weight of channel,
W
c
: weight of companion
(3)
4.4 Performance of Functions
To evaluate function, we chose the following the
data set; Create Approval, Balance and balloon in
UCI depository. In the case of the create approval of
UCI data, this consists of 15 contexts which has 9
categorical attributes and 6 continuous attributes),
and two action classes as show in Table 2.
Table 2: Example of UCI data for simulation.
Data Instance Attr.(Categorical) ActionClass
Create Approva
665 15(9) 2
alloons 20 4(4) 2
alance 625 4(4) 3
And also, we chose machine learning algorithms
from the Weka tool-kit (http://www.cs.
waikato.ac.nz/ml/weka/): J48, ZeroR, NaiveBayes
(Louis and Shankar, 2004).The performance
evaluation metric in this experiment is the
ICSOFT 2009 - 4th International Conference on Software and Data Technologies
336