Darwin Phones: the Evolution of Sensing and Inference on Mobile Phones

Preview:

DESCRIPTION

Darwin Phones: the Evolution of Sensing and Inference on Mobile Phones. Emiliano Miluzzo * , Cory T. Cornelius * , Ashwin Ramaswamy * , Tanzeem Choudhury * , Zhigang Liu ** , Andrew T. Campbell * * CS Department – Dartmouth College ** Nokia Research Center – Palo Alto. - PowerPoint PPT Presentation

Citation preview

Darwin Phones: the Evolution of Sensing and Inference on

Mobile Phones

Emiliano Miluzzo*, Cory T. Cornelius*, Ashwin Ramaswamy*, Tanzeem Choudhury*, Zhigang Liu**,

Andrew T. Campbell*

* CS Department – Dartmouth College** Nokia Research Center – Palo Alto

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evolution of sensing and inferenceon mobile phones

Emiliano Miluzzo

PR time

miluzzo@cs.dartmouth.edu

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

ok… so what ??

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

density

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

accelerometer

digital compass

microphone

WiFi/bluetooth GPS

….

light sensor/camera

sensing

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

accelerometer

digital compass

microphone

WiFi/bluetooth GPS

light sensor/camera

gyroscope

air quality /pollution sensor

sensing….

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

- free SDK- multitasking

programmability

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

- 600 MHz CPU

- up to 1GB application memory

hardware

computation capability is increasing

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

application distribution

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

application distribution

deploy apps onto millions of phones at

the blink of an eye

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

application distribution

collect huge amount of data for research

purposes

deploy apps onto millions of phones at

the blink of an eye

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

we want to push intelligence to the

phone

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

preserve the phone user experience

(battery lifetime, ability to make calls, etc.)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

- sensing- run machine learning

algorithms locally (feature extraction +

inference)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

- sensing- run machine learning

algorithms locally (feature extraction +

inference)

run machine learningalgorithms (learning)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

store and crunch big data(fusion)

run machine learningalgorithms (learning)

- sensing- run machine learning

algorithms locally (feature extraction +

inference)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

run machine learningalgorithms (learning)

store and crunch big data(fusion)

3 to 5 years from now our phones will be as powerful as a - sensing

- run machine learning algorithms locally

(feature extraction + inference)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

run machine learningalgorithms (learning)

store and crunch big data(fusion)

3 to 5 years from now our phones will be as powerful as a - sensing

- run machine learning algorithms locally

(feature extraction + inference)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

run machine learningalgorithms (learning)

store and crunch big data(fusion)

3 to 5 years from now our phones will be as powerful as a - sensing

- run machine learning algorithms locally

(feature extraction + inference)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

cloud infrastructurecloud - backend support

- Sensing

- run machine learning algorithms locally

(feature extraction + learning + inference)

run machine learningalgorithms (learning)

store and crunch big data(fusion)

3 to 5 years from now our phones will be as powerful as a

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

sensingprogrammability

cloud infrastructure

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

sensingprogrammability

cloud infrastructure

??

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

societal scale sensing

global mobile sensor network

reality mining using mobile phones

will play a big role in the future

end of PR – now darwin

Emiliano Miluzzo miluzzo@cs.dartmouth.edu

a small building block towards the big vision

Emiliano Miluzzo miluzzo@cs.dartmouth.edu

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

from motes to mobile phones

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evolution of sensing and inferenceon mobile phones

from motes to mobile phones

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evolution of sensing and inferenceon mobile phones

from motes to mobile phones

darwin

- classification model evolution

- classification model pooling

- collaborative inference

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

microphone

camera

GPS/WiFi/cellular

air quality pollution

sensing apps

social context

audio / pollution / RF fingerprinting

image / video manipulation

darwin applies distributed computing and collaborative inference concepts to

mobile sensing systems

darwin

- classification model evolution

- classification model pooling

- collaborative inference

why darwin?

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

mobile phone sensing today

why darwin?

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

train classification model X in the lab

mobile phone sensing today

why darwin?

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

deploy classifier X

mobile phone sensing today

train classification model X in the lab

why darwin?

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

train classification model X in the lab deploy classifier X

train classification model X’ in the lab

mobile phone sensing today

why darwin?

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

deploy classifier X

deploy classifier X’

mobile phone sensing today

train classification model X’ in the lab

train classification model X in the lab

why darwin?

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

train classification model X in the lab deploy classifier X

deploy classifier X’

a fully supervised approach doesn’t

scale!

mobile phone sensing today

train classification model X’ in the lab

why darwin? a same classifier does not scale to multiple

environments (e.g., quiet and noisy env)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

why darwin? a same classifier does not scale to multiple

environments (e.g., quiet and noisy env)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

why darwin? a same classifier does not scale to multiple

environments (e.g., quiet and noisy env)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

why darwin? a same classifier does not scale to multiple

