1. A computer-implemented method comprising: training each of a plurality of predictive models using training data, wherein the predictive models include two or more predictive models of a same type that are trained with different combinations of features of the training data; generating, for each of the plurality of trained predictive models, a respective score that represents an estimation of an effectiveness of the respective trained predictive model; receiving a request for a prediction that includes input data from a client system; in response to receiving the request for the prediction, selecting a first subset of the plurality of trained predictive models based on the respective scores of the trained predictive models in the first subset, wherein the plurality of trained predictive models includes the first subset and a second subset, each subset comprises at least one trained predictive model, and the first subset and the second subset are disjoint sets; obtaining a respective predictive output from only each of the selected predictive models in the first subset based on the request and using the input data; combining the predictive outputs to generate a result; and providing the result to the client system.