Mobile Context Recognition is the process of inferring what a mobile device user is doing based on data that mobile devices passively collect (like accelerometer data). It enables developing applications that can respond and adapt to the user's activity.
The context aware computing market has tremendous potential. Building context aware applications can let you tap into the $70+ billion mobile application market. Imagine using an application that could automatically start tracking your fitness whenever you started running; or playing music based on the weather and the activity you were doing.
A mobile advertising company could benefit tremendously by serving ads only when a user is most likely to see them - for example - when she is not sleeping or running outside.
With this in mind, we set out to build a context recognition service running on a predictive modeling framework developed using publicly available datasets. To demonstrate this capability, we created an Android application called GoalTick.
GoalTick is a fitness tracking application that allows you to set a fitness goal and forget it. GoalTick automatically tracks your progress against your goals, gives positive feedback when you meet a goal, and gently reminds you when you're falling behind.
Most fitness trackers rely on network calls to determine user activity. That's why we built GoalTick to run the prediction algorithm entirely the device. By utilizing only the device hardware capabilities, users are able to save both battery life and wireless data capacity.
What about enterprise application?
Using the same algorithms we trained to recognize context on the device, we have also deployed a REST API endpoint for bulk prediction services. A mobile app developer who does not have a data scientist on hand can still get context predictions about his or her users with a simple HTTP request.