environments (e.g., quiet and noisy env)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

darwin creates new classification models transparently from the user

(classification model evolution)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

why darwin?

ability for an application torapidly scale to many devices

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

why darwin?

ability for an application torapidly scale to many devices

darwin re-uses classification models when possible

(classification model pooling)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

why darwin?

leverage the large ensemble of in-situ resources

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

why darwin?

leverage the large ensemble of in-situ resources

darwin exploits spatial diversity and co-operate to alleviate the “sensing context”

problem(collaborative inference)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

darwin design

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

speaker recognition (subject to audio noise, sensing context, etc.)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

darwin phases

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

darwin phases

initial training (derive model seed)supervised

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

darwin phases

initial training (derive model seed)

classification model evolution

supervised

unsupervised

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

darwin phases

initial training (derive model seed)

classification model evolution

classification model pooling

supervised

unsupervised

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

darwin phases

initial training (derive model seed)

classification model evolution

classification model pooling

collaborative inference

supervised

unsupervised

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model training

sensed event

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model training

sensed event

filtering (silence suppression +

voicing)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model training

sensed event

filtering (silence suppression +

voicing)

featureextraction(MFCC)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model training

filtering (silence suppression +

voicing)

featureextraction(MFCC)

modeltraining(GMM)

model

baseline

sensed event

send model + baseline back to phone

send MFCC tobackend to train the model

backend

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model training

phone: feature extraction(low

computation)

backend

backend: model training (high

computation)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

phone: determines when to evolve

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

phone: determines when to evolve

training

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

phone: determines when to evolve

training sampled

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

phone: determines when to evolve

match?

YES

do not evolve

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

phone: determines when to evolve

match?

NO

evolve(train new model using

backend as before)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

new speaker voice model

training

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

new speaker voice model

training

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model evolution

new speaker voice model

training

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker C’s model

Speaker B’s modelSpeaker B’s model

Speaker C’s model

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker C’s model

Speaker B’s modelSpeaker B’s model

Speaker C’s model

we have two options

1. train a new classifier for each speaker (costly for power, inference delay)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker C’s model

Speaker B’s modelSpeaker B’s model

Speaker C’s model

we have two options

1. train a new classifier for each speaker (costly for power, inference delay)

2. re-use already available classifiers

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker C’s model

Speaker B’s modelSpeaker B’s model

Speaker C’s model

we have two options

1. train a new classifier for each speaker (costly for power, inference delay)

2. re-use already available classifiers

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker C’s model

Speaker B’s modelSpeaker B’s model

Speaker C’s model

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker B’s modelSpeaker C’s model

Speaker C’s model

Speaker B’s model

Speaker A’s model

Speaker C’s model

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker B’s modelSpeaker C’s model

Speaker C’s model

Speaker B’s model

Speaker A’s modelSpeaker C’s model

Speaker A’s model

Speaker B’s model

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker B’s modelSpeaker C’s model

Speaker C’s model

Speaker A’s modelSpeaker B’s model

Speaker B’s model

Speaker A’s modelSpeaker C’s model

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

classification model pooling

Speaker A’s modelPhone A Phone B

Phone C

Speaker B’s modelSpeaker C’s model

Speaker C’s model

Speaker A’s modelSpeaker B’s model

Speaker B’s model

Speaker A’s modelSpeaker C’s model

ready to run the collaborative inference algorithm

- local inference first- final inference later

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

two phases

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

1. local inference (running independently in parallel on each mobile phone)

two phases

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

1. local inference (running independently in parallel on each mobile phone)

two phases

2. final inference (after collecting Local Inference results, to get better confidence about the final classification result)

local inference (LI)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

speaker A speaking!!!local inference (LI)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

speaker A speaking!!!local inference (LI)

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

speaker A speaking!!!local inference (LI)

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

speaker A speaking!!!

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

local inference (LI)

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

speaker A speaking!!!

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

local inference (LI)

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

speaker A speaking!!!local inference (LI)

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

speaker A speaking!!!local inference (LI)

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

individual classification can be misleading!

final inference (FI)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inference

Phone A Phone B

Phone C

each phone gathers LI results

A’s LI results

C’s LI results

B’s LI results

A’s LI results A’s LI results

C’s LI results C’s LI results

B’s LI resultsB’s LI results

final inference (FI)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

collaborative inferenceon each phone

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

xxx

xxx

final inference (FI)

collaborative inferenceon each phone

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

xxx

xxx

FI results (normalized):Confidence (A speaking) = 1 Confidence (B speaking) =

0.12Confidence (C speaking) =

0.002

=

final inference (FI)

collaborative inferenceon each phone

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

xxx

xxx

=FI results (normalized):Confidence (A speaking) = 1 Confidence (B speaking) =

0.12Confidence (C speaking) =

0.002

final inference (FI)

collaborative inferenceon each phone

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

