CS328: Mobile Health Sensing and Analytics

Overview Schedule
Overview

Course outline:Have you been following the rise in fitness gadgets such such as Fitbit, Apple Watch, Android Wear, and Microsoft Band, and wondered how they calculate your activity patterns, how many calories you have burned each day, track your sleep patterns, and compute your heart rate?

Have you looked at the iPhone or Android App Store and seen activity tracking apps such as RunKeeper and Moves, or other diet and health monitoring apps, and wondered what it would take to develop such an application?

In this course, we will learn how to build the computational elements for developing such mobile health sensing applications by leveraging various sensors on smartphones, including the accelerometer, camera, microphone, and GPS. At the end of the class, you will have created a full-fledged Android App that monitors activity patterns, heart rate, conversation patterns, and your mobility patterns and visualizes them. This is a hands-on course where students learn by doing!

The course will include coverage of the following topics.

  • Sensor data smoothing and denoising
  • Design of a pedometer and calorie counter using your smartphone
  • Recognition of everyday activities using inertial sensors on your smartphone
  • Evaluating classifier performance using cross-validation
  • Quantified self and personal data analytics
  • Voice-based health analytics
  • Physiological sensing using wearable sensors
  • GPS clustering to understand mobility patterns
  • Measuring sleep using wearable devices

Pre-requisites: CMPSCI 187 (Data Structures) or equivalent, or instructor’s approval. Note that you will be required to do programming assignments on smartphones, so programming experience (Java/Objective C) and ability to start programming on a new platform (smartphone) is expected. You will also do some programming assignments using Python's machine learning packages.

Format: The class will meet thrice a week (Mon/Wed/Fri). Since this course is heavy on programming assignments, we will dedicate one class a week (typically Fri) to handling the tutorials and Q&A pertaining to assignments. The class will have substantial emphasis on practical systems development. There will be no textbook for the course but course notes are available.

Grading scheme: See Piazza

Lecture Hours: Monday, Wednesday and Friday - 1:25pm - 2:15pm

Teaching Assistants:
Grad TAs: Priyanka Mammen (pmammen AT umass.edu) and Bhawana Chhaglani (bchhaglani AT umass.edu)
Undergrad TAs: Johan Thomas Sajan (jthomassajan AT umass.edu)

Office Hours:
TBD

Instructor
Deepak Ganesan
LGRC A343 Department
Email: dganesan AT cs DOT umass DOT edu
Course Mailing List: AT cs.umass.edu