SlideShare a Scribd company logo
1 of 35
Download to read offline
Developing context-aware applications 
Marsal Gavaldà 
Expect Labs 
@MarsalGavalda 
marsal@expectlabs.com
Anticipatory computing is transforming the way we find information 
Set reminder 
- Launch calendar app 
- Create new reminder 
- Enter flight details 
Check flight status 
- Launch web browser 
- Go to airline site 
- Enter flight number 
Check traffic 
- Launch web browser 
- Go to map / traffic site 
- Enter current location 
- Enter airport address 
Today, we find information Tomorrow, information finds us
Anticipatory computing relies on context awareness 
Source: “Entourage” by HBO
Source: Our Mobile Planet by Google 
Smartphone adoption (2013)
Mobile devices capture context via many sensors 
Source: Samsung 
Source: funf.org 
- Cameras 
- Microphones 
- Cellular receiver 
- Wi-Fi receiver 
- GPS receiver 
- Gyroscope 
- Thermometer 
- Barometer 
- …
Backend systems infer user situation, activity, intent, mood 
Sources: GigaOM, Robin Labs
Responsive design 
Source: Mashable
Contextual design
Recent technology advances 
Speech Recognition 
- Deep learning (deep / recurrent ANNs) 
- Ultra large language models 
- Dynamic speaker adaptation 
- Massive datasets (108s of users) 
Computer Vision 
- Deep learning 
- Massive datasets 
Language Understanding 
- Deep learning 
- Knowledge graphs 
Source: Facebook Source: Stanford University
Knowledge graphs 
From disembodied strings to grounded entities 
• Yahoo! 10 M entities, 30 M properties, 10 M connections 
• Microsoft 300 M entities, 800 M connections 
• Google 570 M entities, 18 B properties and connections 
• Wikipedia 4 M entities 
• Freebase 40 M topics, 2 B facts 
• Factual 66 M local businesses and POIs in 50 countries 
• LinkedIn 225 M people 
• Facebook 1.15 B people 
Cf. 
• Cyc 
239 K concepts, 
2 M facts 
• OpenCyc 
6 K concepts, 
60 K facts 
Source: Yahoo
Dynamic activation of the knowledge graph 
TIME 
Continuous 
user context 
hayes valley palo alto north beach cow hollow 
I really want to see that new movie with Ben Affleck 
It is the one about the Iran Hostage Crisis 
You have to see that video of the Today Show doing the Harlem Shake 
I am going to meet Raymond at Goat Hill Pizza at noon 
It is near the Comstock Saloon 
I am planning to go whitewater rafting in the Grand Canyon 
The Black Keys were on the Colbert Report last night 
It is near the Comstock Saloon 
Rolling Context Window 
Dynamic 
entity graph 
(~10M entities) 
things I recently 
wrote or said 
restaurants near 
North Beach 
places in the 
Bay area 
topics related to 
things I recently read 
current 
my friends, colleagues events 
and recent contacts 
links that my friends 
have recently shared 
Human Knowledge 
(~50B entities) 
5B people 
1B places 
1B products 
100M interests 
100M events 
1B media 
2008 
(1M entities) 
2010 
(10M entities) 
2014 
(500M entities) 
2016 
(10B entities) 
5B domain-specific
The knowledge graph enables anchored NLP 
“I saw the man on the hill with the telescope” 
Source: Deniz Yuret
Voice 
10% of Baidu 
search queries 
are done with 
voice today. 
In five years, 
it’ll be 50% ” 
Andrew Ng
Types of voice-driven applications 
Question & Answer "What is the capital of California?" 
"Who directed Citizen Kane?" 
Command & Control "Call Jenny's work phone." 
"Turn up the heat to 72 degrees." 
Content Discovery "Is there a good Japanese restaurant near Union Square?" 
"Show me all the James Bond movies with Roger Moore." 
Performing Tasks "Make a reservation for two at Kama tomorrow at 8pm." 
"Book me on a flight to JFK on Saturday afternoon." 
Dictation "Send a text to Jenny saying…" 
"Send the following email to Joe…" 
Passive Listening "…have you seen that video of the Russian meteor…" 
"…I’m thinking of getting a pair of red Kobe 9 sneakers…"
Anatomy of a voice interaction 
1. Speech recognition 2. Natural language understanding 
type: restaurant 
category: Italian 
location: San Francisco 
cost: $, $$ 
filter: good for kids 
”It’d be nice to find an inexpensive Italian 
restaurant in San Francisco that is good for kids.” 
3. Search ranking & filtering 4. Real-time visualization of results 
Candidate 1: Buca di Beppo [confidence: 0.91] 
Candidate 2: La Traviata [confidence: 0.82] 
Candidate 3: Ragazza [confidence: 0.80] 
Candidate 4: Sotto Mare [confidence: 0.76] 
…
The MindMeld platform 
generate a 
continuously changing 
model of user intent 
based on long-12running context 
passively analyze multiple 
concurrent data streams 
for each user in real-time 
voice, gps, video, updates, … 3 
proactively find, 
correlate and rank 
relevant information 
display to user as appropriate
The MindMeld API
CONFIDENTIAL 
Step 1 ! 
We will automatically index ! 
any document collection.! 
18
CONFIDENTIAL 
Step 1 ! 
We will automatically index ! 
any document collection.! 
!! 
Step 2 ! 
Use our API to continuously! 
track contextual signals for! 
your users.! 
! 
20
curl 
-­‐X 
POST 
 