A’s LI results:Prob(A speaking) = 0.65Prob(B speaking) = 0.25Prob(C speaking) = 0.10

C’s LI results:Prob(A speaking) = 0.30Prob(B speaking) = 0.67Prob(C speaking) = 0.03

B’s LI results:Prob(A speaking) = 0.79Prob(B speaking) = 0.11Prob(C speaking) = 0.10

xxx

xxx

=

collaborative inference compensates the inaccuracies of individual

inferences

FI results (normalized):Confidence (A speaking) = 1 Confidence (B speaking) =

0.12Confidence (C speaking) =

0.002

final inference (FI)

collaborative inferenceon each phone

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evaluation

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evaluation

C/C++ &

implemented on Nokia N97 andiPhone in support of a speaker

recognition app

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evaluation

C/C++ &

unix server

implemented on Nokia N97 andiPhone in support of a speaker

recognition app

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evaluation

C/C++ &

unix server

lightweight reliable protocol to transfer models from the server

and between phones

implemented on Nokia N97 andiPhone in support of a speaker

recognition app

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

evaluation

C/C++ &

UDP multicast protocol to distribute

local inference results between phones

implemented on Nokia N97 andiPhone in support of a speaker

recognition app

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

experimental scenarios

up to eight people in conversation in three different scenarios (quiet indoor, down the

street, in a restaurant)

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

some numerical results

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

need for evolution

train indoor, evaluate outdoor

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

need for evolution

accuracy improvement after evolution

accuracy

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

indoor quiet scenario

8 people talking around a table

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

indoor quiet scenario

8 people talking around a table

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

indoor quiet scenario

8 people talking around a table

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

indoor quiet scenario

8 people talking around a table

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

indoor quiet scenario

8 people talking around a table

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

indoor quiet scenario

8 people talking around a table

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

indoor quiet scenario

8 people talking around a table

collaborative inference + classification model evolution

boost the performance of a mobile sensing app

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

impact of the number of mobile phones

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

impact of the number of mobile phones

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

impact of the number of mobile phones

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

impact of the number of mobile phones

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

impact of the number of mobile phones

the larger the number of mobile phones collaborating, the better the final inference result

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

battery lifetime Vs inference responsiveness

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

battery lifetime Vs inference responsiveness

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

high responsiveness

battery lifetime Vs inference responsiveness

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

short battery life

battery lifetime Vs inference responsiveness

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

longer battery duration

battery lifetime Vs inference responsiveness

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

low responsiveness

battery lifetime Vs inference responsiveness

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

battery lifetime Vs inference responsiveness

smart duty-cycling techniques and machine learning algorithms with better performance in

terms of energy usage on mobile phones need to be identified

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

a quick recap

smartphone’s are everywhere, let’s exploit their collective sensing

and computation capabilities

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

a quick recapsmartphone’s are everywhere – let’s exploit their collective sensing and computation capabilities

smartphone sensing opens up new frontiers: applications can be spread and

big data collected at unprecedented scale enabling endless research opportunities

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

a quick recapsmartphone’s are everywhere – let’s exploit their collective sensing and computation capabilities

continuous sensing is still challenging; efficient mobile sensing requires to

preserve the phone user experience (need for energy efficient ML algorithms

and smart duty-cycling techniques)

smartphone sensing opens up new frontiers: applications can be spread and big data collected at unprecedented

scale enabling endless research opportunities

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

a quick recapsmartphone’s are everywhere – let’s exploit their collective sensing and computation capabilities

continuous sensing is still challenging; efficient mobile sensing requires to preserve the phone user experience (need for energy efficient ML algorithms and smart duty-

cycling techniques)

ML algorithms should perform reliably in the wild

smartphone sensing opens up new frontiers: applications can be spread and big data collected at unprecedented

scale enabling endless research opportunities

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

a quick recapsmartphone’s are everywhere – let’s exploit their collective sensing and computation capabilities

continuous sensing is still challenging; efficient mobile sensing requires to preserve the phone user experience (need for energy efficient ML algorithms and smart duty-

cycling techniques)

ML algorithms should perform reliably in the wild

smartphone sensing opens up new frontiers: applications can be spread and big data collected at unprecedented

scale enabling endless research opportunitiesok I think I’m done…

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

a quick recapsmartphone’s are everywhere – let’s exploit their collective sensing and computation capabilities

continuous sensing is still challenging; efficient mobile sensing requires to preserve the phone user experience (need for energy efficient ML algorithms and smart duty-

cycling techniques)

ML algorithms should perform reliably in the wild

smartphone sensing opens up new frontiers: applications can be spread and big data collected at unprecedented

scale enabling endless research opportunitiesbut please bear in mind…

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

Mobile Phone Sensing is the Next Big Thing!

Thank you!!

miluzzo@cs.dartmouth.eduEmiliano Miluzzo

Mobile Sensing Grouphttp://sensorlab.cs.dartmouth.edu

Recommended