The definitions of machine learning I was able to find are very vague. What are the common properties of all machine learning algorithms? For example, keyword extraction algorithm (that use only statistical formulas) is ML? Language detection algorithm (that use dictionlaries for every language and statistic) is ML?
Machine Learning is enabling the machine to learn by its mistakes. As the machine is not human you need to find a way to tell it what it is doing wrong and a way to reduce its errors. Typically machine learning involves predictions of something (Numbers, Classes or whatever) All the fields you mentioned involve machine learning and of course statistics. Language is transformed into numeric to be processed by learning algorithm which is then able to predict a language from a text or keywords. Hope been clear.
I would say that essentially they all have
- A definition of a cost function: A SINGLE number that determines how good/bad the algorithm is doing.
- It improves over time: Essentially ALL machine learning algorithms are a loop that runs for a number of iterations, over iterations, the cost defined in point (1) tends to decrease (maybe not at EVERY interation, but in the long term).
If you think in those terms, you will see that ML algorithms match that: Linear and Logistic Regressions, Neural Networks, Random Forests...
I often work with people who treat 'Machine Learning' with a sort of mystical reverence. It doesn't need to be mysterious at all.
I like to describe machine learning as "Extreme curve fitting". Just like any line of best fit in Excel, except the amount of data is huge, the number of dimensions is often large, and the mathematical 'shapes' available to the algorithm to fit the data to are plentiful.
Practically speaking, machine learning takes Data, invokes a bunch of functions or shapes that may be used to describe the data, and jiggles them around using some from of gradient descent until the shapes approximate the data as closely as possible (as defined by some loss function).