52
Mood Sensing

Mood Sensing. Mood 2 We need to explicitly communicate the mood

Embed Size (px)

Citation preview

Page 1: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Mood Sensing

Page 2: Mood Sensing. Mood 2 We need to explicitly communicate the mood

2

Mood

We need to explicitly communicate the mood

Page 3: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Affective Computing(Mood and Emotion)

Audio/Video-based(AffectAura, EmotionSense)

Biometric-based(Skin conductivity,

Temperature, Pulse rate)Highly temporalHigh cost of deploymentHassle

Captures expressionsPower hungrySlightly invasive

3 of 30

Page 4: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Can your mobile phone infer your

mood?From already-

available, low-power information?*

* No audio/video sensing, no body-instrumentation

Page 5: Mood Sensing. Mood 2 We need to explicitly communicate the mood

5

• Mobile devices have many sensors• Senses the physical world

• Aim to implement automatic mood sensors • Automatically shares the mood with the close friends and family• Share in social network

• Important application • Video / music recommendation (based on the view’s mood)• Parent may cheer up the son

Page 6: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Mood is…

• … a strong social signalo Drives communicationso Drives interactionso Drives activity patterns

6 of 30

… a persistent long-lasting state

Lasts hours or daysEmotion lasts seconds or minutes

Page 7: Mood Sensing. Mood 2 We need to explicitly communicate the mood

7

Key idea• Smartphone has a rich information

o With whom we communicateo What application we use

• People use their smartphone differently o Depending on the mood

Page 8: Mood Sensing. Mood 2 We need to explicitly communicate the mood

How is the user communicating?

Maybe people text more when they’re happy and call more when they are angry

Call mom when sad

Longer text messages

Page 9: Mood Sensing. Mood 2 We need to explicitly communicate the mood

What apps is the user using?

Social applicationsGamesWeb Browser

Page 10: Mood Sensing. Mood 2 We need to explicitly communicate the mood

10

Proposed approach• Doesn’t require extra hardware/sensors• Microphone/camera

Page 11: Mood Sensing. Mood 2 We need to explicitly communicate the mood

MoodScope ∈ Affective Computing

Audio/Video-based

Usage Trace-based(MoodScope)

Biometric-based

Very direct, Fine-grainedHigh cost of deployment

Captures expressionsPower hungrySlightly invasive

Passive, ContinuousHow to model mood?

11 of 30

Page 12: Mood Sensing. Mood 2 We need to explicitly communicate the mood

12

Outline• User study with 32 participants

o Focus group discussion to learn how mood plays a role in device interaction

o 2 months field study reports• Daily smartphone usage log• Self reported mood data

o Based on the collected users’ data• Build statistical mood models• Infer participants mood from the smartphone

usage pattern

Page 13: Mood Sensing. Mood 2 We need to explicitly communicate the mood

13

Mood inference engine• Infer mood of a user based on his smartphone

usage history• Two components

o Phoneo Cloud

Page 14: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Phone

Mood Inputs/Usage Logs

Mood and Usage History

Cloud

Mood ModelMood Model

Current Usage Model

Training

Inferred Mood

Resource-friendly Implementation

14 of 30

Page 15: Mood Sensing. Mood 2 We need to explicitly communicate the mood

15

Mood model• How can we make mood measurable• Philological research• Models

o Dimensionalo Discreteo Meaning orientedo Appraisal theoryo etco etc

Page 16: Mood Sensing. Mood 2 We need to explicitly communicate the mood

16

Discrete model• Ekman presented six basic emotions (anger,

surprise, happiness, disgust, sadness and fear)• Extensions

Page 17: Mood Sensing. Mood 2 We need to explicitly communicate the mood

17

Dimensional • Emotional state is point in a continuous

dimensional space• Uni-dimensional model has one dimension

o PANAS (positive and negative affect scale )

• Multi-dimensionalo Two to three dimensionso PAD (Pleasure, Activity, Dominance)o Circumplex mood model

• Small number of dimensions to describe and measure mood

Page 18: Mood Sensing. Mood 2 We need to explicitly communicate the mood

happysadnervousdepressed excited

relaxed

calm

stressed bored

Circumplex model (Russell 1980)

attentive

18 of 30

Page 19: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Mood is…• … a persistent long-lasting state

