1. A method of performing a classification, the method comprising: ranking, by a processor, a plurality of features of a training set according to how closely they are correlated to their corresponding classifications; extracting, by a processor, a plurality of features from input data; and selecting, by a processor, a subset of the plurality of features, according to the rankings such that a computational resource cost of the subset is less than a predefined computational resource maximum and a degree of utility achieved by a classification of the subset by a selected classifier is optimized and exceeds a predefined utility minimum; predicting one of the features of the sensor data that is not selected for the subset of features from a predefined number of past samples of the feature and adding the predicted feature to the subset of features; and classifying, by a processor, using the selected classifier and the resulting subset of features.