-­‐H 
X-­‐MindMeld-­‐Access-­‐Token: 
mindmeld-­‐access-­‐token 
 
-­‐H 
Content-­‐Type: 
application/json 
 
-­‐d 
'{ 
text: 
I 
was 
thinking 
we 
could 
go 
to 
Muir 
Woods 
or 
Stinson 
Beach, 
type:speech, 
weight:0.5 
}' 
 
https://mindmeld.expectlabs.com/session/:sessionid/textentries 
21
CONFIDENTIAL 
Step 1 ! 
We will automatically index ! 
any document collection.! 
!! 
Step 2 ! 
Use our API to continuously! 
track contextual signals for! 
your users.! 
!! 
Step 3 ! 
Display context-driven ! 
search results and ! 
recommendations.! 
!!
curl 
https://mindmeld.expectlabs.com/session/:sessionid/documents
Speech 
transcription 
Syntactic 
analysis 
Keyphrase 
 entity 
extraction 
Utterance 
classification 
 
conversation 
modeling 
Correlation  
extrapolation 
Doc 
ranking 
Utterance propagation
Technology choice: Speech recognition 
Google Nuance 
• Google’s server-side implementation of 
HTML5’s webkitSpeechRecognition for 
Chrome and Android 
• Fast, interim results, free 
• 79 languages 
• No SLA, no iOS support 
• Nuance NDEV Mobile speech-to-text service 
• Custom vocabularies 
• Embedded engine, cloud-based API, and 
combination 
• 40 languages 
• SLA 
ATT Build own 
• ATT Speech API 
• iOS, Android SDK clients to cloud-based API 
• 19 languages 
• SLA 
• Start with open-source speech recognition 
engine such as Sphinx or Kaldi 
• Be ready to invest $$$ 
• Full control
Technology choice: Natural language understanding 
Stanford NLP NLTK 
• PoS tagging, parsing, entity extraction, 
co-reference resolution 
• Java-based SDK 
• Free (GNU General Public License v2) 
• PoS tagging, parsing, entity extraction 
• Python-based SDK 
• Free (Apache License v2) 
AlchemyAPI TextRazor 
• Sentiment analysis, entity / keyword 
extraction, language detection 
• Cloud-based API 
OpenCalais Build own 
• Extraction of named entities, facts, and events 
• Cloud-based API 
• Entity recognition, topic tagging, dependency 
parsing 
• Cloud-based API 
• Combine, extend functionality 
• Full control 
• Requires maintenance
Technology choice: Machine learning 
Scikit-learn Weka 
• Classification, regression, clustering 
• SVM, logistic regression, random forests, … 
• Python-based, open-source library 
• Data analysis, predictive modeling 
• Wide array of machine learning classifiers 
• Java-based, free library (GNU GPL) 
Google GraphLab 
• Google Prediction API 
• Pattern matching, classifiers, recommender 
systems 
• Freemium pricing 
PredictionIO Build own 
• Predictive modeling, recommender systems 
• Open-source service 
• Topic modeling, graph analytics, clustering, 
collaborative filtering, computer vision 
• Parallel programming 
• C++ core, Python interface 
• Combine, extend functionality 
• Optimize runtime for each model
Technology choice: Development  operations 
Amazon Web Services Nitrous.IO 
• Cloud-based servers, storage, load balancers • Dev box in seconds with browser-based IDE 
GitHub Chef 
• Code repos management 
• Server provisioning 
Nginx Nagios 
• Operations monitoring  alerting 
Circle CI Pivotal Tracker 
• Project management 
• Web server 
• Test  build
Challenges 
Functionality Accuracy 
Scalability 
• Users 
• Applications 
• Domains 
Latency 
• ASR 
• NLU 
• IR 
• Visualization 
ASR 
• Word error rate 
• Accented speech 
• Noisy environment 
• Distant speaker 
NLU / IR 
• Precision  recall 
• Word sense disambiguation 
• Anaphora resolution 
• Conversation modeling 
• Interruptability
MindMeld API: Powerful yet easy to use 
developer.expectlabs.com 
real-time location 
entity 
extraction 
speech recognition on any device 
on any device 
Android 
SDK iOS 
SDK 
JavaScript 
SDK 
sample 
code 
turnkey HTML5 
widgets 
push 
events 
open graph 
support 
customizable 
ranking 
keyphrase 
detection 
topic 
detection 
natural language 
processing 
on-demand 
web crawling 
proactive 
suggestions 
instant answers 
extensive online 
documentation 
real-time analytics 
console 
complete API 
explorer tool 
crawl manager 
dashboard 
ranking 
dashboard
MindMeld API: Adaptive ranking factors
MindMeld API: Powering a wide range of applications 
1 2 3 
Voice-Driven 
Intelligent Assistant 
Location-Based 
Proactive Assistant 
Voice and Video 
Conference Assistant 
online commerce 
media  entertainment 
mobile apps  devices 
wearables 
location-based services 
local  travel apps 
smart cars 
mobile workforce 
customer support  help desk 
call center solutions 
voice  video calling 
telepresence  collaboration
Instant voice-driven search and discovery on your own content 
developer.expectlabs.com
감사합니다
Widescreen 
Test 
Pa.ern 
(16:9) 
Aspect 
Ra8o 
Test 
(Should 
appear 
circular) 
16:9 
4:3

