Algorithm has no formal and precise definition, however, for our purposes an Algorithm is an abstract concept that describes how to solve a problem.
Algorithm as an abstraction of a Function where the steps are defined. but, the method of performing the steps are NOT defined.
Algorithm Implementations are referred to as a Function
Y = f(X)
This is a general learning task where we would like to make predictions in the future (Y) given new examples of input variables (X).
We don’t know what the function (f) looks like or it’s form. If we did, we would use it directly and we would not need to learn it from data using machine learning algorithms.