o Lasts hours or dayso Emotion lasts seconds or minutes

• … a strong social signalo Drives communicationso Drives interactionso Drives activity patterns

19 of 32

• … a strong social signalo Drives communicationso Drives interactionso Drives activity patterns

Page 20: Mood Sensing. Mood 2 We need to explicitly communicate the mood

f ( ) = moodusage

20 of 30

• Smartphone usage and mood are related.• We don’t know which one causes which.• But we know there’s some relationship

there.• We believe that we can train a machine to

recognize mood from smartphone usage. This is the crux of MoodScope.

Page 21: Mood Sensing. Mood 2 We need to explicitly communicate the mood

21

User study:Pre-study focus group

Two part• Impact of mood changes on smartphone usage

o Usage of different application, o Communicate different people

• Participant’s opinion on mood sharing o With whom she could share moodo How to publish moodo etc

Page 22: Mood Sensing. Mood 2 We need to explicitly communicate the mood

22

Field study• Collected real world data from 32 participants

over 2 months • Study the correlation between mood and

smartphone intersection • Involves two software

o Mood journaling applicationo Background logger

Page 23: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Mood Journaling App

User-base32 users aged between 18 and 29

11 females 23 of 30

Report use’s mood

User input 4 times a day

Five options

Page 24: Mood Sensing. Mood 2 We need to explicitly communicate the mood

24

History

Page 25: Mood Sensing. Mood 2 We need to explicitly communicate the mood

iPhone Livelab Logger• Logger collects

participants smartphone interactions

• To link with collected mood

• Operates in background– No user intervention

• Data is archived to server/cloud

25 of 30

Gather relevant information for feature table

Page 26: Mood Sensing. Mood 2 We need to explicitly communicate the mood

iPhone Livelab Logger• Web history• Phone call history• Sms history• Email history• Location history• App usage

26 of 30

Page 27: Mood Sensing. Mood 2 We need to explicitly communicate the mood

iPhone Livelab Logger• Web history• Phone call history• Sms history• Email history• Location history• App usage

Runs as shellHash private dataUploads logs to our server nightly

27 of 30

Page 28: Mood Sensing. Mood 2 We need to explicitly communicate the mood

28

• Quantitatively understand user response to mood journalism system

• Five level scores P1-P5, A1-A5

Very displeased

Response rateMood persistence

Page 29: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Inference

• Detect a mood pattern

• Validate with only 60 days of data

• Wide range of candidate usage data

• Low computational resources

29 of 30

Page 30: Mood Sensing. Mood 2 We need to explicitly communicate the mood

30

Design of model • Crux of the model

o Ability to predict user’s moodo Supervised ML

• How user’s mood can be inferred from usage log analysis

• Taskso Construction of daily mood sample

o Usage log feature table

Page 31: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Daily Mood Averages• Mood changing slow

over time

• Take the average over a day

• Separate pleasure, activeness dimension

• Sixty (Pleasure-Activity) pairs for each user

_______________4

Σ( )

31 of 30

Page 32: Mood Sensing. Mood 2 We need to explicitly communicate the mood

32

Usage record• Build feature table on the usage records collected

by logger

• Focus on two categorieso Social interaction o Routine activity

Page 33: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Social interaction• Communication

o SMSo Emailo Phone Calls

• To whom?o # words in

messages, mailo Length/Duration

call

Consider “Top 10” Histograms

How many phone calls were made to #1? #2? … #10?

How much time was spent on calls to #1? #2? … #10?

33 of 30

?

?

Creates 6 social interactions, 10 dimensional histogram in feature table

Page 34: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Routine activity • Usage Activity

o Applications usage o Websites visitedo Location History

Usage of 10 most frequent app, webpages

• Which (app/site/location)?o # instances

34 of 30

Cluster the locations => approx location

Count user visit to each approx location

• Duration of time an application was used

Page 35: Mood Sensing. Mood 2 We need to explicitly communicate the mood

35

• Group applications by (12) type (build in, communication, game, entertainment etc)

• Application usage by each user • Application duration

12 dimensional vector

Routine activity

Page 36: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Previous MoodTime series component

• Use previous 2 pleasure-activity pairs of mood labels

36 of 30

Page 37: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Data Type Histogram by: Dimensions

Email contacts# Messages 10# Characters 10

