Darwin Phones the Evolution of Sensing and Inference

  • Slides: 135
Download presentation
Darwin Phones: the Evolution of Sensing and Inference on Mobile Phones Emiliano Miluzzo*, Cory

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

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

evolution of sensing and inference on mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

evolution of sensing and inference on mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

PR time Emiliano Miluzzo miluzzo@cs. dartmouth. edu

PR time Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Emiliano Miluzzo miluzzo@cs. dartmouth. edu

ok… so what ? ? Emiliano Miluzzo miluzzo@cs. dartmouth. edu

ok… so what ? ? Emiliano Miluzzo miluzzo@cs. dartmouth. edu

density Emiliano Miluzzo miluzzo@cs. dartmouth. edu

density Emiliano Miluzzo miluzzo@cs. dartmouth. edu

sensing accelerometer …. digital compass microphone Wi. Fi/bluetooth Emiliano Miluzzo light sensor/camera GPS miluzzo@cs.

sensing accelerometer …. digital compass microphone Wi. Fi/bluetooth Emiliano Miluzzo light sensor/camera GPS miluzzo@cs. dartmouth. edu

sensing …. accelerometer air quality / pollution sensor digital compass gyroscope microphone Wi. Fi/bluetooth

sensing …. accelerometer air quality / pollution sensor digital compass gyroscope microphone Wi. Fi/bluetooth Emiliano Miluzzo light sensor/camera GPS miluzzo@cs. dartmouth. edu

programmability - free SDK - multitasking Emiliano Miluzzo miluzzo@cs. dartmouth. edu

programmability - free SDK - multitasking Emiliano Miluzzo miluzzo@cs. dartmouth. edu

hardware - 600 MHz CPU - up to 1 GB application memory computation capability

hardware - 600 MHz CPU - up to 1 GB application memory computation capability is increasing Emiliano Miluzzo miluzzo@cs. dartmouth. edu

application distribution Emiliano Miluzzo miluzzo@cs. dartmouth. edu

application distribution Emiliano Miluzzo miluzzo@cs. dartmouth. edu

application distribution deploy apps onto millions of phones at the blink of an eye

application distribution deploy apps onto millions of phones at the blink of an eye Emiliano Miluzzo miluzzo@cs. dartmouth. edu

application distribution deploy apps onto millions of phones at the blink of an eye

application distribution deploy apps onto millions of phones at the blink of an eye collect huge amount of data for research purposes Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support we want to push intelligence to the phone

