1. Use GP-like search for optimal ruleset 2. Use neural network with representation learning layer to learn feature extraction 3. Use NN to do final regression