More Related Content

Viewers also liked

Adaptive middleware of context aware application in smart homes
Adaptive middleware of context aware application in smart homesAdaptive middleware of context aware application in smart homes
Adaptive middleware of context aware application in smart homesambitlick
 
A short & brief introduction on context and context aware computing
A short & brief introduction on context and context aware computingA short & brief introduction on context and context aware computing
A short & brief introduction on context and context aware computingZohreh Dehghani Champiri
 
Context-Aware Recommender Systems for Mobile Devices
Context-Aware Recommender Systems for Mobile DevicesContext-Aware Recommender Systems for Mobile Devices
Context-Aware Recommender Systems for Mobile DevicesMatthias Braunhofer
 
Context-aware Mobile Computing - a Literature Review
Context-aware Mobile Computing - a Literature ReviewContext-aware Mobile Computing - a Literature Review
Context-aware Mobile Computing - a Literature ReviewThiwanka Makumburage
 
UX for emerging technologies & context-aware computing
UX for emerging technologies & context-aware computingUX for emerging technologies & context-aware computing
UX for emerging technologies & context-aware computingPrithvi Raj
 
Context Awareness in Mobile Computing
Context Awareness in Mobile ComputingContext Awareness in Mobile Computing
Context Awareness in Mobile ComputingBob Hardian
 
Context-Aware Adaptation
Context-Aware AdaptationContext-Aware Adaptation
Context-Aware AdaptationVivian Motti
 
