Professional Documents
Culture Documents
DOI 10.1007/s00530-008-0117-1
REGULAR PAPER
S. Varadharajan
e-mail: Sridhar@satyam.com
S. Bhatnagar
Department of Computer Science and Automation,
Indian Institute of Science, Bangalore 560012, India
e-mail: Shalabh@csa.iisc.ernet.in
123
74
1 Introduction
Digital TV broadcasts a wide range of programs that reach a
large audience through scores of channels. TV is the most
liked medium for entertainment and information, and is
widely recognized to be the best mode for advertisement of
products and services. It gives advertisers numerous options
to showcase their brands on various channels. However, in
order to make a better impact, ads must cater to the varied
tastes of viewers. Hence the need for an intelligent recommendation system that can assist the advertisers/sponsors
to suitably place their ads among the variety of TV programs and ensures the ads reaching the intended audience
effectively.
In general, recommendation systems take into account
users interest and/or item content, and provide personalized
recommendations to each user. These systems can be broadly
classified as (i) content based systems [1]that use machine
learning techniques to select items based on the correlation
(similarity) between the contents of items and the preferences
of users; (ii) collaborative filtering based systems [2,3]that
use the preferences of a group of similar users to make a recommendation to a new user whose interests match with the
group. Here, the items are recommended on the basis of user
similarity rather than item similarity; (iii) knowledge based
systems [4]that use the knowledge of both users and items
to make a recommendation. That is, these systems study the
content of the items as well as the interest of a large number of
users and provide personalized recommendation to the users.
In recent years, many recommendation systems have been
proposed and applied variously for E-Mails, Web, TV, etc.
Much work has been done on ad recommendation [57],
where ads are the items recommended according to users
interests. Many of these systems mainly focus on ad selection
for personalized Web and digital TV based on the preferences
of individual users. For instance, Web ad selectors [5] personalize ads based on the contents of the preferred sites of
the users. In the case of digital interactive TV systems [6],
the ad selectors deliver personalized ads based on the profiles of individual users. However, the ad recommendation
scenario for real-time broadcast TV programs is quite different from the above discussed applications in that the ad
recommendation is not tailored to a single users preferences
but is based on the audience types (i.e., pooled groups of
viewers, say adults, children, etc.). Collaborative filtering
[8] plays an important role here in obtaining the information
on the audience type.
In the case of broadcast TV, one needs to consider various
parameters such as ad/program content, viewers interests,
sponsors preferences, and external parameters such as program timings, program popularity, available ad slots, etc.,
for ad recommendation. The reasons for considering these
parameters are as follows.
123
S. Velusamy et al.
75
Fig. 1 Example pictures depicting the relevances between the programs (top row) and the ads (bottom row)
123
76
S. Velusamy et al.
Fig. 2 Automatic ad
recommendation system
123
77
In this section, we present ad annotation and keyword categorization techniques that are pre-processing steps for fuzzy
clustering. The fuzzy clustering algorithm and the implementation steps are discussed in detail in the following subsections.
For clustering to be more effective, the keywords are pre-processed into a number of predefined categories. The categorization helps in clustering semantically similar ads into the
same cluster, and to reduce the complexity of clustering large
amounts of data with wide variation. This is achieved with
the help of search engines such as Open Directory Project
(ODP),1 a Web based categorization tool, and WordNet [17],
a synonym based categorization thesaurus. A variety of categorization techniques exist in the literature [18,19]. The
typical approach is to categorize the entire data into a certain number (I ) of Web related categories and map these to
a number (J I ) of desired categories. We have used a
method of semantic categorization that assists in increasing
the clustering accuracy.
Assume there are N ads in the database and each ad (A)
is represented by a set of M (for some M 1) features, i.e.,
A = {A1 , A2 , . . ., Am , . . ., A M }. The M features such as Context, People, Celebrity presence, etc., of each ad are described by the annotation keywords that are in turn picked from
the initial, un-categorized dictionary Q, where Q = {Q 1 ,
Q 2 , . . ., Q M }, used to annotate the ads, i.e., the annotation
3.1 Ad annotation
The features of ads in the database are represented using
textual keywords called annotations. They carry comments,
explanations, or external remarks describing the multi-modal
information of an ad. The annotation details for the ad videos are extracted from their associated MPEG-7 description
(see Appendix) or are obtained from manual annotation by
the media experts. An example MPEG-7 description from
which the annotations are extracted is shown in Fig. 3. The
file shown contains a synopsis of the content, genre, language detail, production information, date, etc. Out of this,
only the relevant information is extracted by referring to the
annotation library available.
An annotation library that is referenced for extracting
information from the MPEG-7 description is defined by a
number of media experts by looking at various kinds of TV
http://dmoz.org/ , http://www.google.co.in/dirhp?hl=en
123
78
S. Velusamy et al.
123
79
K
N
nk d(Vk , X n )
(1)
n=1 k=1
(2)
nk [0, 1], n, k
(3)
K
nk = 1, n
(4)
k=1
0<
N
n=1
nk < N , k
(5)
M
(vkm , xnm ),
where,
(6)
m=1
(vkm , xnm ) =
0, vkm = xnm
1, vkm = xnm .
(7)
1, vkm = xnm
0, vkm = xnm .
(8)
123
80
S. Velusamy et al.
nk
nk , 1 n N , 1 m M.
{n|xnm =amr }
{n|xnm =amt }
(9)
We refer the interested reader to [22] for a proof of the
fuzzy K-modes update method. As the performance of clustering algorithms depends upon the initial modes, we use the
domain knowledge to select the initial modes so that they are
a better representative of the program classes selected and
make the algorithm converge faster.
The examples given below show how the various ad attributes and their relevance are exploited in the clustering algorithm.
Beauty and health related items under the feature Context get more preference for Movies and Sports programs
than News programs.
If the People information is Family, the ad is recommended for Movies.
If an ad has a Celebrity in it, say a Sports star in a
Car ad, then the ad gets a higher weightage for a Sports
program.
The external Sponsor details attached with each ad
directly give the sponsors preferences for their ads in
relation to various programs. For instance, Real-estate
advertisers might prefer their ads be broadcasted in News
programs.
The algorithm is found to be efficient in clustering ads
that are similar, and provides different degrees of membership of each ad for different programs. Note that clustering is part of the recommendation system and the final
system accuracy depends on other stages, viz., scheduling
and sequencing as well. Hence, in the next couple of sections, we describe the scheduling and sequencing algorithms
123
4 Ad scheduling
81
http://www.nielsenmedia.com/nc/portal/site/Public/
Instance: For given integers P and Q, six vectors of nonnegative integers s, p, u, g of length Q and c, a of length P,
respectively.
min , q max |k [1, p ]},
Q collections of triplets {(z i,k , qi,k
i
i,k
min
such that constraints (10), (11) are satisfied, i.e., qi,k and
max are the minimum and maximum number of ad breaks
qi,k
in a program i in zone z ik as per (10) and two different zones
of a program are always either non-overlapping or included
in each other, see (11).
123
82
S. Velusamy et al.
5 Ad sequencing
If one places the scheduled ads randomly in the available
ad breaks, the ads that are similar in context or from competing sponsors (for example, Pepsi and Coke) might get
played consecutively. This would create an unpleasant situation for the sponsors as well as viewers [14]. Many of
the existing ad managing systems [15] use the policy of not
playing ads of competing sponsors consecutively or on the
same page in the case of Web. Hence, it is important to have
an effective sequencing technique that takes into consideration pre- and post-ad sequences for each ad. Bollapragada
et al. [32] discuss a variety of sequencing methods for
commercial identification rotator problem. Based on these,
we extend a heuristic sequencing technique that considers
pre- and post-ad sequences for spacing ads evenly to meet
the sponsors specifications. This is described in detail
below.
min
max
i Q, k pi , z i,k {1, . . . , P}; 0 qi,k
qi,k
(10)
i Q, k, l pi , z i,k z i,l {, z i,k , z i,l }.
Objective: Find X : [1, Q] [1, P] {0, 1}
and Y : [1, Q] {0, 1} so as to
Maximize
Fi,r gi Yi
(12)
(13)
r R iQ
jP
j P,
Xi j c j ,
iQ
min
i Q, k pi , qi,k
i Q,
(14)
max
X i j qi,k
,
(15)
jz i,k
a j X i j u i Yi .
(16)
jP
123
(11)
Let us consider a group of N ads recommended for a programs ad break with N ad slots. Each ad is associated with a
weight that is calculated through the clustering and scheduling algorithms. In addition to the sponsors preferences on the
program class, they might also demand that their ads should
be in the first spot, the last spot or in some other (say, arbitrary) position in a break [28]. (Of course, only one ad can fit
into any slot). For such ads, we set their weights as either 1
(when the sponsor wants his ad to be first in the ad break) or
0 (when the sponsor wants his ad to be last in the ad break),
irrespective of the weights that are associated with them. As
the ads recommended for each ad break match with the program context, user profile and other parameters, there might
be subgroups of ads that are similar in context or are of competing products/services. Let there
M be M (where (M N )
(no. of ads in i) = N .
subgroups for the N ads, viz., i=1
For example, Nike and Adidas shoe ads belong to the
same subgroup, as they correspond to the same product from
different companies. The ads in each subgroup are arranged
in descending order of their weights. The goal is to evenly
(to the extend possible) space the ads (in all subgroups) into
N available slots. Let,
j
ij
nj
k
dj
Ai j
83
j
|Ai j A(i1) j d j |.
(17)
123
84
S. Velusamy et al.
Without-C
With-C
Nw
Sp
Mv
Sl
Ct
Os
Nw
Sp
Mv
Sl
Ct
Os
0.10
0.15
0.30
0.25
0.10
0.10
0.00
0.10
0.60
0.20
0.05
0.05
0.05
0.05
0.40
0.20
0.15
0.15
0.05
0.05
0.65
0.10
0.00
0.15
0.35
0.15
0.30
0.15
0.00
0.10
0.70
0.15
0.10
0.05
0.00
0.00
0.10
0.25
0.20
0.15
0.25
0.05
0.05
0.25
0.20
0.05
0.45
0.00
0.15
0.10
0.20
0.35
0.05
0.15
0.05
0.10
0.20
0.65
0.00
0.00
Fuzzy
R
K-hist
M
News
20
18
13
Sports
35
33
22
2
8
Movies
45
41
17
Serials
20
19
10
Cartoons
20
19
11
10
150
138
98
25
27
Others
Total
and with categorization. The fuzzy scores obtained after categorization (for each ad) can be seen to be higher (see Table 1)
for program categories that are the most relevant. Note, in
the table, the ad features (Keywords) are shown in the order
ofad/program context, People present, Celebrity appearance and Sponsors preference, respectively. Here None
indicates the absence of a particular feature. The original
annotation keywords such as Pantene, Adidas, Dairy Milk,
LG Washing machine, HSBC, Girl, Business-man, Angelina, Sachin were categorized to Cosmetics, FMCG, Food and
Drinks, Home Appliances, Finance, Youth, Adults, Film star,
Sports star, respectively.
Next, we show in Table 2, comparisons of results obtained using the fuzzy approach and the K-histogram technique.
We use miss and false rates as the parameters to evaluate the
fuzzy clustering accuracy in comparison to the K-histogram
method. The ground truth labels of the relevant program categories for each ad are collected subjectively by 10 different
people (viewers) who are asked to rate the relevance of set
of ads clustered to the program categories, and it is observed that the fuzzy clustering technique provides significantly
123
85
their brand name and type of product they are selling to prevent any clashes. The sequenced sets of ads for various ad
breaks are shown in the last column in the figure. The rating of the system was done by calculating the mean opinion
score (MOS) with a maximum of 5. The system achieves an
MOS of 4.5.
123
86
S. Velusamy et al.
k
k
No.
of keywords correctly categorized to Ck
,
k No. of keywords categorized
No. ofkeywords correctly categorized to Ck
,
k No. of correct keywords
References
1. Billsus, D., Pazzani, M.: A hybrid user model for news story classification. In: Proc. of Seventh Int. Conf. on User Modeling, June
1999
2. Shardanand, U., Maes, P.: Social information filtering: algorithms
for automating word of mouth. In: Proc. of Human Factors in
Computing Systems (CHIc695) Conf, pp. 210217. ACM Press,
New York (1995)
3. Burke, R.: Hybrid recommender systems: survey and experiments. User Model. User Adapt. Interact. 12(4), 331370 (2002)
4. Bhargava, H.K., Sridhar, S., Herrick, C.: Beyond spreadsheets: tools for building decision support systems. IEEE Comput. 32(3), 3139 (1999)
5. Bae, S.-M., Park, S.-C.: Fuzzy web ad selector based on web usage
mining. In: IEEE Conf. on Intelligent Systems (2003)
6. Lekakos, G., et al.: A lifestyle-based approach for delivering
personalised advertisements in digital iTV. J. Comput. Mediat.
Comm., January (2004)
123
7. Kurapati, K., Gutta, S., Schaffer, D., Martino, J., Zimmerman, J.:
A multi-agent TV recommender. Workshop on Personalization in
Future TV, Germany (2001)
8. Masthoff, J.: Group modeling: selecting a sequence of television
items to suit a group of viewers. User Model. User Adapt. Interact.
(UMUAI) Journal 14, 3785 (2004)
9. Kosala, R., Blockeel, H.: Web mining researcha survey. SIGKDD Explor. 2, 115 (2000)
10. Amit, T., Srividya, G., Sridhar, V.: ITV application for intent tracking. In: Proc. of 2nd European Conf. on Interactive TV (2004)
11. Zimmerman, J., Kurapati, K., Buczak, A.L., Schaffer, D., Gutta,
S., Martino, J.: TV persolalization systemdesign of a TV show
recommender engine and interface, Chap. 5. Persolaized Digital
Television Book
12. He, Z.-Y., Xu, X.-F., Deng, S.-C., Dong, B.: K-histograms: an
efficient clustering algorithm for categorical dataset. In: ARXIV,
September 2005
13. Blanco-Fernandez, Y., Pazos-Arias, J.J., Gil-Solla, A.,
Ramos-Cabrer, M., Lopez-Nores, M., Barragans-Martinez, B.:
AVATAR: a multi-agent TV recommender system using MHP
applications. In: Proc. of e-Technology, e-Commerce and
e-Service (2005)
14. Dukes, A.: The adverstising market in a product oligopoly. J. Indus.
Econ. 52(3), 327348 (2004)
15. https://www.google.com/adsense/support/bin/answer.py?
answer=32757&topic=8526 http://msdn2.microsoft.com/en-us/
library/
16. Rovira, M., et al.: IndexTV: a MPEG-7 based personlised recommentation system for digital TV. In: Proc. of IEEE Intl. Conf. on
Multimedia and Expo (2004)
17. Miller, G., Backwith, R., Fellbuam, C., Gross, D., Miller, K.: Introduction to WordNetan online lexical database. Int. J. Lexicogr.
18. Chen, H., Dumais, S.T.: Bringing order to the web: automatically
categorizing search results. In: CHI00 Proc. of the SIGCHI Conf.
on Human factors in computing systems. ACM press, New York
(2000)
19. Shen, D., Pan, R., Sun, J.T., Pan, J.J., Wu, K., Yin, J., Yang, Q.:
Our winning solution to query classification in KDDCUP2005.
SIGKDD Newsletter (2005)
20. He, Z., Xu, X., Deng, S.: Squeezer: an efficient clustering algorithm
for categorical data. J. Comput. Sci. Technol. 17, 611624 (2002)
21. Guha, S., et al.: ROCK: a robust clustering algorithm for categorical attributes. In: Proc. of Int. Conf. on Data Engineering,
pp. 512521, March 1999
22. Huang, Z.: Extensions to the K-means algorithm for clustering
large datasets with categorical values. Data Min. Knowl. Discov.
2, September 1998
23. Huang, Z.: A fuzzy K-modes algorithm for clustering categorical
data. IEEE Trans. Fuzzy Syst. 7(4), (1999)
24. Frank, H., Frank, K., Rudolf, K., Thomas, R.: Fuzzy Cluster Analysis: Methods for Classification, Data Analysis and Image Recognition. Wiley Publications, London (1999)
25. Bollapragada, S., Bussieck, M., Mallik, S.: Scheduling commercial videotapes in broadcast television. Oper. Res. November 2004
26. Subodha, K., Jacob, V.S., Chelliah, S.: Scheduling advertisements
on a Web page to maximize revenue. Eur. J. Oper. Res. 10671089,
September 2005
27. Saha, A., Pal, M., Pal, T.K.: Selection of programme slots of
television channels for giving advertisement: A graph theoretic
approach. Inf. Sci. 24802492, January 2007
28. Kimms, A., Mller-Bungart, M.: Revenue management for broadcasting commercials: the channelc6s problem of selecting and
scheduling the advertisements to be aired. Int. J. Rev. Manage. 1(1), 2844 (2007)
29. Benoist, T., Bourreau, E., Rottembourg, B.: The TV-break packing
problem. In: Eur. J. Oper. Res. 13711386, December (2005)
Author Biographies
Sudha Velusamy received her
Masters degrees in 2006 from
the Department of Electrical and
Communication Engineering at
the Indian Institute of Science,
Bangalore, India. From August
2006, she is with the Applied
Research of Satyam Computers
Services Ltd, India, where she is
currently a Research Associate.
Her research interests are in the
area of audio signal processing,
pattern recognition and machine
learning with application to information retrieval.
Lakshmi Gopal received her
Masters degree in 1998 from
Birla Institute of Technology,
India. She worked as a Project Manager at Infosys Technologies Ltd from February
1995 to December 2004. From
December 2004, she is with the
Satyam Computer Services Ltd,
where she is a Technical Consultant. She has worked in various domains such as Telecom,
Media and Entertainment. She is
a member of IEEE and ACM. Her
research interests are in IPTV, IP
Multimedia Subsystem, Triple Play services and Business Support
Systems.
87
nology, Delhi. From December 2001, he is with the Indian Institute
of Science, Bangalore, where he is an Associate professor in the
Department of Computer Science and Automation.
His research interests are in stochastic optimal control, reinforcement learning, simulation optimization, communication networks and
information theory. He has over 60 publications in international journals
and conferences. He is an Associate Editor of the IEEE Transactions
on Automation Science and Engineering, and is a Senior Member of
IEEE. He is on the review committees of many journals and conferences
and in 1999, was recognized by the IEEE Transactions on Automatic
Control for an outstanding job of reviewing research papers.
Sridhar Varadharajan is the
head of Applied Research Group,
Satyam Computer Services Ltd,
India, and has over 20 years
of research and industry experience. He has more than a 100
technical publications in referred international conferences and
journals, and is a co-inventor in
the 16 patent applications filed
in USPTO. The published works
are in a variety of areas including artificial intelligence (data
analysis, numerical clustering,
symbolic clustering, machine
learning, language processing,
image processing), wireline networking (QoS and SLA management.
P2P), content delivery networks (distributed cache, content analysis,
context modeling, context-aware retrieval, efficient content selection
and retrieval, real-time event management, digital rights management),
wireless networking (WLAN, 3G and beyond), optical networking
(RWA, OXC, EPON), and grid computing (self-healing, automated parallelization).
123