Blog

Aug 18, 2016 · guest post

Giving Speech a Voice in the Home

image
This is a guest post by Sean Lorenz, the Founder & CEO of SENTER, a Boston-based startup using sensors and data science to support healthcare in the home. Sean explains how techniques from computational neuroscience can help make the smart home smarter and describes the speech recognition hurdles developers have to overcome to realize smart home potential.

Consumer IoT pundits rave about the “smart home,” where our lights, shades, sprinklers and coffeemakers do what we want them to do automatically as they learn about our behaviors and habits. But the fact is that our homes are still far from being smart. Manufacturers have focused primarily on enabling existing products to send and receive data to/from a customer’s mobile phone. Much of this work is outsourced to services teams with expertise in full stack web and mobile app development; they’re great at whipping up dashboards and control buttons, but not at solving the problems that matter most to consumers.

Today, the smart home lacks three critical ingredients that hinder widespread consumer adoption: 

  1. Lack of protocol agreement, with increasing local protocol alliances.
  2. Lack of intelligence. IFTTT is great for early adopter techies, but my cookie-baking 62-year-old midwestern mom is never going to create a rule to combine her Philips Hue lights and SmartThings motion sensors to perform an automated action. Like…never ever ever.
  3. Lack of user experience.  Home automation software seems to be stuck in the era of Wham!, Duck Hunt, and power-dressing with shoulder pads. Apple announced their own HomeKit app to give IoT iPhone developers a hand, but we’re a long way from usability.

The upshot? Data scientists have an important role to play in taking the home from being connected to being smart. I believe this will result from creating context-aware, speech-based applications that combine, and make better use of, data streaming in from sensors across potentially dozens of connected products in the home.

At SENTER, we are tackling one lobe in the smart home brain – health. As the US transitions from fee-for-service to value-based care, health care management is migrating from the hospital to our homes. We all know that a few charts and graphs telling patients how many steps they took today isn’t enough to reduce hospitalizations or predict flare ups in chronic illness.

But magic happens when we combine data from multiple sensors to create a user experience that makes managing health easier and more natural. At Senter we knew that a simple, rules-based system wouldn’t work for predicting an individual’s unique health concerns. Traditional machine learning approaches weren’t working well either. The biggest data science problem we faced was dealing with feature stacking across numerous time series streams.  

In the rest of this post, I’ll dive deeper into the data science problems we’re working on to make a smart home health system work: 1) learnable sensor fusion algorithms and 2) better voice-based intelligent assistant applications.

Sensor Function

As a computational neuroscience PhD student, I devoured papers on multimodal sensor integration in the mammalian brain. There’s a very special part of the brain called the posterior parietal cortex (PPC) whose job is to bind together inputs from across the sensory and motor areas to create higher level cognitive decision-making and planning. Modeling this area of the brain is extremely nonlinear and very hard to do (see my sad attempt here).

image
An old-school brain functions diagram

What does this have to do with the smart home? IoT needs to tackle the same problem, only with non-biological sensors. The goal of sensor fusion is to combine data from various sensor inputs to make smarter decisions.

Consider the example of predicting sepsis, a very serious condition among the elderly. Some key symptoms are fever, shaking chills, very low body temperature, decreased urination, rapid pulse and breathing rate, and vomiting. With smart home tools, we could use a connected bed mat to track body temperature, shaking or chills motion, and breathing rate; motion sensors to track times entered the bathroom; urine detection sensors in the toilet; and a wrist wearable to track heart rate. With the data collected, how would we fuse all these sensors to predict septic events?

There are different data science methods that are well-equipped for time series analysis. I’ve looked into recurrent neural networks with LSTM (see my IoT Slam talk and Ajit Jaokar’s work for reference). Another popular method, used by the Google self-driving car team, is Bayesian inference (see here). Alexandre Pouget and his research team even suggested that the brain uses a form of Bayesian inference to integrate and make sense of all this sensory input data. That said, there is plenty of preprocessing that goes on before it even reaches sensor fusion…but that’s a topic for another time!

