Machine Learning is a well understood process. We typically start with some existing data and pass it through an algorithm. The algorithm 'learns' from that specific data and produces a 'data model'. This model has learnt from the data and now encapsulates information derived from the raw data. We then have to test the model (to see how good it is) and try to incrementally improve it. Finally, we evaluate the finished model and deploy it.