You are on page 1of 7

Int. J. Computational Science and Engineering, Vol. 5, Nos.

3/4, 2010 207

Book recommendation system for utilisation of


library services

Takanori Kuroiwa and Subhash Bhalla*


Graduate School of Computer Science and Engineering,
University of Aizu,
Aizu-Wakamatsu, Fukushima 965-8580, Japan
E-mail: m5101202@gmail.com
E-mail: bhalla@u-aizu.ac.jp
*Corresponding author

Abstract: In addition to using the many conventional approaches for making recommendation
systems, this paper proposes a complementary recommendation methodology. It is focused on
book recommendation. It proposes to make a comprehensive data repository of existing books,
available at the level of the user (in a library or a personal bookshelf). Further, by retrieving web
reviews of available books and new books by using existing web services, an infrastructure has
been developed for need-based book recommendation system. Implementation results show that
our book recommendation allows a user to eliminate irrelevant books and presents the desired
books to the user from given book set. The proposed book recommender is one of the first
systems in terms of focusing on meeting individuals’ needs rather than calculating similarity or
preferences automatically, which is adopted by the traditional recommender system.

Keywords: book recommendation; web review retrieval; web services; recommendation


systems; utilisation of services and facilities; information aggregation.

Reference to this paper should be made as follows: Kuroiwa, T. and Bhalla, S. (2010) ‘Book
recommendation system for utilisation of library services’, Int. J. Computational Science and
Engineering, Vol. 5, Nos. 3/4, pp.207–213.

Biographical notes: Takanori Kuroiwa obtained his Master’s degree (2008) from University of
Aizu. His research interest includes data mining.

Subhash Bhalla is a Professor at the Graduate School of Computer Science and Engineering,
University of Aizu. He obtained his PhD from the Indian Institute of Technology, Delhi in 1984.
His research interests include distributed systems, real-time operating systems and distributed
information systems.

1 Introduction recommender system has a facility for collecting


and checking web reviews, the recommender system
The aim of a recommendation system is to provide users
would be able to recommend books that meet individuals’
with products and items that they might need. However,
needs.
current recommender systems such as Amazon.com’s book
The purpose of this study is to build an infrastructure for
recommender do not take each user’s need into
a need-based recommendation. As a first component, it
consideration. In fact, many times a user may not wish to
supports an archive of available books. These may be on the
purchase a new unknown recommended book. Instead, he
user’s shelf or an organisational library within the reach of
may wish to use an available reference (which may need to
the user. Further, it supports such a facility by collecting
be located from available sources). In addition, there are
web reviews though existing web service integration.
different considerations, other than the one’s used by a
Also, we present the effectiveness of the proposed
recommender system. ‘The user seeks to examine favourite
recommendation approach by providing implementation
author’s or publisher’s books?’ Or, he may consider,
results.
‘Which book is good for beginner?’
The rest of the paper is organised as follows. The
One of the ways to resolve such questions is to check
background information is described in Section 2. In
customer reviews provided by Amazon.com. Another way
Section 3, we introduce an infrastructure of our book
is to search the web to find effective web reviews.
recommendation. Section 4 discusses needs-based
Recently, information transmissions through blogs or
recommendation. In Section 5, results are discussed.
virtual-community logs have been very active. Many
Finally, Section 6 presents the summary and conclusions.
people write book reviews on their blogs. Therefore, if a

Copyright © 2010 Inderscience Enterprises Ltd.


208 T. Kuroiwa and S. Bhalla

2 Background comments. For example, some long, complicated sentences


