In one embodiment, a method includes one or more processors that collect motion and physiological sensor data of a user from one or more sensors worn by the user, the sensor data comprising one or more sensor data vectors, generate an activity signature based on the sensor data, determine whether a signature match exists between the activity signature and a known activity signature associated with an activity type from a set of known activity signatures, and if the signature match exists, recognize a known activity type, otherwise if the signature match does not exist, generate an unknown activity type based on the one or more sensor data vectors.