[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...
[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...
[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...YONG ZHENG
 
Context-aware application development with FIWARE #CPBR8
Context-aware application development with FIWARE #CPBR8Context-aware application development with FIWARE #CPBR8
Context-aware application development with FIWARE #CPBR8Fermin Galan
 
5 context aware services
5 context aware services5 context aware services
5 context aware servicesguest3cf4991
 
Context-Aware Computing
Context-Aware ComputingContext-Aware Computing
Context-Aware Computinglogus2k
 
Capability Patterns as the Enablers for Model-based Development of Business C...
Capability Patterns as the Enablers for Model-based Development of Business C...Capability Patterns as the Enablers for Model-based Development of Business C...
Capability Patterns as the Enablers for Model-based Development of Business C...CaaS EU FP7 Project
 
Context Aware Computing
Context Aware ComputingContext Aware Computing
Context Aware ComputingMOHIT DADU
 
Webcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware AppsWebcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware AppsApigee | Google Cloud
 
Pervasive computing
Pervasive computingPervasive computing
Pervasive computingPreethi AKNR
 
Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...
Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...
Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...Luz Rello
 
Designing in Context
Designing in ContextDesigning in Context
Designing in ContextThomas Grill
 

Viewers also liked (20)

Thesis Presentation
Thesis PresentationThesis Presentation
Thesis Presentation
 
Adaptive middleware of context aware application in smart homes
Adaptive middleware of context aware application in smart homesAdaptive middleware of context aware application in smart homes
Adaptive middleware of context aware application in smart homes
 
Context as a Service
Context as a ServiceContext as a Service
Context as a Service
 
A short & brief introduction on context and context aware computing
A short & brief introduction on context and context aware computingA short & brief introduction on context and context aware computing
A short & brief introduction on context and context aware computing
 
Context-Aware Recommender Systems for Mobile Devices
Context-Aware Recommender Systems for Mobile DevicesContext-Aware Recommender Systems for Mobile Devices
Context-Aware Recommender Systems for Mobile Devices
 
Context-aware Mobile Computing - a Literature Review
Context-aware Mobile Computing - a Literature ReviewContext-aware Mobile Computing - a Literature Review
Context-aware Mobile Computing - a Literature Review
 
UX for emerging technologies & context-aware computing
UX for emerging technologies & context-aware computingUX for emerging technologies & context-aware computing
UX for emerging technologies & context-aware computing
 
Context Awareness in Mobile Computing
Context Awareness in Mobile ComputingContext Awareness in Mobile Computing
Context Awareness in Mobile Computing
 
Context-Aware Adaptation
Context-Aware AdaptationContext-Aware Adaptation
Context-Aware Adaptation
 
[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...
[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...
[UMAP2013]Tutorial on Context-Aware User Modeling for Recommendation by Bamsh...
 
Context-aware application development with FIWARE #CPBR8
Context-aware application development with FIWARE #CPBR8Context-aware application development with FIWARE #CPBR8
Context-aware application development with FIWARE #CPBR8
 
5 context aware services
5 context aware services5 context aware services
5 context aware services
 
Context-Aware Computing
Context-Aware ComputingContext-Aware Computing
Context-Aware Computing
 
Capability Patterns as the Enablers for Model-based Development of Business C...
Capability Patterns as the Enablers for Model-based Development of Business C...Capability Patterns as the Enablers for Model-based Development of Business C...
Capability Patterns as the Enablers for Model-based Development of Business C...
 
Context Aware Computing
Context Aware ComputingContext Aware Computing
Context Aware Computing
 
Webcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware AppsWebcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware Apps
 
Pervasive computing
Pervasive computingPervasive computing
Pervasive computing
 
Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...
Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...
Luz rello - Ph.D. Thesis presentation - DysWebxia: A Text Accessibility Model...
 
Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive Computing
 
Designing in Context
Designing in ContextDesigning in Context
Designing in Context
 

Similar to [2C3]Developing context-aware applications

Introduction to Artificial Intelligence (AI) at Amazon
Introduction to Artificial Intelligence (AI) at Amazon Introduction to Artificial Intelligence (AI) at Amazon
Introduction to Artificial Intelligence (AI) at Amazon Amanda Mackay (she/her)
 
Danilo Poccia & Massimo Re Rerre - vmugit usercon
Danilo Poccia & Massimo Re Rerre - vmugit userconDanilo Poccia & Massimo Re Rerre - vmugit usercon
Danilo Poccia & Massimo Re Rerre - vmugit userconVMUG IT
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011davyjones
 
GAB 2017 PARIS - IoT Azure - Aymeric Weinbach
GAB 2017 PARIS - IoT Azure - Aymeric WeinbachGAB 2017 PARIS - IoT Azure - Aymeric Weinbach
GAB 2017 PARIS - IoT Azure - Aymeric WeinbachAZUG FR
 
Gab 2017 iot azure aymeric weinbach
Gab 2017 iot  azure aymeric weinbachGab 2017 iot  azure aymeric weinbach
Gab 2017 iot azure aymeric weinbachAymeric Weinbach
 
AI and Innovations on AWS
AI and Innovations on AWSAI and Innovations on AWS
AI and Innovations on AWSAdrian Hornsby
 
AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...
AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...
AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...Amazon Web Services
 
Using artificial intelligence to enhance your customer experience
Using artificial intelligence to enhance your customer experienceUsing artificial intelligence to enhance your customer experience
Using artificial intelligence to enhance your customer experienceAmazon Web Services
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Todaydavyjones
 
Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture DevConFu
 
Moving Forward with AI
Moving Forward with AIMoving Forward with AI
Moving Forward with AIAdrian Hornsby
 
SacHacks Keynote Open Source Software and IBM Z
SacHacks Keynote Open Source Software and IBM ZSacHacks Keynote Open Source Software and IBM Z
SacHacks Keynote Open Source Software and IBM ZJavier Perez
 
Open source and AI keynote
Open source and AI keynoteOpen source and AI keynote
Open source and AI keynoteJavier Perez
 
Pepper worldparis 2017 ai4all
Pepper worldparis 2017 ai4allPepper worldparis 2017 ai4all
Pepper worldparis 2017 ai4allBenoit Le Pichon
 
Pro Mobile web Apps with Phonegap 3.X - Adobe Mobile Day
Pro Mobile web Apps with Phonegap 3.X - Adobe Mobile DayPro Mobile web Apps with Phonegap 3.X - Adobe Mobile Day
Pro Mobile web Apps with Phonegap 3.X - Adobe Mobile Daybersoriano
 
Introduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWSIntroduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWSAmazon Web Services
 
Building a Thought Controlled Drone
Building a Thought Controlled DroneBuilding a Thought Controlled Drone
Building a Thought Controlled DroneJim McKeeth
 
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)Jonathan Wiley
 
Mobile devices 5
Mobile devices 5Mobile devices 5
Mobile devices 5lerichard
 

Similar to [2C3]Developing context-aware applications (20)

Introduction to Artificial Intelligence (AI) at Amazon
Introduction to Artificial Intelligence (AI) at Amazon Introduction to Artificial Intelligence (AI) at Amazon
Introduction to Artificial Intelligence (AI) at Amazon
 
Danilo Poccia & Massimo Re Rerre - vmugit usercon
Danilo Poccia & Massimo Re Rerre - vmugit userconDanilo Poccia & Massimo Re Rerre - vmugit usercon
Danilo Poccia & Massimo Re Rerre - vmugit usercon
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011
 
GAB 2017 PARIS - IoT Azure - Aymeric Weinbach
GAB 2017 PARIS - IoT Azure - Aymeric WeinbachGAB 2017 PARIS - IoT Azure - Aymeric Weinbach
GAB 2017 PARIS - IoT Azure - Aymeric Weinbach
 
Gab 2017 iot azure aymeric weinbach
Gab 2017 iot  azure aymeric weinbachGab 2017 iot  azure aymeric weinbach
Gab 2017 iot azure aymeric weinbach
 
AI and Innovations on AWS
AI and Innovations on AWSAI and Innovations on AWS
AI and Innovations on AWS
 
Artificial Intelligence on AWS
Artificial Intelligence on AWSArtificial Intelligence on AWS
Artificial Intelligence on AWS
 
AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...
AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...
AWS Summit Sydney 2014 | Closing Keynote - Dr Werner Vogels, VP & CTO, Amazon...
 
Using artificial intelligence to enhance your customer experience
Using artificial intelligence to enhance your customer experienceUsing artificial intelligence to enhance your customer experience
Using artificial intelligence to enhance your customer experience
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
 
Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture
 
Moving Forward with AI
Moving Forward with AIMoving Forward with AI
Moving Forward with AI
 
SacHacks Keynote Open Source Software and IBM Z
SacHacks Keynote Open Source Software and IBM ZSacHacks Keynote Open Source Software and IBM Z
SacHacks Keynote Open Source Software and IBM Z
 
Open source and AI keynote
Open source and AI keynoteOpen source and AI keynote
Open source and AI keynote
 
Pepper worldparis 2017 ai4all
Pepper worldparis 2017 ai4allPepper worldparis 2017 ai4all
Pepper worldparis 2017 ai4all
 
Pro Mobile web Apps with Phonegap 3.X - Adobe Mobile Day
Pro Mobile web Apps with Phonegap 3.X - Adobe Mobile DayPro Mobile web Apps with Phonegap 3.X - Adobe Mobile Day
Pro Mobile web Apps with Phonegap 3.X - Adobe Mobile Day
 
Introduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWSIntroduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWS
 
Building a Thought Controlled Drone
Building a Thought Controlled DroneBuilding a Thought Controlled Drone
Building a Thought Controlled Drone
 
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
 
Mobile devices 5
Mobile devices 5Mobile devices 5
Mobile devices 5
 

More from NAVER D2

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다NAVER D2
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...NAVER D2
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기NAVER D2
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발NAVER D2
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈NAVER D2
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&ANAVER D2
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기NAVER D2
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep LearningNAVER D2
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applicationsNAVER D2
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingNAVER D2
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지NAVER D2
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기NAVER D2
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화NAVER D2
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)NAVER D2
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기NAVER D2
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual SearchNAVER D2
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화NAVER D2
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지NAVER D2
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터NAVER D2
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?NAVER D2
 

More from NAVER D2 (20)

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual Search
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
 

Recently uploaded

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
WomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyoneWomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyoneUiPathCommunity
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialJoão Esperancinha
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
QMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfQMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfROWELL MARQUINA
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Why Agile? - A handbook behind Agile Evolution
Why Agile? - A handbook behind Agile EvolutionWhy Agile? - A handbook behind Agile Evolution
Why Agile? - A handbook behind Agile EvolutionDEEPRAJ PATHAK
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 

Recently uploaded (20)

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
WomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyoneWomenInAutomation2024: AI and Automation for eveyone
WomenInAutomation2024: AI and Automation for eveyone
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorial
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
QMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfQMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdf
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Why Agile? - A handbook behind Agile Evolution
Why Agile? - A handbook behind Agile EvolutionWhy Agile? - A handbook behind Agile Evolution
Why Agile? - A handbook behind Agile Evolution
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 

[2C3]Developing context-aware applications

  • 1. Developing context-aware applications Marsal Gavaldà Expect Labs @MarsalGavalda marsal@expectlabs.com
  • 2. Anticipatory computing is transforming the way we find information Set reminder - Launch calendar app - Create new reminder - Enter flight details Check flight status - Launch web browser - Go to airline site - Enter flight number Check traffic - Launch web browser - Go to map / traffic site - Enter current location - Enter airport address Today, we find information Tomorrow, information finds us
  • 3. Anticipatory computing relies on context awareness Source: “Entourage” by HBO
  • 4. Source: Our Mobile Planet by Google Smartphone adoption (2013)
  • 5. Mobile devices capture context via many sensors Source: Samsung Source: funf.org - Cameras - Microphones - Cellular receiver - Wi-Fi receiver - GPS receiver - Gyroscope - Thermometer - Barometer - …
  • 6. Backend systems infer user situation, activity, intent, mood Sources: GigaOM, Robin Labs
  • 9. Recent technology advances Speech Recognition - Deep learning (deep / recurrent ANNs) - Ultra large language models - Dynamic speaker adaptation - Massive datasets (108s of users) Computer Vision - Deep learning - Massive datasets Language Understanding - Deep learning - Knowledge graphs Source: Facebook Source: Stanford University
  • 10. Knowledge graphs From disembodied strings to grounded entities • Yahoo! 10 M entities, 30 M properties, 10 M connections • Microsoft 300 M entities, 800 M connections • Google 570 M entities, 18 B properties and connections • Wikipedia 4 M entities • Freebase 40 M topics, 2 B facts • Factual 66 M local businesses and POIs in 50 countries • LinkedIn 225 M people • Facebook 1.15 B people Cf. • Cyc 239 K concepts, 2 M facts • OpenCyc 6 K concepts, 60 K facts Source: Yahoo
  • 11. Dynamic activation of the knowledge graph TIME Continuous user context hayes valley palo alto north beach cow hollow I really want to see that new movie with Ben Affleck It is the one about the Iran Hostage Crisis You have to see that video of the Today Show doing the Harlem Shake I am going to meet Raymond at Goat Hill Pizza at noon It is near the Comstock Saloon I am planning to go whitewater rafting in the Grand Canyon The Black Keys were on the Colbert Report last night It is near the Comstock Saloon Rolling Context Window Dynamic entity graph (~10M entities) things I recently wrote or said restaurants near North Beach places in the Bay area topics related to things I recently read current my friends, colleagues events and recent contacts links that my friends have recently shared Human Knowledge (~50B entities) 5B people 1B places 1B products 100M interests 100M events 1B media 2008 (1M entities) 2010 (10M entities) 2014 (500M entities) 2016 (10B entities) 5B domain-specific
  • 12. The knowledge graph enables anchored NLP “I saw the man on the hill with the telescope” Source: Deniz Yuret
  • 13. Voice 10% of Baidu search queries are done with voice today. In five years, it’ll be 50% ” Andrew Ng
  • 14. Types of voice-driven applications Question & Answer "What is the capital of California?" "Who directed Citizen Kane?" Command & Control "Call Jenny's work phone." "Turn up the heat to 72 degrees." Content Discovery "Is there a good Japanese restaurant near Union Square?" "Show me all the James Bond movies with Roger Moore." Performing Tasks "Make a reservation for two at Kama tomorrow at 8pm." "Book me on a flight to JFK on Saturday afternoon." Dictation "Send a text to Jenny saying…" "Send the following email to Joe…" Passive Listening "…have you seen that video of the Russian meteor…" "…I’m thinking of getting a pair of red Kobe 9 sneakers…"
  • 15. Anatomy of a voice interaction 1. Speech recognition 2. Natural language understanding type: restaurant category: Italian location: San Francisco cost: $, $$ filter: good for kids ”It’d be nice to find an inexpensive Italian restaurant in San Francisco that is good for kids.” 3. Search ranking & filtering 4. Real-time visualization of results Candidate 1: Buca di Beppo [confidence: 0.91] Candidate 2: La Traviata [confidence: 0.82] Candidate 3: Ragazza [confidence: 0.80] Candidate 4: Sotto Mare [confidence: 0.76] …
  • 16. The MindMeld platform generate a continuously changing model of user intent based on long-12running context passively analyze multiple concurrent data streams for each user in real-time voice, gps, video, updates, … 3 proactively find, correlate and rank relevant information display to user as appropriate
  • 18. CONFIDENTIAL Step 1 ! We will automatically index ! any document collection.! 18
  • 19.
  • 20. CONFIDENTIAL Step 1 ! We will automatically index ! any document collection.! !! Step 2 ! Use our API to continuously! track contextual signals for! your users.! ! 20
  • 21. curl -­‐X POST -­‐H X-­‐MindMeld-­‐Access-­‐Token: mindmeld-­‐access-­‐token -­‐H Content-­‐Type: application/json -­‐d '{ text: I was thinking we could go to Muir Woods or Stinson Beach, type:speech, weight:0.5 }' https://mindmeld.expectlabs.com/session/:sessionid/textentries 21
  • 22. CONFIDENTIAL Step 1 ! We will automatically index ! any document collection.! !! Step 2 ! Use our API to continuously! track contextual signals for! your users.! !! Step 3 ! Display context-driven ! search results and ! recommendations.! !!
  • 24. Speech transcription Syntactic analysis Keyphrase entity extraction Utterance classification conversation modeling Correlation extrapolation Doc ranking Utterance propagation
  • 25. Technology choice: Speech recognition Google Nuance • Google’s server-side implementation of HTML5’s webkitSpeechRecognition for Chrome and Android • Fast, interim results, free • 79 languages • No SLA, no iOS support • Nuance NDEV Mobile speech-to-text service • Custom vocabularies • Embedded engine, cloud-based API, and combination • 40 languages • SLA ATT Build own • ATT Speech API • iOS, Android SDK clients to cloud-based API • 19 languages • SLA • Start with open-source speech recognition engine such as Sphinx or Kaldi • Be ready to invest $$$ • Full control
  • 26. Technology choice: Natural language understanding Stanford NLP NLTK • PoS tagging, parsing, entity extraction, co-reference resolution • Java-based SDK • Free (GNU General Public License v2) • PoS tagging, parsing, entity extraction • Python-based SDK • Free (Apache License v2) AlchemyAPI TextRazor • Sentiment analysis, entity / keyword extraction, language detection • Cloud-based API OpenCalais Build own • Extraction of named entities, facts, and events • Cloud-based API • Entity recognition, topic tagging, dependency parsing • Cloud-based API • Combine, extend functionality • Full control • Requires maintenance
  • 27. Technology choice: Machine learning Scikit-learn Weka • Classification, regression, clustering • SVM, logistic regression, random forests, … • Python-based, open-source library • Data analysis, predictive modeling • Wide array of machine learning classifiers • Java-based, free library (GNU GPL) Google GraphLab • Google Prediction API • Pattern matching, classifiers, recommender systems • Freemium pricing PredictionIO Build own • Predictive modeling, recommender systems • Open-source service • Topic modeling, graph analytics, clustering, collaborative filtering, computer vision • Parallel programming • C++ core, Python interface • Combine, extend functionality • Optimize runtime for each model
  • 28. Technology choice: Development operations Amazon Web Services Nitrous.IO • Cloud-based servers, storage, load balancers • Dev box in seconds with browser-based IDE GitHub Chef • Code repos management • Server provisioning Nginx Nagios • Operations monitoring alerting Circle CI Pivotal Tracker • Project management • Web server • Test build
  • 29. Challenges Functionality Accuracy Scalability • Users • Applications • Domains Latency • ASR • NLU • IR • Visualization ASR • Word error rate • Accented speech • Noisy environment • Distant speaker NLU / IR • Precision recall • Word sense disambiguation • Anaphora resolution • Conversation modeling • Interruptability
  • 30. MindMeld API: Powerful yet easy to use developer.expectlabs.com real-time location entity extraction speech recognition on any device on any device Android SDK iOS SDK JavaScript SDK sample code turnkey HTML5 widgets push events open graph support customizable ranking keyphrase detection topic detection natural language processing on-demand web crawling proactive suggestions instant answers extensive online documentation real-time analytics console complete API explorer tool crawl manager dashboard ranking dashboard
  • 31. MindMeld API: Adaptive ranking factors
  • 32. MindMeld API: Powering a wide range of applications 1 2 3 Voice-Driven Intelligent Assistant Location-Based Proactive Assistant Voice and Video Conference Assistant online commerce media entertainment mobile apps devices wearables location-based services local travel apps smart cars mobile workforce customer support help desk call center solutions voice video calling telepresence collaboration
  • 33. Instant voice-driven search and discovery on your own content developer.expectlabs.com
  • 35. Widescreen Test Pa.ern (16:9) Aspect Ra8o Test (Should appear circular) 16:9 4:3