I know a little about these subjects. I found them similar to each other. Can anybody explain the differences between them?
Terms in a field are sometimes defined unambiguously. For instance, we know what convergence means when communicating about machine learning algorithms in academic publications because it has a formal definition in an older field, mathematics. However, the term machine learning is defined ambiguously across academic publications.
Perspectives on Machine Learning
Some see it as a branch of applied probability and statistics involving models with curvature (not usefully approximated by a first degree polynomial) and the application of those principles in digital computing. Some see it as an extension of the work of James Watt and Le Roy MacColl the application of the feedback control concept to digital control. Some see it as the natural result of the pioneering AI work of Norbert Wiener and John Von Neumann, where the adaptive qualities of nature, including neurochemistry, are simulated with the intention of birthing artificial life.
Some don't see that deeply into ML and imagine that its a set of classes and libraries the mastery over which will make for a great career. As shallow as that may seem, that concept may be as true as the other three deeper conceptions.
Perspectives on Data Mining
The term data mining is like that. Each book, and sometimes each chapter within the same book, seems to have its own distinct conception of the verb mining. Although these definitions have some similarity, the term is nothing like the term convergence or even database in IT or melody in music.
Unfolding the metaphor contained in the two words of the term, data mining is digging up data, and perhaps that's a satisfactory definition for the most general use of the term. The information sought is not on the surface, like diamonds dropped onto the ground, but rather underneath and covered with other materials so that one has to survey, dig, and process to get past the worthless material and reveal the gems.
This term has another vantage point. In systems theory there is an important distinction between noise and signal. In data science, what an electrical engineer would call the signal is the listing of statistics, table, graphic, or other visualization miner's client needs to make management decisions. The noise is everything obscuring the signal through complexity, volume, or prominence.
Perspectives on Pattern Recognition
The term pattern recognition is perhaps the most ambiguous because neither of the two words arose in a scientific context.
Early uses of the word pattern in English (and its equivalent in other languages) are related to shelter construction, farming, or early textiles. The notion that the shape of a letter or other symbol or a sequence of phonetic elements that make up a spoken word were patterns only arose recently. Much of the early and current work in pattern recognition involving computers had to do with converting natural language expressions into some functional machine representation.
The term pattern is also ambiguous because of gestalt, the dependence of perception on the orientation of the recognizer at the time of recognition. A sand castle may have an architecture to an architect, a chemical composition to a chemist, an indication of civilization to the starving passengers of a boat adrift, an obstacle in the way to a crayfish, and an imaginary home for a child.
To a mathematician, it may be a three dimensional form with particular surface topology, feature curvature, and dimensions. To a physicist, there may be no significant difference between the sand castle and the seagull flying over it or the air in between them (unless the sand castle is the triumph of the physicists own child).
The orientation of the machine is even more a constraint on the emulation of some aspect of human perception than demonstrated in gestalt psychology experiments. The human can adjust perception when a new kind of pattern or structure is pointed out. Until AI progresses further, that kind of experience, where the computer would say, "Oh, yes. Now I see the old woman in the picture of the young woman," is only realizable in software to the most primitive degree.
Taken literally, the term recognition means the repetition of a cognitive event, but that is not what we mean when we say, "I recognize that," in common speech. We usually mean that a mental search for some set of sensory features (not necessarily any more a pattern than anything else in the sensory stream) is identified and associated with some internal object or concept.
The most common use of a convolutional network (CNN) is neither of these. It is usually used to categorize objects or as a feature extracting sensory front end to a much larger AI design.
Overlap and Associations
With all these ambiguities present, some overlap may be apparent, in that some AI activities may thoroughly involve two or all three of these terms. Certainly some associations between the three terms are obvious.
- When mining data, we may be looking for a particular kind of structure in a sea of data and have a particular search strategy to narrow the search and make it manageable for computing resources available. The test use during the search may be called pattern recognition.
- In machine learning, we may train a network of artificial cells to assist in locating data or features in data that are meaningful to the stakeholders in the project. That would be using ML for data mining projects.
A large number of other associations between the three terms can be made. Which ones would appear most prominent to the expert would depend on the scientific, research, and career orientation of the expert.
Not Sufficient Overlap to be Synonyms
It would be difficult however to declare any two of the three to be synonymous. The three arose out of different kinds of research and from different orientations. Only some of that etymology is preserved in the terms themselves.
Machine learning is a form of pattern recognition. Machine learning is basically the idea of training machines to recognize patterns and apply it to particle problems. Data science is the science of apply machine learning to practical problems such as creating better search engine results or classifying images. Patten recognition is pretty much the umbrella term here. However, I think that the pattern recognition term is sort of falling out of style with how modern data scientists are training neural networks and other machine learning models.
In data mining, we can use machine learning (ML) (with the help of unsupervised learning algorithms) to recognize patterns.
Pattern recognition is a process of recognizing patterns such as images or speech. We can recognise patterns using ML. For example, once a neural net is trained, using ML algorithms, it can be used for pattern recognition. Other methods, even ones not related to ML and data mining, can be used for pattern recognition, such as a fully handcrafted pattern recognition system.
- data mining is mostly associated with statisticians,
- ML is mostly associated with computer scientists whereas,
- pattern recognition is mostly associated with engineers.
Machine Learning is broader than Pattern Recognition. That said, Pattern Recognition doesn't need to learn problems, but can be coded to learn the patterns.
However, Machine Learning can be an additional feature that a system can adopt with new data in order to have a better performance for future.
that's indeed a tough one I could throw in an additional term: Business Intelligence.
just by googling I found an interesting page at Oracle where they try to shed light:
I think I'm not allowed to post external links
but in the datascience.com blog it has this slug
and states: AI is the broader term and machine learning is, in fact, a subset of AI. Machine learning is about creating and implementing algorithms that let machines receive data and use this data to analyze patterns, make predictions, and give recommendations on their own. It is an approach to AI, but not AI itself.
So based on that and when trying to make Venn diagrams:
Pattern Recognition is a problem-solving task or tool in Machine Learning
Data Mining is a use case in Machine learning where pattern recognition can be one tool to apply depending on the problem (e.g. facial or fingerprint recognition)
Machine Learning is an overall term and subset of AI applying more to the analytical way to make machines learn.
Business Intelligence would be a subset of AI which uses MachineLearning as a tool
Example Fraud Detection.
Fraud Detection is an example usecase of Business Intelligence.
You need to apply data-mining to find frauds
There are two approaches: you give the machine the Fraud Schemes which it uses pattern recognition to find potential frauds
OR you use machine learning, to automatically learn about patterns in the data which you later assign a fraud probability (supervised learning), which you then use for pattern recognition in new data.
The slight difference is here, that in the first approach humans provide the patterns for the pattern matching, in the second approach machine learning is used to detect patters in the data, which then are classified (supervised learning algorithms) which then are used for pattern recognition).