cloud infrastructure cloud - backend support we want to push intelligence to the phone Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support preserve the phone user experience (battery lifetime, ability

cloud infrastructure cloud - backend support preserve the phone user experience (battery lifetime, ability to make calls, etc. ) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support - sensing - run machine learning algorithms locally

cloud infrastructure cloud - backend support - sensing - run machine learning algorithms locally (feature extraction + inference) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support run machine learning algorithms (learning) - sensing -

cloud infrastructure cloud - backend support run machine learning algorithms (learning) - sensing - run machine learning algorithms locally (feature extraction + inference) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support run machine learning algorithms (learning) store and crunch

cloud infrastructure cloud - backend support run machine learning algorithms (learning) store and crunch big data (fusion) - sensing - run machine learning algorithms locally (feature extraction + inference) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5 years from now our phones will be as powerful as a Emiliano Miluzzo store and crunch big data (fusion) - sensing - run machine learning algorithms locally (feature extraction + inference) miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5 years from now our phones will be as powerful as a Emiliano Miluzzo store and crunch big data (fusion) - sensing - run machine learning algorithms locally (feature extraction + inference) miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5 years from now our phones will be as powerful as a Emiliano Miluzzo store and crunch big data (fusion) - sensing - run machine learning algorithms locally (feature extraction + inference) miluzzo@cs. dartmouth. edu

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5

cloud infrastructure cloud - backend support run machine learning algorithms (learning) 3 to 5 years from now our phones will be as powerful as a Emiliano Miluzzo store and crunch big data (fusion) - Sensing - run machine learning algorithms locally (feature extraction + learning + inference) miluzzo@cs. dartmouth. edu

sensing programmability cloud infrastructure Emiliano Miluzzo miluzzo@cs. dartmouth. edu

sensing programmability cloud infrastructure Emiliano Miluzzo miluzzo@cs. dartmouth. edu

sensing programmability ? ? cloud infrastructure Emiliano Miluzzo miluzzo@cs. dartmouth. edu

sensing programmability ? ? cloud infrastructure Emiliano Miluzzo miluzzo@cs. dartmouth. edu

societal scale sensing reality mining using mobile phones will play a big role in

societal scale sensing reality mining using mobile phones will play a big role in the future Emiliano Miluzzo global mobile sensor network miluzzo@cs. dartmouth. edu

end of PR – now darwin Emiliano Miluzzo miluzzo@cs. dartmouth. edu

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

a small building block towards the big vision Emiliano Miluzzo miluzzo@cs. dartmouth. edu

from motes to mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

from motes to mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

from motes to mobile phones evolution of sensing and inference on mobile phones Emiliano

from motes to mobile phones evolution of sensing and inference on mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

from motes to mobile phones evolution of sensing and inference on mobile phones -

from motes to mobile phones evolution of sensing and inference on mobile phones - classification model evolution darwin - classification model pooling - collaborative inference Emiliano Miluzzo miluzzo@cs. dartmouth. edu

sensing microphone camera GPS/Wi. Fi/ cellular air quality pollution darwin - classification model evolution

sensing microphone camera GPS/Wi. Fi/ cellular air quality pollution darwin - classification model evolution - classification model pooling - collaborative inference apps social context audio / pollution / RF fingerprinting image / video manipulation darwin applies distributed computing and collaborative inference concepts to mobile sensing systems Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? mobile phone sensing today Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? mobile phone sensing today Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? train classification model X in the lab Emiliano Miluzzo mobile phone sensing

why darwin? train classification model X in the lab Emiliano Miluzzo mobile phone sensing today miluzzo@cs. dartmouth. edu

why darwin? train classification model X in the lab Emiliano Miluzzo mobile phone sensing

why darwin? train classification model X in the lab Emiliano Miluzzo mobile phone sensing today deploy classifier X miluzzo@cs. dartmouth. edu

why darwin? train classification model X in the lab mobile phone sensing today deploy

why darwin? train classification model X in the lab mobile phone sensing today deploy classifier X train classification model X’ in the lab Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? mobile phone sensing today train classification model X in the lab deploy

why darwin? mobile phone sensing today train classification model X in the lab deploy classifier X train classification model X’ in the lab deploy classifier X’ Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? mobile phone sensing today train classification model X in the lab deploy

why darwin? mobile phone sensing today train classification model X in the lab deploy classifier X a fully supervised approach doesn’t scale! train classification model X’ in the lab deploy classifier X’ Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? a same classifier does not scale to multiple environments (e. g. ,

why darwin? a same classifier does not scale to multiple environments (e. g. , quiet and noisy env) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? a same classifier does not scale to multiple environments (e. g. ,

why darwin? a same classifier does not scale to multiple environments (e. g. , quiet and noisy env) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? a same classifier does not scale to multiple environments (e. g. ,

why darwin? a same classifier does not scale to multiple environments (e. g. , quiet and noisy env) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? a same classifier does not scale to multiple environments (e. g. ,

why darwin? a same classifier does not scale to multiple environments (e. g. , quiet and noisy env) darwin creates new classification models transparently from the user (classification model evolution) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? ability for an application to rapidly scale to many devices Emiliano Miluzzo

why darwin? ability for an application to rapidly scale to many devices Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? darwin re-uses classification models when possible ability for an application to (classification

why darwin? darwin re-uses classification models when possible ability for an application to (classification model pooling) rapidly scale to many devices Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? leverage the large ensemble of in-situ resources Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? leverage the large ensemble of in-situ resources Emiliano Miluzzo miluzzo@cs. dartmouth. edu

why darwin? darwin exploits spatial diversity and co-operate to alleviate the leverage the large

why darwin? darwin exploits spatial diversity and co-operate to alleviate the leverage the large “sensing context” problem ensemble ofinference) in-situ (collaborative resources Emiliano Miluzzo miluzzo@cs. dartmouth. edu

darwin design Emiliano Miluzzo miluzzo@cs. dartmouth. edu

darwin design Emiliano Miluzzo miluzzo@cs. dartmouth. edu

speaker recognition (subject to audio noise, sensing context, etc. ) Emiliano Miluzzo miluzzo@cs. dartmouth.

speaker recognition (subject to audio noise, sensing context, etc. ) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

darwin phases Emiliano Miluzzo miluzzo@cs. dartmouth. edu

darwin phases Emiliano Miluzzo miluzzo@cs. dartmouth. edu

darwin phases supervised Emiliano Miluzzo initial training (derive model seed) miluzzo@cs. dartmouth. edu

darwin phases supervised Emiliano Miluzzo initial training (derive model seed) miluzzo@cs. dartmouth. edu

darwin phases supervised initial training (derive model seed) unsupervise classification model evolution d Emiliano

darwin phases supervised initial training (derive model seed) unsupervise classification model evolution d Emiliano Miluzzo miluzzo@cs. dartmouth. edu

darwin phases supervised initial training (derive model seed) unsupervise classification model evolution d classification

darwin phases supervised initial training (derive model seed) unsupervise classification model evolution d classification model pooling Emiliano Miluzzo miluzzo@cs. dartmouth. edu

darwin phases supervised initial training (derive model seed) unsupervise classification model evolution d classification

darwin phases supervised initial training (derive model seed) unsupervise classification model evolution d classification model pooling collaborative inference Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model training sensed event Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model training sensed event Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model training filtering (silence suppression + voicing) sensed event Emiliano Miluzzo miluzzo@cs. dartmouth.

classification model training filtering (silence suppression + voicing) sensed event Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model training filtering (silence suppression + voicing) feature extraction (MFCC) sensed event Emiliano

classification model training filtering (silence suppression + voicing) feature extraction (MFCC) sensed event Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model training send MFCC to backend to train the model backend send model

classification model training send MFCC to backend to train the model backend send model + baseline back to phone filtering (silence suppression + voicing) model feature extraction (MFCC) model training (GMM) baseline sensed event Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model training backend phone: feature extraction (low computation) Emiliano Miluzzo backend: model training

classification model training backend phone: feature extraction (low computation) Emiliano Miluzzo backend: model training (high computation) miluzzo@cs. dartmouth. edu

classification model evolution phone: determines when to evolve Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution phone: determines when to evolve Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution trainin g phone: determines when to evolve Emiliano Miluzzo miluzzo@cs. dartmouth.

classification model evolution trainin g phone: determines when to evolve Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution trainin g sample d phone: determines when to evolve Emiliano Miluzzo

classification model evolution trainin g sample d phone: determines when to evolve Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution match ? phone: determines when to evolve Emiliano Miluzzo YE S

classification model evolution match ? phone: determines when to evolve Emiliano Miluzzo YE S do not evolve miluzzo@cs. dartmouth. edu

classification model evolution match? phone: determines when to evolve Emiliano Miluzzo NO evolve (train

classification model evolution match? phone: determines when to evolve Emiliano Miluzzo NO evolve (train new model using backend as before) miluzzo@cs. dartmouth. edu

classification model evolution training new speaker voice model Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution training new speaker voice model Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution training new speaker voice model Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution training new speaker voice model Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model evolution training new speaker voice Emiliano Miluzzo model miluzzo@cs. dartmouth. edu

classification model evolution training new speaker voice Emiliano Miluzzo model miluzzo@cs. dartmouth. edu

classification model pooling Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker C’s model Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone A Speaker A’s model we have two options Phone B

classification model pooling Phone A Speaker A’s model we have two options Phone B 1. train a new classifier for each Speaker B’s speaker (costly for power, inference model delay) Speaker C’s model Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone A Speaker A’s model we have two options Phone B

classification model pooling Phone A Speaker A’s model we have two options Phone B 1. train a new classifier for each Speaker B’s speaker (costly for power, inference model delay) 2. re-use already available classifiers Speaker C’s model Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone A Speaker A’s model we have two options Phone B

classification model pooling Phone A Speaker A’s model we have two options Phone B 1. train a new classifier for each Speaker B’s speaker (costly for power, inference model delay) 2. re-use already available classifiers Speaker C’s model Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker C’s model Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker C’s model Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker C’s Speaker B’s model Speaker A’s model Speaker C’s model Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker C’s Speaker B’s model Speaker A’s model Speaker C’s model Speaker A’s model Speaker B’s model Emiliano Miluzzo Phone C miluzzo@cs. dartmouth. edu

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker

classification model pooling Phone B Phone A Speaker A’s model Speaker B’s model Speaker C’s ready to run the collaborative inference algorithm - local inference first - final inference later model Speaker C’s model Speaker A’s model Speaker B’s model Emiliano Miluzzo Speaker B’s model Speaker A’s model Speaker C’s model Phone C miluzzo@cs. dartmouth. edu

collaborative inference two phases Emiliano Miluzzo miluzzo@cs. dartmouth. edu

collaborative inference two phases Emiliano Miluzzo miluzzo@cs. dartmouth. edu

collaborative inference two phases 1. local inference (running independently in parallel on each mobile

collaborative inference two phases 1. local inference (running independently in parallel on each mobile phone) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

collaborative inference two phases 1. local inference (running independently in parallel on each mobile

collaborative inference two phases 1. local inference (running independently in parallel on each mobile phone) 2. final inference (after collecting Local Inference results, to get better confidence about the final classification result) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) Phone A Phone B Phone C Emiliano Miluzzo miluzzo@cs.

collaborative inference local inference (LI) Phone A Phone B Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B Phone C

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B Phone C Emiliano Miluzzo miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = Phone C miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = Phone C miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = Phone C miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = Phone C miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI

collaborative inference local inference (LI) speaker A speaking!!! Phone A Phone B B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = Phone C miluzzo@cs. dartmouth. edu

collaborative inference local inference (LI) A’s LI results: Prob(A speaking) = 0. 65 Prob(B

collaborative inference local inference (LI) A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo speaker A speaking!!! Phone A Phone B individual classification can be misleading! C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 Phone C miluzzo@cs. dartmouth. edu

collaborative inference final inference (FI) each phone gathers LI results Phone A Phone B

collaborative inference final inference (FI) each phone gathers LI results Phone A Phone B B’s LI results A’s LI results C’s LI results Emiliano Miluzzo Phone C miluzzo@cs. dartmouth. edu

collaborative inference final inference (FI) A’s LI results: Prob(A speaking) = 0. 65 Prob(B

collaborative inference final inference (FI) A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo on each phone B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = 0. 03 miluzzo@cs. dartmouth. edu

collaborative inference final inference (FI) A’s LI results: Prob(A speaking) = 0. 65 Prob(B

collaborative inference final inference (FI) A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 Emiliano Miluzzo on each phone x x x B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 x x x C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = 0. 03 miluzzo@cs. dartmouth. edu

collaborative inference final inference (FI) on each phone A’s LI results: Prob(A speaking) =

collaborative inference final inference (FI) on each phone A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 x x x B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 = x x x C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = 0. 03 FI results (normalized): Confidence (A speaking) = 1 Emiliano Miluzzo Confidence (B speaking) = 0. 12 Confidence (C speaking) = 0. 002 miluzzo@cs. dartmouth. edu

collaborative inference final inference (FI) on each phone A’s LI results: Prob(A speaking) =

collaborative inference final inference (FI) on each phone A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 x x x B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 = x x x C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = 0. 03 FI results (normalized): Confidence (A speaking) = 1 Emiliano Miluzzo Confidence (B speaking) = 0. 12 Confidence (C speaking) = 0. 002 miluzzo@cs. dartmouth. edu

collaborative inference final inference (FI) on each phone A’s LI results: Prob(A speaking) =

collaborative inference final inference (FI) on each phone A’s LI results: Prob(A speaking) = 0. 65 Prob(B speaking) = 0. 25 Prob(C speaking) = 0. 10 B’s LI results: Prob(A speaking) = 0. 79 Prob(B speaking) = 0. 11 Prob(C speaking) = 0. 10 C’s LI results: Prob(A speaking) = 0. 30 Prob(B speaking) = 0. 67 Prob(C speaking) = 0. 03 x x collaborative inference x x compensates the inaccuracies x x of individual inferences = FI results (normalized): Confidence (A speaking) = 1 Emiliano Miluzzo Confidence (B speaking) = 0. 12 Confidence (C speaking) = 0. 002 miluzzo@cs. dartmouth. edu

evaluation Emiliano Miluzzo miluzzo@cs. dartmouth. edu

evaluation Emiliano Miluzzo miluzzo@cs. dartmouth. edu

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of a speaker recognition app Emiliano Miluzzo miluzzo@cs. dartmouth. edu

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of a speaker recognition app unix server Emiliano Miluzzo miluzzo@cs. dartmouth. edu

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of a speaker recognition app lightweight reliable protocol to transfer models from the server and between phones unix server Emiliano Miluzzo miluzzo@cs. dartmouth. edu

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of

evaluation C/C++ & implemented on Nokia N 97 and i. Phone in support of a speaker recognition app UDP multicast protocol to distribute local inference results between phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

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

experimental scenarios up to eight people in conversation in three different scenarios (quiet indoor, down the street, in a restaurant) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

some numerical results Emiliano Miluzzo miluzzo@cs. dartmouth. edu

some numerical results Emiliano Miluzzo miluzzo@cs. dartmouth. edu

need for evolution train indoor, evaluate outdoor Emiliano Miluzzo miluzzo@cs. dartmouth. edu

need for evolution train indoor, evaluate outdoor Emiliano Miluzzo miluzzo@cs. dartmouth. edu

need for evolution accuracy Emiliano Miluzzo accuracy improvement after evolution miluzzo@cs. dartmouth. edu

need for evolution accuracy Emiliano Miluzzo accuracy improvement after evolution miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

indoor quiet scenario collaborative inference + classification model evolution boost the performance of a

indoor quiet scenario collaborative inference + classification model evolution boost the performance of a mobile sensing app Emiliano Miluzzo 8 people talking around a table miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones Emiliano Miluzzo miluzzo@cs. dartmouth. edu

impact of the number of mobile phones the larger the number of mobile phones

impact of the number of mobile phones the larger the number of mobile phones collaborating, the better the final inference result Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness high responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness high responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness short battery life Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness short battery life Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness longer battery duration Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness longer battery duration Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness low responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness low responsiveness Emiliano Miluzzo miluzzo@cs. dartmouth. edu

battery lifetime Vs inference responsiveness smart duty-cycling techniques and machine learning algorithms with better

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 Emiliano Miluzzo miluzzo@cs. dartmouth. edu

a quick recap smartphone’s are everywhere, let’s exploit their collective sensing and computation capabilities

a quick recap smartphone’s are everywhere, let’s exploit their collective sensing and computation capabilities Emiliano Miluzzo miluzzo@cs. dartmouth. edu

a quick recap smartphone’s are everywhere – let’s exploit their collective sensing and computation

a quick recap smartphone’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 Emiliano Miluzzo miluzzo@cs. dartmouth. edu

a quick recap smartphone’s are everywhere – let’s exploit their collective sensing and computation

a quick recap smartphone’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 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) Emiliano Miluzzo miluzzo@cs. dartmouth. edu

a quick recap smartphone’s are everywhere – let’s exploit their collective sensing and computation

a quick recap smartphone’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 continuous sensing is still challenging; endless research opportunities efficient mobile sensing requires to preserve the phone user experience (need for energy efficient ML algorithms and smart duty-cycling techniques) Emiliano Miluzzo ML algorithms should perform reliably in the wild miluzzo@cs. dartmouth. edu

a quick recap smartphone’s are everywhere – let’s exploit their collective sensing and computation

a quick recap smartphone’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 continuous sensing is still challenging; endless research opportunities efficient mobile sensing requires to preserve the phone user experience (need for energy efficient ML algorithms and smart duty-cycling techniques) ok I think I’m done… ML algorithms should perform reliably in the wild Emiliano Miluzzo miluzzo@cs. dartmouth. edu

a quick recap smartphone’s are everywhere – let’s exploit their collective sensing and computation

a quick recap smartphone’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 continuous sensing is still challenging; endless research opportunities efficient mobile sensing requires to preserve the phone user experience (need for energy efficient ML algorithms and smart duty-cycling techniques) but please bear in mind… ML algorithms should perform reliably in the wild Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Mobile Phone Sensing is the Next Big Thing! Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Mobile Phone Sensing is the Next Big Thing! Emiliano Miluzzo miluzzo@cs. dartmouth. edu

Thank you!! Mobile Sensing Group http: //sensorlab. cs. dartmouth. edu Emiliano Miluzzo miluzzo@cs. dartmouth.

Thank you!! Mobile Sensing Group http: //sensorlab. cs. dartmouth. edu Emiliano Miluzzo miluzzo@cs. dartmouth. edu