cannot be classified into any category.
Presently, there are three recommendation approaches
that constitute recommender systems: collaborative
filtering, content-based approach and their hybrid system 2.5 Human-to-human approach
(Adomavicius and Tuzhilin, 2005). Each approach has some We have proposed a human-to-human recommendation
drawbacks and advantages. In addition to these traditional approach (Kuroiwa and Bhalla, 2007). In this approach,
recommendation methodologies, a new approach has been users share a knowledge base (KB) and each user
proposed. In this section, we briefly describe them. recommends his/her chosen books to other users like real-
world borrower or lender through the web-based a system.
2.1 Collaborative filtering approaches The purpose of this approach is to enhance utilisation of
existing books among users. In this approach, to visualise
The collaborative filtering approaches recommend books
individuals’ preference, featured keywords are extracted
based on similarity between the books the user preferred in
from the KB. However, to make an accurate featured
the past and the ones other users have purchased.
keyword extraction, a sufficient number of users’ ratings are
Amazon.com’s recommender system adapts this approach
required.
(Konstan et al., 1997; Linden et al., 2003). The collaborative
approaches can provide books of unknown category.
However, such recommender systems have to learn a user’s 2.6 The proposal
preference from the user’s previous purchases. In addition, Both the collaborative filtering approach and the
the recommender systems require a sufficient number of content-based approach have a common drawback:
other user’s ratings before making a recommendation. these require a sufficient number of users’ efforts before
making a recommendation. Similarly, the proposed
2.2 Content-based approaches review-based approach cannot work well in a few cases.
The human-to-human approach also has some drawbacks.
The content-based approaches recommend books based on a
This may be because these approaches tend to focus on
user’s preferences (Lang, 1995; Mooney and Roy, 2000;
automatically processing something (such as extracting
Pazanni and Billsus. 1997). The content-based approaches
users’ interests, calculating the similarities between users,
are appropriate for recommending books by extracting the
analysing review comments) rather than reacting to users’
user’s preferences from the user’s ratings. One of the
direct needs. Thus, making a recommendation based on
drawbacks of such recommender systems is that they
these approaches may cause a gap between the
require a sufficient number of the user’s ratings to make an
recommended books and the ones users really want. This is
accurate recommendation. Also, this approach may cause a
because the approaches ignore users’ current interests and
loss of information problem in the course of extracting
needs. For this reason, we propose a recommender system
featured terms to calculate a user’s interests. For example,
that supports a facility for checking if recommended books
when selecting featured terms from text, terms regarded as
meet the users’ needs or not.
insignificant are eliminated. However, in terms of context,
such terms may not be ignored.
3 Book utilisation system
2.3 Hybrid approaches
In this section, we introduce an infrastructure for the
The hybrid approaches combine the collaborative filtering proposed book recommendation system called Aizu book
and the content-based approaches (Balabanovic and utilisation system (Aizu-BUS).
Shoham, 1997; Pazanni, 1999). The hybrid approaches are
able to make more accurate recommendation than the
3.1 System architecture
above two approaches by overcoming weakness of pure
approaches. However, location of recommended books still Figure 1 depicts an architecture of Aizu-BUS. The
depends on users’ own effort. Aizu-BUS is composed of web user interface (WUI), web
service handler, XML DB handler, external resources and a
2.4 Review-based approach KB. The WUI receives users’ requests such as gathering and
searching operation for books and generates a query to the
Aciar et al. propose a new recommendation approach (Aziar web services. The web service handler searches the external
et al., 2006, 2007). It is based on consumer product reviews resources according to the request and gives the results as
written in free-form text. In this approach, each review store/query operation. The XML DB handler stores XML
comment is mapped into the ontology’s information data or retrieves XML data from the XML database called
structure and classified into three categories: ‘good’, ‘bad’ Xpriori (http://www.xpriori.com/). The KB is used for book
and ‘quality’. This helps to decide whether a product is utilisation activities: book search, book recommendation
good or bad, by taking the skill of each person who and book sharing among users. In this study, we focus on
submitted the comments, into consideration. The drawback book recommendation activity.
is that this approach cannot be applied to all review
Book recommendation system for utilisation of library services 209

Figure 1 System architecture et al., 2003a, 200b). The book rating approach given by the
following formula depends not on the score of each book
but on the context of each book review.
N p − Nn
r= × ( rave − 1) + rave (1)
N p + Nn

where rave is the average rating, Np and Nn represents the


