A User-Centered Context Aware Learning Framework for Application Personalization

randombroadAI and Robotics

Oct 15, 2013 (4 years and 24 days ago)

76 views


A
User
-
Centered
Context

A
ware
Learning F
ramework for
Application
P
ersonalization


Abstract

We

evaluate if contextual information collect
ed from
a user’s environment
improves
the reminder
-
prediction accuracy of Sycophant,
our context
-
aware calendaring application and research test
bed
.

User
-
related contextual information collected
from ten users in our study shows that
Sycophant
successful
ly
learnt
reminder
-
type preferences
for six
users in our study. Based on
our user study’s
promising results
we
outline
a
user
-
centered
context aware
learning
framework capable of
enabling multiple
applications
’ user interfaces

to
personalize their actions
t
o individual users.

Keywords

context, user
-
context, machine learning
.

ACM Classification Keywords

H5.2 [Information interfaces and presentation],
User Interfaces.


Graphical User Interfaces
.

1.
Introduction

Present day computer applications are
partiall
y
aware of a user and her environment. Activity o
f an
internal clock, keyboard and

mouse provide input or
context to these applications
f
o
r

interact
ing

with a
user. Such applications rely on meager contextual
Copyright is held by the author/owner(s).

CHI 2007, April 28


May 3, 2007, San Jose, USA

ACM 1
-
xxxxxxxxxxxxxxxxxx.

Anil Shankar

Dept. of Computer Science & Engg.,

University of Nevada, Reno

Reno
,
NV 89557
USA

anilk@cse.unr.edu


S
ushil J. Louis

Dept. of Computer Science & Engg.,

University of Nevada, Reno

Reno, NV 89557USA

sushil@cse.unr.edu


Sergiu Dascalu

Dept. of Computer Science & Engg.,

University of Nevada, Reno

Reno, NV 89557USA

dascalus@cse.unr.edu

Ramona Houmanfar

Dept. of Psychology,

University of Nevada, Reno

Reno, NV 89557USA

r
amonah@nevada.unr.edu


Linda J. Hayes

Dept. of Psychology,

University of Nevada, Reno

Reno, NV 89557USA

lhayes@nevada.unr.edu



2

information
to
make weak attempts
in
adapt
ing

t
heir
behavior to individual user needs.

Consider the scenario of Jill

listening to music
on
her
media player. Jill

is

likely
to pause
her
media player if
the phone in her office rings
,
and turn the volume down
if she is talking with someone in her office.

In the same
situation, Jack might prefer to turn down the volume on
his media player if the phone
rings in his office; he
might pause the media player while
talk
ing with
someone in his office.

User preference for an
application action not only varies on t
he context in
which the application is used but the preference als
o
differs

according to individual users.
A user
-
centric
media player would be context aware and would adapt
its actions based on user preferences.
For example,
Jill
’s media player could lear
n to pause whenever the
phone in her office rings.

A user’s environment is a rich source for
simple
contextual information like
the existence of
motion
or
speech

-

in addition to the activity of an internal clock,
keyboard and mouse.
We harness such conte
xtual
information using simple sensors like a web
-
camera to
detect motion and a microphone to detect
the presence
or absence of
speech. Next, we
mine

this data using
machine learning techniques to build a user model. We
then make
this

user model
available
through an API
to
enable multiple
applications’
user interfaces to
personalize their actions to individual users.
In this
paper, w
e
report results on
an empirical study with ten
users t
hat

investigate
d

if contextual information from a
user’s environment he
lp
s

our context
-
aware
calendaring interface

and research test bed
, Sycophant,
to personalize itself to individual users

[3]
. On the
combined data from all the users, user
-
related
contextual information (motion, speech, user
-
identity)
improved
Sycophant
’s

performance in selecting the
calendar reminder type to use in informing users of
their appointments.

In this paper, we provide a deeper
analysis of the experimental data from individual users
and propose a
user
-
centered generalized context
-
aware
framework

to enable applications
that

adapt their
actions
to individual users
.
F
or six users in our study,
contextual information
helped

Sycophant to adapt
ively

generate
reminder
s. W
e need to collect
more data
from
the remaining four users
to arrive at any conclusi
on
regarding the effect of user
-
context on learning
reminder
-
type preferences

We
describe what we
mean by
context

in our research
in the next section. Section 3 provides our user study
details.
Results in Section 4 analyze

the effect of
contextual informat
ion for individual users in our study.
Based on these results, Section 5 gives details of our
user
-
centered context aware framework currently
under implementation.
Section 6 summarizes the
lessons learnt from our study and our plan to
incorporate applicati
ons

within our user
-
centric context
framework
.

2.
User
-
Context
and Related Work

We use Dey’s definition of context in our research

[5]
.
Dey defines
context

as “
Context is any information that
can be

used to characterize the situation of an entity.
An enti
ty is

a person, place or object that is considered
relevant to the

