1. A computer-implemented method of performing recursive learning based on a plurality of feature values, the method comprising: generating, by a computer, a plurality of models for a plurality of input features; receiving, by the computer, a plurality of examples, each example providing a plurality of input feature values corresponding to the plurality of input features; applying, by the computer, a recursive learning process to each respective example included in the plurality of examples, the recursive learning process comprising: selecting a preferred model from the plurality of models, the preferred model providing a lowest predicted error value when applied to the respective example, and associating the respective example with the preferred model; receiving a new example comprising a plurality of new input feature values; using, by the computer, the plurality of new input feature values to select a similar example from the plurality of examples; identifying, by the computer, one or more corresponding preferred models associated with the similar example; and applying, by the computer, the one or more corresponding preferred models to the new example.