Personalized Hypermedia Presentation Techniques for Improving
Online Customer Relationships
Alfred Kobsa, Jurgen Koenemann and Wolfgang Pohl
Presented by Lei Zan, Amy Henckel
Outline
Why personalized systems (an example)What input to personalized systemsHow to acquire dataHow to represent and inferHow to produce adaptationConclusions
Introduction
Personalization, micro-marketing, one-to-one marketing Provide values to customers by serving them as individuals Improve customer relationship, turn web visitors to customers
Web provides a platform to realize this business model It facilitates large amount of data collection It supports dynamic creation of content/presentation It enables global presence
Introduction
Personalized hypermedia application Adapts the content, structure, and/or presentation of the networked
hypermedia objects to Each individual user’s characteristics, usage behaviour, and/or usage
environment
Adaptability and adaptivity Adaptability: the user is in control of adaptation steps Adaptivity: the system performs all adaptation steps automatically Adaptability and adaptivity coexist
Introduction
Personalization process includes Acquisition
Identify info. about user characteristics, usage behaviour and environment
Make this info. accessible to adaptation component Construct user/usage/environment model
Representation and secondary inference Express content of user/usage models appropriately Draw further assumptions about users, their behaviour &
environment
Production Generate adaptation, given a user/usage/environment model
One example: AVANTI
Background A project (1996-1998) funded by the European
Commission
Tourist information system: assist travel planning, e.g. Transportation, accommodation, day-to-day activities
Adaptation is applied at both user interface, content level
One example: AVANTI
Demonstration
Scenario: You are a student in Roma who studies history of
art decides to go to Siena for one week to study the culture there.
You are suggested to use AVANTI system to get information for your trip
One example: AVANTI
You are asked to fill in a questionnaire to get information to tailer to your specific need.
One example: AVANTI
The system load a new page. For new users, a dialog box informs that the page has been loaded to avoid confusion.
One example: AVANTI
Your first question is how to reach Siena from Roma. You find train route from Roma to Siena.
One example: AVANTI
If you are interested in churches, you are presented a list of churches by selecting appropriate options.
One example: AVANTI
A result of adaptivity: after picking one church, check route and working hours, etc, the system recognize you are interested in churches and list other church’ info as options for you.
One example: AVANTI
Three months later, you decide to go back to Siena again.
In the meantime, you have attended a course to learn how to use a computer.
Moreover, you have used many other times the AVANTI system.
One example: AVANTI
Interface Adaptivity: a list of links in the left side; no feedback dialog box; you are considered as an expert user now.
One example: AVANTI
A result of adaptivity: shortcuts and additional navigation support for quick access are provided, as you are recognized as expert.
Outline
Why personalized systemsWhat input to personalized systemsHow to acquire dataHow to represent and inferHow to produce adaptationConclusions & discussions
What are inputs to personalized systems
User data Info. about user characteristics
Usage data User’s interactive behaviour
Environment data (of user) Software Hardware Physical environment
What are inputs to personalized systems
User data Demographic data
Record data (e.g. name, address, phone numbers) Geographic data (e.g. area code, city, state) User characteristics (e.g. age, sex, education) Registration for information offerings
Note: today’s personalized system contains mainly those demographic data and purchase data. It has high value when combined with high-quality statistical data, e.g.
purchase behaviour of different user groups
What are inputs to personalized systems
User data
User knowledge (about concepts, relationships between concepts in an application domain)
e.g. Generate expertise-dependent product description
User skills and capabilities e.g. Adaptive help messages for UNIX commands e.g. AVANTI takes the needs of disabled people (wheel-chaired,
vision-impaired)
What are inputs to personalized systems
User data User interests and preferences
e.g. Sell cars to different customers emphasizing different attributes (speed, safety, etc)
User goals and plans Find information on a certain topic, or shop for some products Support users to achieve their goals e.g. Present to users only information relevant to their goals
What are inputs to personalized systems
Usage data: interaction behaviourObservable data
Selective actions Indicator of user’s interest, or unfamiliarity, or preferences
Viewing time Potential indicator of user interest
Ratings Indicate how relevant or interesting the object is e.g. eBay, Amazon
Purchases and purchase-related actions Strong indicator of user interest
What are inputs to personalized systems
Usage dataUsage regularities: further processing of data
Usage frequency e.g. AVANTI monitors how often individual users visit
certain pages and introduces shortcut links
Situation-action correlations e.g. Email assistant: suggest how to deal with incoming
emails, based on statistics of correlations between previous emails (situations) and how user processed them (actions)
Action sequences Used to recommend macros for frequently used action
sequences, predict future actions
What are inputs to personalized systems
Environment data: impact web usage Software environment
Brower version and platform, availability of plug-ins, java and javascripts
Hardware environment Bandwidth, processing speed, display devices, input devices
locale Users’ location, characteristics of locale (e.g. noise level )
Outline
Why personalized systemsWhat input to personalized systemsHow to acquire data How to represent and inferHow to produce adaptationConclusions & discussions
How to acquire data
User modelCollection of explicit assumptions about user data
Usage modelConstruct aggregated information about a user’s
interactive behaviour from observations
Environment model
How to acquire data
User model acquisition methodsActive acquisition: User-supplied information
Questionnaires, initial interviews
e.g. AVANTI welcome page asks questions (computers, AVANTI systems, about disabilities)
Downside: paradox of the active user User wants to get started immediately and get work done soon Time is saved in the long term by taking initial time to optimize
system
How to acquire data
User model acquisition methodsPassive acquisition
Acquisition rules Refer to observed user actions or straightforward interpretation
of user behaviour e.g. a classic domain-independent rule: “If the user wants to
know X, then the user does not know X”
Plan recognition Recognize user’s goal from observed user interactions Suitable for applications with a small number of goals and ways
to achieve the goals
How to acquire data
User model acquisition methodsPassive acquisition
Stereotype reasoning Categorize and associate a stereotype with each category Stereotype contains standard assumptions about members of
that category and activation conditions Evaluate activation conditions, apply content of stereotype as
assumptions to the particular user e.g. if the user is interested in childcare, activate “parent”
stereotype
How to acquire data
Usage model acquisition methods
Simple technique Record user actions in order to obtain information about user
behaviour
Learning algorithms Memory-based learning, reinforcement learning, induction of
decision tree e.g. learn situation-action correlations; these data are used to
predict user behaviour in future situations
How to acquire data
Environment data acquisition methods Software environment: http header
Hardware environment Difficult to assess e.g. AVANTI evaluates bandwidth from media download time
Locale Location can be recorded in database or use GPS
Outline
Why personalized systemsWhat to input to personalized systemsHow to acquire data How to represent and inferHow to produce adaptationConclusions & discussions
How to represent and infer
Why need representation and inference Some applications operate directly on results of
user/usage/environment model Some applications need user/usage model representation
and further inference
Deductive reasoning (from general to specific) Inductive reasoning (from specific to general)
How to represent and infer
Deductive reasoning (from general to specific) Logic-based representation and inference
e.g. Concept formalism: form user knowledge base
Shortcomings of logic-based approaches Limited ability to deal with uncertainty and with changes to the
user model
Representation and reasoning with uncertainty Bayesian network, evidence-based, fuzzy logic approach for
probabilistic user model representation
How to represent and infer
Inductive reasoning (from specific to general): Learning about the users: monitor users’ interaction with
system and draw general conclusions based on observations
Learning is used to construct “interest profiles” Interest profiles represent a user’s interest in an object, based on
an assessment of his interest in specific features of the object e.g. assumption of user interest in movies is determined by
preferences about actor, director and other movie features Neural network, machine learning, nearest-neighbour algorithm,
induction of decision trees, etc.
Top Related