Aspects of the technology described herein can analyze signal data from multiple computing devices to ascertain a user's exercise pattern. Understanding a user's exercise pattern can help reduce power usage by automatically turning physiological sensors on and off to coincide with the start and end of an exercise event. Exemplary computing devices that can provide signal data related to a user's exercise routine can include a mobile computing device (e.g., smart phone) that captures location signals and other contextual data and a wearable computing device (e.g., fitness tracker) that captures physiological characteristics of the user, such as heart rate, temperature, and movement. The signals captured by the multiple computing devices can be analyzed together to determine when an individual exercise event has occurred. The plurality of exercise events associated with a user or group of users can be analyzed to ascertain an exercise pattern.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computing system comprising: a processor; one or more sensors configured to provide sensor data, including, at least location data for a mobile computing device; and computer storage memory having computer-executable instructions stored thereon which, when executed by the processor, implement a method of inferring an exercise pattern, the method comprising: (1) receiving, from a wearable computing device, physiological sensor data describing physiological states of a user wearing the wearable computing device at different points in time; (2) using an exercise event inference engine to identify an exercise event by comparing the location data and the physiological sensor data to an exercise event criteria; (3) storing a record of the exercise event in an exercise event data store that comprises a plurality of exercise events, the record comprising contextual features associated with the exercise event; (4) using an exercise pattern inference engine to identify the exercise pattern by using a machine learning mechanism that analyzes the plurality of exercise events to identify a plurality of events having common contextual features, the exercise pattern associated with a pattern context; and (5) storing a description of the exercise pattern in an exercise pattern data store. 2. The system of claim 1, wherein the method further comprises: determining that a probable future exercise event will occur at a future time that is a threshold time from a present time by analyzing the exercise pattern, the probable future exercise event associated with a location; determining a weather forecast for the location at the future time; determining that the weather forecast does not match a weather context for the exercise pattern; and generating a notification for the user providing information about an alternative exercise venue that is inside. 3. The system of claim 2, wherein the notification comprises an exercise class occurring at the alternative exercise venue during the future time. 4. The system of claim 1, wherein the pattern context includes a periodic context and a behavioral context. 5. The system of claim 2, wherein the method further comprises communicating a start instruction to the wearable computing device to start active tracking at the future time. 6. The system of claim 2, wherein the method further comprises communicating a stop instruction to the wearable computing device to stop active tracking a stop time that is calculated by adding an exercise duration to the future time, wherein the exercise duration is extracted from the exercise pattern. 7. The system of claim 2, wherein the method further comprises: receiving location data at the future time; determining that multiple venues are associated with the location data; and determining that the user is in an exercise venue because the exercise pattern indicates an the probable future exercise event is occurring. 8. A method of inferring an exercise pattern, the method comprising: accessing an inferred exercise pattern for a user; predicting a probable future exercise event based on the exercise pattern, the probable future exercise event comprising a context defined by a venue, a future time, and a behavioral context; and analyzing signal data associated with the user to determine that the behavioral context is not satisfied; and automatically generating a notification to the user about the probable future exercise event. 9. The method of claim 8, wherein the notification is a communication interface having contact address for one or more of a plurality of people predicted to participate in the probable future exercise event. 10. The method of claim 9, wherein the notification further comprises an auto generated message indicating the user will not be present at the probable future exercise event. 11. The method of claim 8, wherein the behavioral context is an outdoor temperature within a specific range determined by analyzing previous exercise events involving an activity to be completed in the probable future exercise event. 12. The method of claim 8, wherein the notification comprises proposing an alternative exercise event time that corresponds with a predicted probable future exercise event time for one or more of a plurality of people that are associated with predicted probable future exercise event. 13. The method of claim 8, wherein the method further comprise generating a plurality of exercise events for the user by analyzing location data generated by a mobile user device and physiological data for the user collected by a wearable computing device. 14. The method of claim 13, wherein the method further comprises generating the inferred exercise pattern using the plurality of exercise events as input into a classifier that identifies a pattern formed by exercise events with common characteristics. 15. The method of claim 8, wherein the method further comprises disambiguating location data provided by a smart phone that corresponds to an exercise venue with physiological data collected contemporaneously with the smart phone being located at the exercise venue to determine that an exercise event did not occur. 16. One or more computer-storage media comprising computer-implemented instructions that when executed by a computer processor cause a computer to perform a method of inferring an exercise pattern comprising: receiving location signal data indicating a location of a mobile computing device associated with a user; receiving physiological signal data describing a physiological state of the user; using an exercise event inference engine to identify an exercise event by analyzing the location signal data and the physiological signal data together, the exercise event comprising an event context; storing a record of the exercise event in an exercise event data store that comprises a plurality of exercise events records; using an exercise pattern inference engine to identify the exercise pattern by finding exercise events having contextual features in common, the exercise pattern associated with a periodic context and a behavioral context; and storing a description of the exercise pattern in an exercise pattern data store. 17. The media of claim 16, further comprising: determining that the behavioral context is not satisfied at a time when the periodic context indicates a probable future exercise event is to occur; and suggesting an alternative exercise event to the user. 18. The media of claim 17, wherein the behavioral context is a calendar with no entries scheduled within a threshold time of the time when the periodic context indicates a probable future exercise event is to occur. 19. The media of claim 17, wherein the user is associated with multiple exercise patterns and the alternative exercise event is from a different pattern associated with the user. 20. The media of claim 16, wherein the behavioral context is being located within a home city.