interaction between a user and an
a
pplication, including the user and the application
t
hemselves”.

We consider
user
-
context
as
“Any
information regarding a user’s presence (or absence) in
t
he vicinity of a computer”

[1].
Internal user
-
context is
any information that
a
computer senses internally like
clock activity, keys typed and mouse movement.
In this

3

paper, we consider the presence or absence of user
movement or speech as e
xternal user
-
co
ntext
.


In the area of context
-
aware environments and
interfaces, Bailey and Adamzyck quantitatively showed
the disruptive effects of interruptions on the
productivity of a user [7]
.

Horvitz et al. used cost
-
benefit approaches and statistical methods to i
nfer
decisions about interrupting users [2].
Fogarty
has
built
predictive statistical models to infer the state of
interruptability of a user
[4]
.
Our user
-
centered sensor
-
based approach to collect contextual information
extends all these ideas.
In additio
n to predicting the
state of interruptability of a user
(
like Fogarty
)
, w
e also
predict the type
of interrupt (
reminder
) for a user. Our
results also indicate that learning to predict the type of
interrupt (
reminder
)
is a harder task than just
predicting w
hen to interrupt a user.

3.
Results of our User Study.

We simulate
d

an average work day

in our research lab
for

our user study.
Student
activity
comprised reading
research papers while listening

to music and being
interrupted
by
neighbors.
We

investigate
d

if contextual

information
collected
from a user’s environment help
ed

Sycophant

to accurately predict a user
-
preferred
reminder

type.

Sycophant’s
reminder
s were of four
different types: visual, voice,
both
visual and voice
reminder
, and no
-
reminder
.

Each s
ubject (user)
participated in four separate
45
minute

sessions.
W
e
instructed a subject to read an

article within the first
30
minutes and answer questions pertaining

to the article
in the remaining
15
minutes during each session.
W
hile
a subject read an a
rticle
,

Sycophant generated different
reminder
s.
We set the
reminder

content
to help a
subject participate

in our study and answer questions
related to the article.

The session subject specified the
type of
reminder

as feedback to Sycophant whenever
Sycoph
ant generated an
reminder
.
More details of thi
s
user study

are
provided in [3
].

We collected the data
from ten subjects
and analyzed each subject’s data
to
evaluate the effect of contextual information on
Sycophant’s ability to adaptively generate user
pr
eferred
reminder

types.


We evaluate the performance of three machine learning
algorithms Zero
-
R, One
-
R and J48 on the individual
context data sets collected from the ten users in our
study.
Zero
-
R is a primitive learning scheme that
predicts the majority

class in categorical data or
average class if the class is
numeric. For example, if a
user
preferred a voice
reminder

in 7

out of
10
cases,
then Zero
-
R would predict that this subject

always
preferred a voice

reminder
. One
-
R generates a single
level decis
ion tree which tests only one particular
attribute and constructs a set of rules based only on
that attribute
[7
]. J48 is
Weka
’s implementation of Ross
Quinlan’s C4.5 decision tree [
7
].

Zero
-
R’s performance
forms

our basis
for evaluating

a machine learning

algorithm’s performance in our experiments.
We use a
two
-
sample t
-
test with a
95
percent confidence interval
to compare the performance of learning algorithm
s

across different data sets
.
Details about the
construction of user
-
context data sets are given i
n [1].


The
four
-
class

reminder

problem
is
S
ycophant’s task of
generating a

reminder
-
type from the set of four
reminder
-
types.
T
he
two
-
class
reminder

problem
is the
task of deciding whether or not to generate an
reminder

(interrupt) for a user.

Figures 1,
2 and show
the performance of 1R and J48 on the four
-
class
reminder

problem; Figure
3

show
s

the performance J48
on the two
-
class
reminder

problem.
1R’s performance
was similar to that of J48 on the two
-
class problem.
Average performance
(horizontal dotted
line all figures)
is the
test
-
set prediction accuracy
of a learning
algorithm
using all the features in the data set
on the
combined data set from all users (shown as ALL in the
graphs).



4


Figure 1
. Performance of 1R on the data sets c
ollected from
indi
vidual users on four
-
class
reminder

problem.


Both 1R and J48 perform better than
average for 6
0%
of the users on the four class reminder prediction
problem.

We also
noted that

1R’s and J48’s
performance
s were better than Zero
-
R on 70% of the
use
rs
. One
-
R stuff

Removing
external
user
-
context degraded
reminder
prediction performance for s
everal users.

This indicates
the
importance
of
external
user
-
context
for
personalization
.


Figure
2
. Performance of
J48

on the data sets c
ollected from
individual users on four
-
class
reminder

problem.

Figure 3 show
s

that
J48 had similar behavior (as
on the
four
-
class
reminder

problem) for di
fferent users on the
two
-
class
reminder

problem of predicting whether or
not to interrupt a user. We also note
that the predictive
accuracy is

higher on the two
-
class
reminder