positive review count and the negative review count
respectively. The value of r ranging from 1 to 5 represents
book ratings. The larger the value of r is, the better
evaluation is. Table 1 shows the definition of book rating in
this study. For example, if the number of the positive
reviews of a book (for example, review comments are
saying ‘good’ or ‘easy’) equals to three and the number of
3.2 Building KB the negative reviews of the book (for example review
comments is saying ‘bad’ or ‘difficult’) equals to one, r will
Initially, data about books (available in store) is entered.
be four, which represents the book is ‘nice’. Figures 2 and 3
When a user enters an ISBN (as shown in Figure 1), the
depict the proposed book rating. Suppose that each book
system generates a request to Amazon E-Commerce Service
review is collected manually. In case two positive reviews
(http://aws.amazon.com/) and searches book catalogue to
(that contain ‘excellent’ and ‘useful’ in the review
retrieve basic book information. The basic book information
comments) are added to KB, the book rating (r) become
includes: image URL; ISBN; title; author name; product
excellent (Jin et al., 2003) as shown in Figure 4. However, if
page URL; price; publication date; publisher name; and the
one negative review (that contains ‘worst’) is added, the
number of pages and Amazon.com’s sales rank. The
book review (r) is reduced to ‘nice’ (3:66) as shown in
basic book information is stored in an XML database
Figure 3.
called Xpriori. The XML database serves as a KB for the
proposed book recommendation system. Technorati API Table 1 Book rating
(http://technorati.com/developers/api/) and Yahoo! Search
Web Service (http://developer.yahoo.com/search/) are r Evaluation
applied for web and blog information retrieval. 1 Poor
1<r≤2 Bad
3.3 Book rating 2<r≤3 So-so
Aizu-BUS provides a book rating method considering the 3<r≤4 Nice
fact that different users may have different rating scale (Jin 4<r≤5 Excellent

Figure 2 Review-based book rating (excellent)


210 T. Kuroiwa and S. Bhalla

Figure 3 Review-based book rating (nice)

4 Need-based book recommendation 1 a representative keyword of his/her interests (such as an


In this section, we propose a need-based recommendation interested category name, a favourite author/publisher
as a facility of the Aizu-BUS. The need-based name)
recommendation approach corresponds users’ direct needs
2 his/her first need (such as ‘easy’, ‘concepts’ or
with book reviews available on the web using the existing
‘introduction’)
web services. As shown in Figure 4, the need-based book
recommendation follows Step 1 to 3 below. 3 his/her second need (such as ‘good’ or ‘reference’).
1 Needs registration These registered needs are used as keywords for narrowing
down the search result when searching the web/blogs using
2 Web review retrieval
Yahoo!/Technorati Web Services.
3 Book recommendation.
Figure 5 Web review retrieval
Figure 4 Need-based book recommendation

4.1 Needs registration 4.2 Web review retrieval


Once the needs are registered, the recommender system
First, each user registers his/her needs into the recommender
automatically assembles queries and searches the web/blogs
system. The format of contents is as follows:
using Yahoo!/Technorati Web Services. Figure 5 shows the
procedures of web review retrieval. First, recommender
Book recommendation system for utilisation of library services 211

system searches the KB by using a user’s first need (that is, activities. When a user requests to browse recommended
for example, a representative keyword such as ‘XML’) and books from given book set (such as other user’s library), the
book titles containing the keyword are retrieved. Then, the recommender system searches the web reviews using web
system automatically assembles the query to search web services and presents the selected books (that meet his/her
reviews by combining a selected book title and the user’s needs) to him/herself. The implementation details and
next need ‘easy’. By using Yahoo!/Technorati Web Service, results are discussed in the next section.
short summaries containing the assembled query are
extracted from retrieved web pages/blogs. Finally, the
extracted summaries are presented to the user. 5 Implementation details
A prototype system was implemented on Windows 2000
4.3 Book recommendation using Apache 2.0.5 and PHP 5.1.4. To test our book
After retrieving the web reviews according to the above recommendation facility, we collected 100 books from
method, our book recommender system presents Amazon.com. Assume that a user has registered his/her
recommended books to a user one by one according to needs like ‘database’, ‘good’ and ‘easy’. Also, note that the
Amazon.com’s sales rank. Currently, the web review top three pages of Yahoo!/Technorati search are retrieved as
retrieval and recommended book presentation are performed web reviews of a selected book.
in real-time. In other words, a user can trigger those two

Figure 6 Recommended book 1 containing ‘good’

Figure 7 Recommended book 1 containing ‘easy’


212 T. Kuroiwa and S. Bhalla

Figure 8 Recommended book 2 containing ‘good’

Figure 9 Recommended book 2 containing ‘easy’

Figure 6 to 9 show the recommended books and the review existing web service integration contributes to retrieving
comments retrieved by Yahoo! Web Service. Most reviews book reviews available on the web and corresponding the
are from Amazon.com related sites. This is because blog web reviews with each user’s needs. This recommendation
search results have not been taken into account. Technorati method is not an alternative approach to traditional
API (that is used for retrieving book reviews from blogs) is approaches such as the collaborative filtering and
unsuitable for retrieving web contents written in space the content-based approaches, but a complementary
delimited language like English because it does approach to such approaches. We believe the proposed book
not support a perfect matching search (at this time). recommender is one of the novel systems in terms of taking
However, it is appropriate for retrieving Japanese contents. users’ needs directly into consideration and focusing on
Therefore, we apply Technorati API to Japanese book meeting the needs rather than automatically predicating
review retrievals. recommended books, as in the case of the traditional
recommender systems.
For future work, we will investigate the following
things: coordination with traditional recommendation
6 Summary and conclusions
approaches and web review clustering to automatically
This paper proposed a need-based book recommendation classify web reviews into the positive ones and the negative
using web reviews. Implementation results show that ones.
Book recommendation system for utilisation of library services 213

References Konstan, J.A., Miller, B.N., Maltz, D., Herlocker, J.L.,


Gordon, L.R. and Riedl, J. (1997) ‘GroupLens: applying
Aciar, S., Zhang, D., Simoff, S. and Debenham, J. (2006) collaborative filtering to Usenet News’, Communications of
‘Recommender system based on consumer product reviews’, the ACM, Vol. 40, No. 3, pp.77–87.
Proceedings of the 2006 IEEE/WIC/ACM International Kuroiwa, T. and Bhalla, S. (2007) ‘Dynamic personalization for
Conference on Web Intelligence, pp.719–723. book recommendation system using web services and virtual
Aciar, S., Zhang, D., Simoff, S. and Debenham, J. (2007) library enhancements’, IEEE 7th International Conference on
‘Informed recommender: basing recommendations on Computer and Information Technology (CIT2007), University
consumer product reviews’, IEEE Intelligent Systems, of Aizu, Japan.
May/June, Vol. 22, No. 3, pp.39–47. Lang, K. (1995) ‘NewsWeeder: learning to filter netnews’,
Adomavicius, G. and Tuzhilin, A. (2005) ‘Toward the next Proceedings of the 12th International Conference on Machine
generation of recommender systems: a survey of state-of- the- Learning, pp.331–339.
art and possible extensions’, IEEE Transactions on Linden, G., Smith, B. and York, J. (2003) ‘Amazon.com
Knowledge and Data Engineering, Vol. 17, No. 6, recommendations: item-to-item collaborative filtering’, IEEE
pp.734–749. Internet Computing, January/February, pp.76–80.
Amazon Web Service, http://aws.amazon.com/. Mooney, R.J. and Roy, L. (2000) ‘Content-based book
recommending using learning for text categorization’,
Balabanovic, M. and Shoham, Y. (1997) ‘Fab: content-based, Proceedings of the 5th ACM conference on Digital Libraries,
collaborative recommendation’, Communications of ACM, pp.195–204.
March, Vol. 40, No. 3, pp.66–72.
Pazzani, M. (1999) ‘A framework for collaborative, content-based
Jin, R., Si, L. and Zhai, C. (2003) ‘Preference-based and demographic filtering’, Artificial Intelligence Review,
graphic models for collaborative filtering’, Proceedings of Decemeber, pp.393-408.
Nineteenth Conference on Uncertainty in Artificial
Intelligence, August. Pazzani, M. and Billsus, D. (1997) ‘Learning and revising user
profiles: the identification of interesting web sites’, Machine
Jin, R., Si, L., Zhai, C. and Callan, J. (2003) ‘Collaborative Learning, Vol. 27, pp.313–331.
filtering with decoupled models for preferences and ratings’,
Proceedings of the Twelfth International Conference on Technorati API, http://technorati.com/developers/api/.
Information and Knowledge Management, November, Xpriori (XMS), http://www.xpriori.com/.
pp.309–316. Yahoo! Search Web Service, http://developer.yahoo.com/search/.

You might also like