780 likes | 800 Views
Learn about the importance and implementation of user modelling in adaptive systems, including different types of user models and their uses.
E N D
CSA3212:User-Adaptive Systems Topic 5: User Modelling Dr. Christopher Staff Department of Intelligent Computer Systems University of Malta
Aims and Objectives • Background to user modelling • User model implementations • Types of user model • Understanding user behaviour
Aims and Objectives • User-adaptive systems in general need to represent the user in some way so that the system (interface and/or data) can be adapted to reflect the user's interests, needs and requirements • The representation of the user is called a user profile or a user model
Aims and Objectives • UM has its roots in philosophy/AI, and the first implementations were in the field of natural-language dialogue systems • For adaptive systems, user model must learn (at least some of the) user requirements/preferences • User models can be simple or complex, but remember that you can only get out of them what you put in!
Uses of user models • Plan recognition • Anticipating behaviour/user actions • User interests • Information filtering • User ability • …
Why a user model is required in UAS • A user model is required to adapt the information space to reflect the users preferences, needs and requirements, amongst others • The level of adaptation in adaptive hypermedia systems is summarised in the following diagram, but can also apply to UASes
Classifications of User Model • Two main classifications of user model • Analytical Cognitive • Empirical Quantitative • Reference: • G. Brajnik, G. Guida and C. Tasso, “User Modelling in Intelligent Information Retrieval” in Information Processing and Management, Vol. 23, 1987, pp. 305-320
Empirical Quantitative • Empirical quantitative models make no effort to understand or reason about the user • Contain surface knowledge about the user • Knowledge about the user is taken into consideration explicitly only during the design of the system and is then hardwired into the system (early expert systems) • E.g., models for novice, intermediate, expert users • Fit the current user into one of the stored models
Analytical Cognitive • Try to simulate the cognitive user processes that are taking place during permanent interaction with the system • These models incorporate an explicit representation of the user knowledge • The integration of a knowledge base that stores user modelling information allows for the consideration of specific traits of various users
Taxonomies of User Models • Rich classifies analytical user models along three dimensions • Rich, E.A. (1983): 'Users are Individuals : Individualising User Models', in International Journal of Man-Machine Studies, Volume 18. (http://www.cs.utexas.edu/users/ear/IJMMS.pdf) • Gloor, P. (1997), Elements of Hypermedia Degisn, Part I (Structuring Information) Chapter 2 (user Modeling) Section 1 (Classifications and Taxonomy). • Section reference: http://www.ickn.org/elements/hyper/cyb13.htm • Book reference: http://www.ickn.org/elements/hyper/hyper.htm
1st Dimension: Canonical vs. Individual • Canonical User Model • User model caters for one single, typical user • Individual User Model • Model tailors its behaviour to many different users
2nd: Explicit & Implicit • Explicit User Model • User creates model himself/herself • E.g., selecting preferences in a Web portal • Implicit User Model • UM built automatically by observing user behaviour • Makes assumptions about the user
3rd: Long-term vs. short-term • Long-term user models • Capture and manipulate long term user interests • Can be many and varied • Frequently difficult to determine to which interest the current interest belongs • Info changes slowly over time
3rd: Long-term vs. short-term • Short-term user models • Attempts to build user model within single session • Very small amount of time available • Not necessarily well defined user need • user might not be familiar with terminology • Short-term interest can become long term interest…
History of User Modelling • UM and its history are linked to the history of user-adaptive systems • Based on the way in which the UM updates its model of the user, the domain in which it is used, and the way the interface is caused to change
History of User Modelling • For instance, UM + ratings = stereotype/probabilistic recommender system • UM + hypertext + adaptation rules = AHS • UM + user goals + pedagogy + adaptation rules = ITS • UM representation, and how it learns about its users tends to depend on the domain
History of User Modelling • Focusing on generic user modelling • Has its roots in dialogue systems and philosophy • Need to model the participants to disambiguate referents, model the participants’ beliefs, etc. • Early systems (pre-mid-1985) had user modelling functionality embedded within other system functionality (e.g., Rich (recommendation system); Allen, Cohen & Perrault (dialogue processing))
History of User Modelling • From 1985, user modelling functionality was performed in a separate module, but not to provide user modelling services to arbitrary systems • So one branch of user modelling focuses on user modelling shell systems 2001-UMUAI-kobsa (UM history).pdf
History of User Modelling • Although UM has its roots in dialogue systems and philosophy, more progress has been made in non-natural language systems and interfaces (PontusJ.pdf) • GUMS (General User Modeling System) first to separate UM functionality from application - 1986 (Finin)
History of User Modelling • GUMS • Adaptive system developers can define stereotype hierarchies • Prolog facts describe stereotype membership requirements • Rules for reasoning about them
History of User Modelling • At runtime: • GUMS collects new facts about users using the application system • Verifies consistency • Informs application of inconsistencies • Answers application queries about assumptions about the user
History of User Modelling • Kobsa, 1990, coins “User Modeling Shell System” • UMT (Brajnik & Tasso, 1994): • Truth maintenance system • Uses stereotypes • Can retract assumptions made about users
History of User Modelling • BGP-MS (Kobsa & Pohl, 1995) • Beliefs, Goals, and Plans - Maintenance System • Stereotypes, but stored and managed using first-order predicate logic and terminological logic • Can be used as multi-user, multi-application network server
History of User Modelling • Doppelgänger (Orwant, 1995) • Info about user provided via multi-modal user interface • User model that can be inspected and edited by user
History of User Modelling • TAGUS (Paiva & Self, 1995) • Also has diagnostic subsystem and library of misconceptions • Predicts user behaviour and self-diagnoses unexpected behaviour • um (Kay, 1995) • Uses attribute-value pairs to represent user • Stores evidence for its assumptions
History of User Modelling • From 1998 and with the popularisation of the Web, web personalisation grew in the areas of targeted advertising, product recommendations, personalised news, portals, adaptive hypertext systems, etc.
What might we store in a UM? • Personal characteristics • General interests and preferences • Proficiencies • Non-cognitive abilities • Current goals and plans • Specific beliefs and knowledge • Behavioural regularities • Psychological states • Context of the interaction • Interaction history PontusJ.pdf, ijcai01-tutorial-jameson.pdf
From where might we get input? • Self-reports on personal characteristics • Self-reports on proficiencies and interests • Evaluations of specific objects • Responses to test items • Naturally occurring actions • Low-level measures of psychological states • Low-level measures of context • Vision and gaze tracking ijcai01-tutorial-jameson.pdf
Techniques for constructing UMs • Attribute-Value Pairs • Machine learning techniques & Bayesian (probabilistic) • Logic-based (e.g.inference techniques or algorithms) • Stereotype-based • Inference rules kules.pdf
Attribute-Value Pairs • e.g., ah2002AHA.pdf • The representation of the user and of the domain are inextricably linked • What we want to do is capture the “degree” to which a user “knows” or is “interested” in some concept • We can then use simple or complex rules to update the UM and to adapt the interface
Attribute-Value Pairs • Particularly useful for showing (simple) dependencies between concepts • Complex ones harder to update • Can use IF-THEN-ELSE rules to trigger events • Such as updating a user model • Modifying the contents of a document (AHA!, MetaDoc) • Changing the visibility or viability of links
Overview of AHA! • Adaptive Hypertext for All! • Each time user visits a page, a set of rules determines how the user model is updated • Inclusion rules determine the fragments in the current page that will be displayed to the user (adaptive presentation) • Requirement rules change link colours to indicate the desirability of each link (adaptive navigation)
Attribute-Value Pairs • From where do the attributes come? • Need to be meaningful in the domain (domain modelling) • Can be concepts (conceptual modelling) • Can be terms that occur in documents (IR)
Attribute-Value Pairs • What do values represent? • Degrees of interest, knowledge, familiarity, ... • Skill level, proficiency, competence • Facts (usually as strings, rather than numerical values) • Truth or falsehood (boolean)
Simple Bayesian Classifier • Rather than pre-determining which concepts, etc., to model, let features be selected based on observation • SBCs are also used in machine learning approaches to user modeling • Instead of working with predetermined sets of models, learn interests of current user ProbUserModel.pdf
Simple Bayesian Classifier • Let’s say we want to determine if a document is likely to be interesting to a user • We need some prior examples of interesting and non-interesting documents • Automatically select document features • Usually terms of high frequency • Assign boolean values to terms in vectors • To indicate presence in or absence from document
Simple Bayesian Classifier • Now, for an arbitrary document, we want to determine the probability that the document is interesting to the user P(classj | word1 & word2 & ... wordk) • Assuming term independence, the probability that an example belongs to classj is proportional to
Syskill & Webert • Learns simple Bayesian classifier from user interaction • User identifies his/her topic of interest • As user browses, rates web pages as “hot” or “cold” • S & W learns user’s interests to mark up links, and to construct search engine query webb-umuai-2001.pdf, ProbUserModel.pdf
Syskill & Webert • Text is converted to feature vectors (term vectors) for SBC • Terms used are those identified as being “most informative” words in current set of pages • based on the expected ability to classify document if the word is absent from doc
Simple Bayesian Classifier • Of course, the term independence assumption is unrealistic, but SBC still works well • Algorithm is fast, so can be used to update user model in real time • Can be modified to support ranking according to degree of probability, rather than binary
Simple Bayesian Classifier • Needs to be “trained”, usually using small data sets • Works by multiplying probability estimates to obtain joint probabilities • If any is zero, results will be zero... • Can use small constant (0.001) instead (estimation bias) ...
Personal WebWatcher • Predicting interesting hyperlinks from the set of documents visited by a user • Followed links are positive examples of user interests • Ignored links are negative examples of user interests • Use descriptions of hyperlinks as “shortened documents” rather than full docs pwwTR.pdf
Personal WebWatcher • Also uses a simple Bayesian classifier to recommend interesting links • where TF(w, c) is term frequency of term w in document of class c (e.g., interesting/non-interesting), and TF(w, doc) is frequency of term w in document doc
Personal WebWatcher • “Training” set is set of documents that user has seen and user could have seen but has ignored • Uses short description of document, rather than document vector itself
Logic-based • Does a UM only contain facts about a user’s knowledge? • Can we also represent assumptions, and assumptions about beliefs? • Assumptions are contextualised, and represented using modal logic (AT:ac, or assumption type:assumption content) pohl1999-logic-based.pdf
Logic-based • We can also partition assumptions about the user
Logic-based • Advantage is that beliefs, assumptions, facts are already in logical representation • Makes it easier to draw conclusions about the user from the stored knowledge