problem
when compared to the four
-
class
reminder

problem.
Our results
on the two
-
class
reminder

problem
further
support Fogarty’s work on predicting the state of
interruptability of a user.
The lower predictive accuracy
on the four
-
class
reminder

problem shows that it is
harder to predict
an

interrupt (
reminder
) type
preference when c
ompared to
the task of
predicting
whether or not to interrupt a user.

When looking at the com
bined data from all users,
….
User identity helped
Sy
cophant to accurately predict
a

reminder
-
type.
This clearly indicates that user
-
related
contextual features helped Sycophant to adapt its

5

behavior to individual users.
These
results show the
promise for i
mplementing a user
-
centered context
aware framework to enable existing applications to
personalize themselves to individual users.



Figure
3
. Performance of J48 on the data sets collected from
individual users on two
-
class
reminder

problem.

5
. User
-
ce
ntered Context aware framework
for application personalization

Figure

5 shows the architecture of our proposed
framework to personalize applications based on
contextual information gathered from a user.
It consists
of five layers: application, learning ser
vices, user
-
context and sensors.
At the lowest level, we provide an
Application Programming Interface (API) to interface
sensors with a user’s external environment. For
example, we have a motion detection API for plugging
in a web camera to detect motion i
n the vicinity of a
user’
s computer.
We provide similar API’s for
interfacing different layers in our framework.
The data
collected from different context
-
sensors is stored in the
User
-
Context layer after formatting the raw data to
extract user
-
context fea
tures.
Next, a user model is
generated by choosing a machine learning algorithm
from the learning services layer.
Different applications

now plug
-
in to the top most
a
pplication layer

and use
the user
-
model predicted application action. For
example, a media

player could learn to predict pausing
the music for
Jill
. We believe that such adaptive
behavior will help
user
-
specific
application
personalization to improve
user

experience. We are
currently refining and testing our framework by
plugging
Sunbird

(Mozil
la foundation’s open
-
source
calendaring application)

into our framework

before
deploying

it to a diverse group of users to start long
-
term data collection.

6. Conclusions and Future Work

In this paper, we analyzed contextual information
collected from a u
ser study involving ten users. Our

results indicated that user
-
context helped Sycophant,
our calendaring application and research test
-
bed to

perform
better than average for six users
. Removing
user
-
context degraded the
reminder
-
predicti
on
accuracy of

our

machine learning

6

algorithms
.

Figure 5
.
Architecture of our u
ser
-
centered
c
ontext
-
a
ware
f
ramework
to
personaliz
e

applications.

Our results on the four
-
class
reminder

problem showed
that predicting an interrupt
-
type (
reminde
r
) preference
is harder when compared to predicting whether or not
to interrupt a user.
Knowing the identity of a user
helped Sycophant to better predict a user’s preferred
reminder
-
type showing that user
-
context
benefited
Sycophant

to adaptively generate
user
-
specific
reminder
s.
We outlined and provided details for a
modular generalized user
-
centered context aware
framework capable of supporting applications that can
personalize their actions to individual users.
We are
currently deploying our software to
start long
-
term data
collection to substantiate our hypothesis of creating
adaptive user interfaces that can improve user
-
experience by personalizing their actions to individual
users.

Acknowledgements

We thank the ten users in our study for their time. T
his
work was supported in part by contract number
s

N00014
-
0301
-
0104 from the Office of Naval Re
search

and National Science Foundation’s

EPSCoR’s NSHE
-
07
-
30.


References

[1]

Anil Shankar. Simple user
-
context for better
application personalization.
Master’s T
hesis, University of
Nevada, Reno, NV, 2006.
, 2006.

[2]

Eric Horvitz and Johnson Apacible. Learning and
reasoning about interruption.
Proc
.

Multimodal interfaces
,
pages 20

27, 2003.

[3]

Anil Shankar, Sushil Louis, Sergiu Dascalu, Linda
Hayes, Ramona Houmanfar. Use
r
-
Context for Adapative
User Interfaces.
Proc.
Intelligent User Interfaces, 2007

[4]

Fogarty, J.(2006). Constructing and Evaluating
Sensor
-
Based Statistical Models of Human Interruptibility.
Doctoral Dissertation , Human Computer Interaction
Institute, Carnegi
e Mellon University, February 2006.

[5]

Anind K. Dey, Gregory D. Abowd, and Daniel Salber.A
conceptual framework and a toolkit for supporting the
rapid prototyping of context
-
aware appplications.
Human
Computer Interaction
, 16, 2001.

[6]

Ian H.
Witten and

Eibe Fra
nk. Data Mining: Practical
machine learning tools with Java implementations. Morgan
Kaufmann, San Francisco, USA, 2000.

[7]

Piotr D. Adamczyk and Brian P. Bailey. If not now,

when? the effects of interruption at different moments

within task execution
.C
onferen
ce

on Human factors in
computing systems, pages271

278, 2004