Special Feature

User Support Systems with Adaptive UserProfiling Based on User Activity Histories
Tetsushi Morita, Tetsuo Hidaka, Hisanobu Matsuoka,Shinichi Okano, Akimichi Tanaka, and Yasuhisa Kato†Abstract
This article introduces two systems that apply user profiling technology to Internet searching. That is,they use the activity histories of individuals as a basis for determining the unique characteristics of individuals or communities to help people find ways to use the Internet that are best suited to them.

1. What is user profiling?
Internet search services usually provide identical
data to all users, but some recent net services provide
and display data that suits a user’s individual taste,characteristics, and situation. Search techniques thatuse user profiling to help users find the data they wantamong an enormous amount of information available
on the Internet are gradually being developed. User
profiling technology is intended to acquire information related to users’ interests and aims. There are twomain approaches.
(1) Direct method: Ask users directly to tell us
about their interests etc. via a questionnaire orby active selection.
(2) Indirect method: Record a user’s behavior andconstruct his/her activity history and then automatically identify current interests etc. from it.
The direct method is easy to implement, but theburden on the user will be heavy because it relies on
the user continually entering information into the system; therefore, it does not seem practical. NTT CyberSolutions Laboratories has developed user profiling
methods with the ability to learn from the user’sactivity history. These methods enable us to collectuser profiles using the indirect method, which greatly decrease the user’s workload. In this article, we
introduce two systems in which these methods have
† NTT Cyber Solutions Laboratories
Musashino-shi, 180-8585 Japan
E-mail: kato.yasuhisa@lab.ntt.co.jp

34

been implemented. Memory-Retriever (MR) [1]
accumulates and processes user operations on thelocal terminal (personal computer (PC)), while XappaLinks [2] focuses on the user’s activity history inblog (Weblog) space.
2. Memory-Retriever (MR): stores and retrieves
PC operations
MR is an application that extracts a user profile byautomatically recording the user’s behavior such asbrowsing websites, printing data, and sending or
receiving e-mail. It also retrieves the extracted profiles and shows the results. As Fig. 1 shows, MR consists of an action storage part, profile extraction part,and application programs. It runs on the user’s PC.
The action storage part monitors the Web browser,
operating system (OS), etc. and records the user’s
behavior as an activity history. “Text Selection”,
shown in Fig. 2, means to record the text that the user
selects when browsing a website as a sign of his/herinterest in the material. The action storage part consists of a core and a monitoring plug-in; more behaviors can be recorded by adding new plug-ins. For privacy protection reasons, data is encrypted before
being stored. The profile extraction part has threefunctions:(1) Experience score analysis
This function calculates “experience scores”,
which represent how important each behavior is tothe user such as web page browsing. In more detail,experience scores are calculated based on the accuNTT Technical Review

Special Feature

Application program 1

Application program 2…

Profile extraction partExperience score
extraction

KeywordextractionUser
profileCore activity
extraction

Web browser

MailerPrint

Copy and paste

Window state

Text selection

Keyboard

Mouse

Action storage part Action storage part core

Activity
history…

Monitor plug-in

Fig. 1. System configuration of MR.

Selected text

Providing personalized service
ServiceprovidersUser’s PC
Internet

Server-linked
programProfileextraction part
Action storage
partApplication
programUser
profileUser profile transmission

Fig. 2. Text selection.

Fig. 3. User profile usage example.

mulation of the times when a PC window remains
active and also that of the frequency of print, copy,and paste operations performed by the user. Thesescores cannot be calculated from the simple accesslogs held in Web servers.
(2) Keyword detection
This function extracts keywords from the recorded
behaviors to index them. The most frequent keywords are helpful in determining the content in which
the user is highly interested.
(3) Key action sequence integration
This function extracts the chronological sequenceof user’s actions that include common keywords, as a“key action sequence”. A key action sequencedemonstrates that a user acted for the same purpose
for a certain period of time, which is important to theuser.
An application program has been developed foreach user profiling service. As shown in Fig. 3, user
profiles are first stored in the user’s PC. However, wemay use the user profiles in different ways; that is, theinformation needed to support the desired service
will be sent to the service provider through the Internet, and personalized service will be provided basedon the sent information.
MR has a function for retrieving the user profiles
and displaying search results. The “key action
sequences” when the keyword “NTT” was used areshown in Fig. 4. The results show that information,site, and laboratories were also extracted as the mostfrequently appearing keywords. From those results,
we can estimate the purpose of an action sequence.
The details of a key action sequence are shown in Fig.
5. You can see the individual actions forming the keyaction sequence. The figure also shows that individual actions are displayed here as thumbnails of website pages browsed. Those surrounded by a color
frame have high experience scores. At the same time,
we can see the link anchor text clicked by user and thetext selected by the “Text Selection” function, whichreveals the user’s interest or purpose.