How voice-based interaction systems need to evolve

Just predicting that a person is septic is not enough. We probably want to let them know! Part two of making the smart home actually smart requires seamless user interaction to improve algorithmic performance over time. So the next question becomes, what’s the best way to get users to engage with the systems and make their smart homes smarter? I believe voice-based devices and intelligent assistants like the Amazon Echo or Google Home will soon be the predominant site of user interaction, overtaking smartphones or tablets.  

Imagine you’re a homeowner who just contracted a developer to build an AWS application that streams real-time IoT products to manage and reduce home energy usage. Your developer starts by creating a lambda function on sensor fusion algorithms to automatically adjust lights and shades, turn off outlets, and change room temperatures to keep the electric bill low. If her algorithms open the shades at times you don’t like, you need a way to correct that behavior, to tell the application to adjust its network weights. You could certainly tune weights with a prompt in a smartphone app, but it’s far more natural to say “Alexa, please raise my blinds back up.” An Alexa custom skill can then relay this feedback up the chain to the AWS application so it can update its behavior.

While this may sound good in theory, is it actually possible? Yes and no. At SENTER we’ve found that people (particularly elderly patients) absolutely love the idea of using voice-based devices for user experience. Returning to our sepsis example, we can now ask seniors qualitative questions about how they’re feeling to strengthen confidence scores. But a number of UX and interaction issues still need to be solved before systems like Amazon Echo can really take off in smart home applications.

The biggest issue with voice-based interfaces (and Amazon Echo in particular) is two-way interaction. There is currently no way for a developer to program Echo to ask homeowners unprompted questions (but developers frequently request this from the Alexa team). Let’s say we want to use the motion sensors to trigger when someone is in the same room as the Echo so that we can ask them the occasional health-related question or ask “Did you just fall, Mrs. Jones? Should I call for help?” Denny Britz’s excellent vision of conversational interfaces with machines in the home will have to wait a little longer.

Equally problematic is how these devices process human language. It’s a very hard problem to build a bot that can process a statement it hasn’t seen before, making inferences like we do in daily conversations. Indeed, there are frustratingly many responses to the simple question “How are you feeling today?” When building an Echo app today, developers must provide a list of sample utterances for how a user might respond, which hinders the ability to continually learn. Deep learning may advance flexibility in the future, but we have work to do. Amazon’s got a healthy head start, and Viv, Apple and Google are following suite.

Lastly, the combination of smart homes and voice-based interfaces need stronger use cases (beyond knowing my IoT toothbrush brush count or having my refrigerator tweet when I need milk). I’ve spoken to hundreds of device manufacturers, investors, homeowners and IoT conference attendees over the years, and can confidently say that people don’t want a smartphone app for every connected product they buy. They want it all to just work together. In one simple user experience. And most importantly — they want their smart home to manage typical functions like energy, safety, lighting or health.

Intelligent, semi-supervised sensor fusion coupled with natural communication via a speech-based assistant in the home will get us there. Alexa, please Google “sensor fusion papers.” Let’s get to work.

- Sean Lorenz

Read more

Newer
Aug 22, 2016 · whitepaper
Older
Aug 12, 2016 · whitepaper

Latest posts

Nov 15, 2020 · post

Representation Learning 101 for Software Engineers

by Victor Dibia · Figure 1: Overview of representation learning methods. TLDR; Good representations of data (e.g., text, images) are critical for solving many tasks (e.g., search or recommendations). Deep representation learning yields state of the art results when used to create these representations. In this article, we review methods for representation learning and walk through an example using pretrained models. Introduction Deep Neural Networks (DNNs) have become a particularly useful tool in building intelligent systems that simplify cognitive tasks for users.
...read more
Jun 22, 2020 · post

