If you need to classify the contents of images, how can you do this programmatically? There really isn’t a sane method to do this without a system that can learn from what it does right, wrong, or similar. A computer lacks the ability to conceptualize a car, but our biggest problems involve simple, real life objects like that.
Machine Learning (ML) is the process by which a process is created which emulates intelligence. We have a lot of weasel words here because the process is by no means perfect and is by no means actually intelligent. Effectively, there are different models which try to reduce a problem type in such a way we can have a machine create a process which gets a higher quality of results without relying on hardcoded rules. You aren’t looking for a collection of pixels anymore, you’re looking for arbitrarily larger or smaller blocks or pieces which filter down to the object in our image example.
While computers can do mathematical operations and similar at mind-boggling speeds, they have no true understanding of what they’re doing. ML aims to back-port some level of intelligence in a mathematical way that a plain machine can understand. The systems which are built and the theoretical construct that makes it all work relies on a high level of math, especially with linear algebra and statistics. We’re going to skip the math and focus on what matters for trying to understand the basics of how these systems work. This is a cube of ice off of the iceberg of knowledge on machine learning.
What Are Neural Networks?
When most people think of ML or AI, they think of Neural Networks. A neural network is a mathematical way to try and emulate the way neurons work in a brain to take input and act on it. While every artificial neural network based system is going to be a form of machine learning, not every form of machine learning uses neural networks.
Neural networks are popular in Deep Learning and many ML applications. Their advantage is that they aren’t just trying to correlate inputs to outputs, but allowing the system to organize a method to connect the input and the output without a direct connection. You get weighted “neurons” in the system which stand between the input and the output which are shaped by “experience”.
The system is no longer focusing on a specific input, but various elements of the input. Instead of just identifying an image as a car or not, we now view it as a composite of elements which can help determine the “carness” of the whole. This requires more training for the system, but leads to a more adaptable system when done correctly. The neural network is the basis, but you have to have a learning method to build on.
Supervised, Unsupervised, and Reinforcement Learning
These are the fundamental three paradigms to know and understand to have a better idea of how this all works. Most modern systems are based on one of these three types, or a combination of them. Each approach has different requirements and different results.
Supervised Learning is a process where you have a set of inputs and expected outputs. You’re giving the system a task and a series of parameters for it to “reverse engineer” into an abstract process. You can think of it as teaching a child whether something is a fruit or not. You don’t describe fruits in the beginning, you tell them what is and what isn’t a fruit and they have to figure out how to connect the dots. A lot of image detection systems rely on this type of learning.
Unsupervised Learning is the process where a system takes sorted data and abstracts a different classification for it. You feed the system data and let it make sense of it all. To use our fruits analogy, this would be that our system is given a bunch of data and organizes the results so that apples go together with berries because they’re both sweet, but not with avocados even though they’re all technically fruits. Spam detection systems use these sorts of systems.
Reinforcement Learning is an environment centered process for an agent to learn to adapt to the environment. There isn’t a set input or output, but a process and a reward for success, and potentially a penalty for a failure. A dog is traditionally trained on a leash with a similar method, the dog gets a reward when it follows the rules, and a tug back when it doesn’t. There’s a trial and error that leads to the dog learning what it can and cannot do when on a leash. The dog doesn’t understand what the actual rules are or why they matter, just that if it walks in the right spot, it gets a treat.
Models in Machine Learning
The previous three are the primary paradigms in ML, but there are plenty of ways to combine these. A dog can tell its owner apart from any other random person in seconds, but even the most advanced algorithms take a lot of time and effort. The original goal of neural networks and similar approaches was to emulate a biological approach to problem solving. The problem is, we really don’t know how everything works which makes it more complicated.
Ultimately, a machine learning algorithm is reducing a process into a mathematical abstraction. The model and the goal for the finalized process is going to affect what model and what method works best. There are simpler models which can do more with less for specific functions with certain considerations. While neural networks are the most well known, there are other models which can approximate similar (or even better) results with a lot less effort for specific tasks.
There isn’t necessarily a “best model”, but there definitely is a best model for the task at hand. If you’re looking at a product using machine learning, do they say what they did and why or is it just buzzwords? Neural networks are a popular model, but they break down even further with how and why they should be used.
Limitations of Machine Learning
The holy grail of human intelligence hasn’t been cracked yet, and until it is, no machine learning algorithm is going to come even close to a human level of general functionality. The perfect mathematical nature of a computer combined with the emulation of a biological process can beat a human at certain tasks, but it’s still in the uncanny valley at best. Machine learning is good at certain things, but it’s important to know it isn’t always the right answer.
A well-planned heuristic system can beat a poorly planned machine learning approach in every metric. A machine learning approach is only as good as the understanding of the problem at hand, the data, and how to best use it. Great data with the wrong approach gets you a dud just like bad data with the best approach.
Machine learning isn’t magic, but it can be for your business if used right. You have to understand what it does to understand what it can’t do. The representation from a standard neural network that corresponds to a “dog” is not going to look like anything you or I would consider a dog. A computer cannot truly conceptualize… yet. Machine learning is a great tool, but it’s not a panacea. Know how it works to know how it doesn’t or can’t.
Don’t miss our upcoming AI panel session at Virtual VISION!
Making the Jump to AI
Machine Learning (ML) and Artificial Intelligence (AI) are here, but they aren’t quite ready for the mainstream. It’s one thing to know AI is the technology of the future, it’s another thing to think that future is already here. Learn how tech leaders view and make use of these technologies, and what AI and ML can do for you and your business and where they fall short (for now).
Save your FREE spot, register here!