An apparatus configured to be worn on an appendage of a user, comprising: a processor; a sensor (120,128) configured to capture motion data of the user; a non-transitory computer-readable medium comprising computer-executable instructions that when executed by the processor perform at least: capturing, from the sensor while being worn on an appendage of the user, a data stream comprising one or more data points generated by the sensor as a result of a motion of the user; validating the one or more data points by comparison to one or more threshold values; transforming the one or more data points into a dataset representing a motion of the user; calculating one or more motion attributes from the dataset; comparing the one or more motion attributes calculated from the dataset to one or more weights of a plurality of motion models; selecting, based on the comparison, a motion model from the plurality of motion models calculated to have a highest-probability of being a best-match for the one or more motion attributes from the plurality of motion models; utilizing the one or more motion attributes as input values to the selected motion model; receiving, from the selected motion model and based on the input values, an energy expenditure value for the user; and determining, from the one or more motion attributes, a motion classification of the user as comprising one of: a linear travel motion and another form of motion, wherein the step of determining a motion classification of the user is performed separately to the step of selecting a motion model. a processor; a sensor (120,128) configured to capture motion data of the user; a non-transitory computer-readable medium comprising computer-executable instructions that when executed by the processor perform at least: capturing, from the sensor while being worn on an appendage of the user, a data stream comprising one or more data points generated by the sensor as a result of a motion of the user; validating the one or more data points by comparison to one or more threshold values; transforming the one or more data points into a dataset representing a motion of the user; calculating one or more motion attributes from the dataset; comparing the one or more motion attributes calculated from the dataset to one or more weights of a plurality of motion models; selecting, based on the comparison, a motion model from the plurality of motion models calculated to have a highest-probability of being a best-match for the one or more motion attributes from the plurality of motion models; utilizing the one or more motion attributes as input values to the selected motion model; receiving, from the selected motion model and based on the input values, an energy expenditure value for the user; and determining, from the one or more motion attributes, a motion classification of the user as comprising one of: a linear travel motion and another form of motion, wherein the step of determining a motion classification of the user is performed separately to the step of selecting a motion model. capturing, from the sensor while being worn on an appendage of the user, a data stream comprising one or more data points generated by the sensor as a result of a motion of the user; validating the one or more data points by comparison to one or more threshold values; transforming the one or more data points into a dataset representing a motion of the user; calculating one or more motion attributes from the dataset; comparing the one or more motion attributes calculated from the dataset to one or more weights of a plurality of motion models; selecting, based on the comparison, a motion model from the plurality of motion models calculated to have a highest-probability of being a best-match for the one or more motion attributes from the plurality of motion models; utilizing the one or more motion attributes as input values to the selected motion model; receiving, from the selected motion model and based on the input values, an energy expenditure value for the user; and determining, from the one or more motion attributes, a motion classification of the user as comprising one of: a linear travel motion and another form of motion, wherein the step of determining a motion classification of the user is performed separately to the step of selecting a motion model.