SMS contacts# Messages 10# Characters 10

Phone call contacts# Calls 10Call Duration 10

Website domains # Visits 10Location Clusters # Visits 10

Apps# App launches 10App Duration 10

Categories of Apps# App launches 12

App Duration 12Previous Pleasure and Activeness Averages

N/A 4

37 of 30

Page 38: Mood Sensing. Mood 2 We need to explicitly communicate the mood

??

• Multi-Linear Regressiono Minimize Mean Squared Error

• Leave-One-Out Cross-Validation

38 of 30

Model Design

Regression on each mood dimension (pleasure /activeness)

• Cross validation• Train with 59

samples

Label: Mood average

Usage record

Page 39: Mood Sensing. Mood 2 We need to explicitly communicate the mood

39

Sequential Forward selection

• Subset Feature Selection during training• Pick subset Y features that gives best regression• Greedy approach• Y starts with empty set • Add feature x to Y that minimizes the mean error • Stops when reaches local minimum

Page 40: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Sequential Feature Selection

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 310

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8Improvement of model as SFS adds more

features

Number of Features Used

Mean

Sq

uare

d E

rror (Each line is

a different user)

40 of 30

1 3 5 7 9 11 13 15 17 19 21 23 25 27 290

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8Improvement of model as SFS adds more

features

Number of Features Used

Mean

Sq

uare

d E

rror

SFS chose 16.3 features per userSome users use 5, some 32

Page 41: Mood Sensing. Mood 2 We need to explicitly communicate the mood

41

Personalized mood model

• Multi-linear regression on each user data individually

• Average Mean square error: 0.075, SD: 0.05• Minimum: 0.002, maximum: 0.176

On average 93.1% of daily pleasure averages and 92.7% activeness averages have error under 0.25

0 10 20 30 40 50 602

3

4

Mood (Pleasure)Estimated Mood

Days

Dail

y M

ood

A

vera

ge

Page 42: Mood Sensing. Mood 2 We need to explicitly communicate the mood

42

All user mood model• Personalized model reports high accuracy

o Require individual tanning for long time

• One size fits all mood modelo Attempts to reduce the amount of training o Created from aggregate of all user’s data

• Results• Performs well for few user

o Minimum error 0.069o Average 0.296 (SD: 0.175)o Maximum: 0.79

• 66% of pleasure estimates have square error under 0.25

Page 43: Mood Sensing. Mood 2 We need to explicitly communicate the mood

43

Page 44: Mood Sensing. Mood 2 We need to explicitly communicate the mood

44

Hybrid model• Ideal mood model

o Blend together personalized (high accuracy)o All user model (no user training)

• Approacho Combines small amount of user specific training datao Large amount of data from general user population o Objective function

• Reduce the error (personalized data, data sourced from rest of the population)

Page 45: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Personalized Training

10 20 30 40 50 590%

20%

40%

60%

80%

100%

Incremental personalized model

Training Days

Mod

el

Accu

racy

45 of 30

All-user modelaccuracy

Page 46: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Personalized/All-userHybrid Training

10 20 30 40 50 590%

20%

40%

60%

80%

100%

Incremental personalized model

Hybrid mood model

Training Days

Mod

el

Accu

racy

46 of 30

Page 47: Mood Sensing. Mood 2 We need to explicitly communicate the mood

47

Page 48: Mood Sensing. Mood 2 We need to explicitly communicate the mood

48

Mood inference engine• Infer mood of a user based on his smartphone

usage history• Two components

o Phoneo Cloud

Page 49: Mood Sensing. Mood 2 We need to explicitly communicate the mood

Phone

Mood Inputs/Usage Logs

Mood and Usage History

Cloud

Mood ModelMood Model

Current Usage Model

Training

Inferred Mood

Resource-friendly Implementation

49 of 30

Page 50: Mood Sensing. Mood 2 We need to explicitly communicate the mood

50

Page 51: Mood Sensing. Mood 2 We need to explicitly communicate the mood

51

Discriminative Features

Calls

Emai

lSM

SW

ebApp

s

Loca

...

Prev

....

0

20

40

60

80

100

120 Pleasure

Activeness

Nu

mb

er

of

Featu

res

Page 52: Mood Sensing. Mood 2 We need to explicitly communicate the mood

52