How to Explain HuggingFace BERT for Question Answering NLP Models with TF 2.0

by Victor · Given a question and a passage, the task of Question Answering (QA) focuses on identifying the exact span within the passage that answers the question. Figure 1: In this sample, a BERTbase model gets the answer correct (Achaemenid Persia). Model gradients show that the token “subordinate ..” is impactful in the selection of an answer to the question “Macedonia was under the rule of which country?". This makes sense .. good for BERTbase.
...read more
Jun 16, 2020 · notebook

Evaluating QA: Metrics, Predictions, and the Null Response →

by Melanie · A deep dive into computing QA predictions and when to tell BERT to zip it! In our last post, Building a QA System with BERT on Wikipedia, we used the HuggingFace framework to train BERT on the SQuAD2.0 dataset and built a simple QA system on top of the Wikipedia search engine. This time, we’ll look at how to assess the quality of a BERT-like model for Question Answering.
qa.fastforwardlabs.com
May 19, 2020 · notebook

Building a QA System with BERT on Wikipedia →

by Melanie · So you’ve decided to build a QA system. You want to start with something simple and general so you plan to make it open domain using Wikipedia as a corpus for answering questions. You want to use the best NLP that your compute resources allow (you’re lucky enough to have access to a GPU) so you’re going to focus on the big, flashy Transformer models that are all the rage these days.
qa.fastforwardlabs.com
Apr 28, 2020 · notebook

Intro to Automated Question Answering →

by Melanie · Welcome to the first edition of the Cloudera Fast Forward blog on Natural Language Processing for Question Answering! Throughout this series, we’ll build a Question Answering (QA) system with off-the-shelf algorithms and libraries and blog about our process and what we find along the way. We hope to wind up with a beginning-to-end documentary that provides:
qa.fastforwardlabs.com
Apr 1, 2020 · newsletter

Enterprise Grade ML

by Shioulin · At Cloudera Fast Forward, one of the mechanisms we use to tightly couple machine learning research with application is through application development projects for both internal and external clients. The problems we tackle in these projects are wide ranging and cut across various industries; the end goal is a production system that translates data into business impact. What is Enterprise Grade Machine Learning? Enterprise grade ML, a term mentioned in a paper put forth by Microsoft, refers to ML applications where there is a high level of scrutiny for data handling, model fairness, user privacy, and debuggability.
...read more

Popular posts

Oct 30, 2019 · newsletter
Exciting Applications of Graph Neural Networks
Nov 14, 2018 · post
Federated learning: distributed machine learning with data locality and privacy
Apr 10, 2018 · post
PyTorch for Recommenders 101
Oct 4, 2017 · post
First Look: Using Three.js for 2D Data Visualization
Aug 22, 2016 · whitepaper
Under the Hood of the Variational Autoencoder (in Prose and Code)
Feb 24, 2016 · post
"Hello world" in Keras (or, Scikit-learn versus Keras)

Reports

In-depth guides to specific machine learning capabilities

Prototypes

Machine learning prototypes and interactive notebooks
Library

NeuralQA

A usable library for question answering on large datasets.
https://neuralqa.fastforwardlabs.com
Notebook

Explain BERT for Question Answering Models

Tensorflow 2.0 notebook to explain and visualize a HuggingFace BERT for Question Answering model.
https://colab.research.google.com/drive/1tTiOgJ7xvy3sjfiFC9OozbjAX1ho8WN9?usp=sharing
Notebooks

NLP for Question Answering

Ongoing posts and code documenting the process of building a question answering model.
https://qa.fastforwardlabs.com
Notebook

Interpretability Revisited: SHAP and LIME

Explore how to use LIME and SHAP for interpretability.
https://colab.research.google.com/drive/1pjPzsw_uZew-Zcz646JTkRDhF2GkPk0N

About

Cloudera Fast Forward is an applied machine learning reseach group.
Cloudera   Blog   Twitter