Vol. 4 No. 8 Aug. 2006

35

Special Feature

Search word

Key action sequence

Frequent keyword

Fig. 4. User profile search results.

Selected text

Anchor text

NTT cyber trial

Fig. 5. Display of user profile details.

3. XappaLinks: supports blog communication
Weblogs (blogs), which enable individuals to easily and continuously exchange information over theInternet, provide unique communication functions
such as comments and trackbacks*1. Therefore, blogs
are becoming a dominant information medium fol36

lowing bulletin board services (BBS), websites, andmailing lists. However, it is hard to acquire all thecommunication activities among blogs, and users
must put in a lot of effort to determine the relationship*1 Trackback is a mechanism for communication among blogs.

NTT Technical Review

Special Feature

Table of all blog
community members

See blog community characteristics at a glance- number of members in community- ranking by degree of activity- ranking by degree of accessibility- recently expanded blog communities, etc.

Table of blog communitiesIn blog communities, blog
space naturally appears
and disappears repeatedly.

Using comments andtrackbacks to extract,track, and analyze
blog communities

I think I can make friends
with these people.
Community
information

Some of thesepeople really likeexchanging views.

Extraction/analysis
A blog makes links to other blogs withcomments and trackbacks. It may formor disjoint a blog community.

Fig. 6. Blog communication profiling technology.

among bloggers by viewing the contents of eachblog. XappaLinks solves such problems by putting
blog communication profiling technology and blog
profiling technology to practical use.
Blog communication profiling technology (Fig. 6)
includes a blog community extraction engine and ablog community analysis engine. The blog community extraction engine tracks communication activities
between blogs such as comments or trackbacks toextract frequently communicating blogs. The blog
community analysis engine analyzes communication
activities in the extracted blog community to quantify the characteristics of the community such as thedegree of activity and openness to outside opinion. It
also extracts topics that frequently appear in the community.
Such extraction or analysis results are ranked on thescreen of a community browser which runs over a
WWW (World Wide Web) browser so that users cansee the characteristics of each blog community or aVol. 4 No. 8 Aug. 2006

list of blogs in which they participate. Moreover, tosee the characteristics of blogs, users can use XappaLinks to search not only by keyword as usual, butalso by blog characteristics.
4. Community badges
Each blog community tends to be aloof from realsociety connections, just like a social networking service (SNS), so it can be said that the communities
favor looser connection on the network. Therefore, it
is difficult to recognize to what blog community auser belongs, what kind of people there are in thecommunity, and to what extent his/her field of activities has expanded.
A community badge is part of the XappaLinks system’s mechanism for building a new blog community for a blogger who registers an image as a symbolof the blog community. A badge made from the registered image will be put on the members’ blogs (Fig.
37

Special Feature

Community badge

Community bloginformation
Analysis

Register image to be used as a badge.

Penguin community

CrawlerCommunity
list
Using pin-badge to reflect state ofcommunication helps to stimulate activity.

Wow!

Community creation

Center oftopic
I want to put this cute
penguin on my blog.

Penguin community

I’d like to chat withother people
who like penguins.

Solidarity by sharing
the same pin-badge

Penguin community

Attractive badges
stimulate community members.

Communication via
comments and trackbacks

Community portal

Penguin community

Penguincommunity

This looks interesting—I think I’ll join them.

Ferretcommunity

Fig. 7. Community badge.

7). Affixing the same badge creates a sense of unity
among the members and not only gives them a senseof belonging to the community all the time but also
encourages new members to participate in the community.
Community badges can also be used to present therole of each blog in the blog community based on theestimation extracted by the blog profiling technology,
which extracts the characteristics of each blog basedon observations of blogger communication activities
such as comments or trackbacks and the frequency of
blog entry updates. Community badges categorize
the role of each blog into three typical types based on
the calculated indexes or characteristic values such as
how many trackbacks have been collected and whatpercentage of comments/trackbacks from others havebeen replied to. In this way, assigning community
badges to present the role of each blog is expected tomake bloggers quickly realize their roles and to maintain and improve motivation for updating blog entries
or building up communication activities.

