190 likes | 206 Views
This presentation discusses the Lumière project, a Bayesian user modeling approach that infers the goals and needs of software users. It covers topics such as constructing user models, accessing software events, developing a language, and creating a persistent user profile. The presentation also explores the use of influence diagrams, classes of evidence, and temporal reasoning in user modeling. Additionally, it discusses the application of Lumière in the real world, including the Office Assistant.
E N D
The Lumière Project: Bayesian User Modeling for Inferring the Goals and Needs of Software Users. Eric Horvitz, Jack Breese, David Heckerman, David Hovel, Koos Rommelse Microsoft Research Redmond, WA 98052 Presented by Suman B. Pakala, Feng Xu CSCE 582 Fall 2002 Instructor: Marco Valtorta
Introduction • Lumière started in 1993. Components used in office 95, 97. • Constructing Bayesian user models for reasoning • Gaining access to a stream of events from software applications • Developing a language • Developing persistent user profile • Development of an overall architecture
Bayesian user modeling • Modeling the beliefs, intentions, goals and needs of users. • Goals are tasks or subtasks. • Needs are either information or automated actions.
Influence Diagram An influence diagram for providing intelligent assistance given uncertainty in a User’s background, goals and competency in working with a software application
Classes of evidence • Search • Focus of attention • Introspection • Undesired effects • Inefficient command sequence • Domain-specific syntactic and semantic content
A portion of a Bayesian user Model for inferring A Model used for inferring the likelihood of the user needing assistance, considering profile information as well as observations of recent activity
Markov Model forTemporal Reasoning Markov model for temporal reasoning assuming dependencies among the goals Of a user in adjacent time periods. A persistent Profile variable influences Goals and observations in all periods.
Temporal Reasoning P(E_i_tn | Goal_t0) P(E_i_t-1 | Goal_t0) P(E_i_t0 | Goal_t0) Lag of event from present moment Formulation of the temporal reasoning problem as a set of single-stage problems. We directly assess conditional probabilities of actions as a function of time that passed since actions occurred.
Bridging the gap between System Events and User Actions User’s Actions that can be accessed: • Mouse and keyboard actions • Status of data structures in Excel files • Menus being visited • Dialog boxes being opened and closed • Selection of specific objects like charts, etc. They are modified into System events and modeled as: • Menu Surfing • Mouse Meandering • Menu jitter, etc.
Lumière Events Language • Why? – To make modeling flexible • Primitives: • Rate(xi,t) • One of({x1, ….,xn},t) • All({x1, ….,xn},t) • Seq(x1, ….,xn,t) • Dwell(t) • Example of an event: User dwelled for atleast t seconds, following a scroll
Architecture & Control Policies Architecture: • Events => Time stamped observations • Observations => Bayesian Model => P(user needs) • If Query, P(events) + Bayesian term spotting => PP(needs) • Also, L(needs) => Control(automated assistance) Control Policies: • Pulsed strategy • Event-driven control policy + trigger events • Augmented pulsed approach • Deferred analysis
Lumière / Excel In Operation Atomic events stream, Probability distribution over needs, Assistance Monitoring agent, User interface for the prototype
When a query is made: (a) (b) (a) Inference based on actions. (b) Revised distribution after query is made
Autonomous display of assistance Actual application, Assistance monitoring agent, Offer of assistance
Beyond Real time assistance Information that is recommended for the user to review offline
Lumière in the real world: Office Assistant • Broader but shallower models (compared with Lumière/Excel) • Rich set of context variables • No persistent user profiling, No competency reasoning • Small set of relatively atomic user actions • Only the most recent events are considered • If words available, context and recent actions are not considered • Inference results are available only when user requests (Autonomous assistance not employed)
Current Research • Learning Bayesian models from user log data • Integrating new sources of events • Automated dialog for users to express goals and needs • Integrating vision and gaze tracking • Use of Value of Information computations (to engage user in dialog to access costly information about activity and program state)