Comment
Comment by Reelin
Actually, in the age of ML it more or less does. You wire up the model, specify the metrics to optimize for, and then feed it lots of data. The algorithm figures out the details of how to achieve the specified goal on it's own. Have a look at (https://cs.stanford.edu/people/karpathy/convnetjs).