38

5. Future development
User profiling technology can be used not only fora personal tool that automatically provides information to support the user, but also for services such as
advertising, marketing, recommendation service inelectronic commerce sites, and social services thatshare profile information. To develop more accurate
user profiles, we are committed to expanding therange of activity history and analyzing the information in more detail. We intend to verify the effectiveness of the user profiling technology by applying it topractical services.
References
[1]

[2]

T. Morita, T. Hidaka, T. Kura, K. Ooura, and Y. Kato, “Desktop
search system based on the Action-Oriented algorism,” (sic) Proc.
APSITT2005 (6th Asia-Pacific Symposium on Information andTelecommunication Technologies), pp. 204-207, 2005.
A. Miyata, H. Matsuoka, S. Okano, S. Ishiuchi, N. Arakawa, and Y.
Kato, “XappaLinks: Blog Community Support System,” IEICE General Conference D-13-2, 2006 (in Japanese).

NTT Technical Review

Special Feature

Tetsushi Morita

Shinichi Okano

Research Engineer, Media Computing Project,
NTT Cyber Solutions Laboratories.
He received the B.E. and M.E. degrees in engineering science from Kyoto University, Kyoto,in 1996 and 1998, respectively. Since joining
NTT Software Laboratories in 1998, he has been
engaged in research on e-commerce systems. His
current research interests include information
technology for personal data management andinformation retrieval. He is a member of theInformation Processing Society of Japan (IPSJ).

Engineer, Media Computing Project, NTT
Cyber Solutions Laboratories.
He received the B.E. and M.E. degrees in computer science from Keio University, Kanagawa,in 1996 and 1998, respectively. He joined NTT
Software Laboratories, Tokyo, in 1998. He iscurrently engaged in R&D of blog communitysystems and blog profiling systems. He is a member of IEICE.

Tetsuo Hidaka

Akimichi Tanaka

Research Engineer, Media Computing Project,
NTT Cyber Solutions Laboratories.
He received the B.E. and M.E. degrees ininstrumentation engineering from Keio University, Kanagawa, in 1993 and 1995, respectively.
He joined NTT Telecommunication Networks
Laboratories in 1995. His current interests
include human-computer interaction and information retrieval systems. He is a member of theInstitute of Electronics, Information and Communication Engineers (IEICE) of Japan andIPSJ.

Senior Research Engineer, NTT Cyber Solutions Laboratories.
He received the B.E and M.E. degrees in precision machinery engineering from the Universityof Tokyo, Tokyo, in 1985 and 1987, respectively. He joined NTT Information Processing Laboratories, Tokyo, in 1987. He has been engaged in
R&D of artificial intelligence, pattern recognition, and educational systems. He is a member ofIEICE and IPSJ.

Hisanobu Matsuoka

Yasuhisa Kato

Research Engineer, Media Computing Project,
NTT Cyber Solutions Laboratories.
He received the B.S. and M.S. degrees inphysics from Sophia University, Tokyo, in 1992
and 1994, respectively. He joined NTT Software
Laboratories, Tokyo, in 1994. His current
research area is analysis of communication activities in blog space. He is a member of IEICE.

Senior Research Engineer, NTT Cyber Solutions Laboratories.
He received the B.E and M.E. degrees inapplied systems science from Kyoto University,Kyoto, in 1988 and 1990, respectively. He joined
NTT Information Processing Laboratories,Tokyo, in 1990. He has been engaged in R&D ofvoice processing, educational systems, andsearch systems. He is a member of the JapaneseSociety for Artificial Intelligence and IPSJ.

Vol. 4 No. 8 Aug. 2006

39