The terms ‘Machine Learning’ and ‘AI’ are banded around all too easily without an explanation as to what they’re for in an IoT solution and, in a real-world scenario, what they’ll achieve.
With this blog, we want to explain in plain English exactly what they are and what they’re for when you’re looking at utilizing them in your commercial or industrial IoT scenario, as well as the stages required to build one for your organization.
What is Machine Learning and AI?
At its simplest, Machine Learning is just another form of computer programming language when compared to other, more traditional languages.
The world’s most widely used (and arguably best) for Machine Learning is called ‘Python’. When talking about what’s different about it vs. other normal programming, it’s best to explain it like this:
- With normal programming, you write code that takes certain known steps to answer a question that you’ve posed. It’s used when you know which data holds the answer to your query, it’s in the right format (i.e. clean and consistent) and what it will take to discover the answer, e.g. when there’s a power spike, see which machine is causing it and shut it off.
- With Machine Learning, you only know the answer you want to get to but don’t know how to or which is the best way to get to it, or even what data (which could be a complete mess of there be massive amount of it) holds it. For example, if power spikes are caused by a piece of machinery failing, you can stop them by identifying machinery that’s starting to fail before it actually does and causes a spike. To get there, you create an algorithm and give it real-time data from machinery and leave it to find the formula as to how to identify a failing machine.
- To take it a step further, AI is the ongoing use of a ‘trained’ (we’ll explain this in a moment) Machine Learning algorithm to constantly improve, react and then take automated actions off of the back of changing real-time data feeds. So, in the above scenario, it could be used to not just identify when a machine is failing, but what specifically is failing, how it can be fixed (or even fix it itself through self-healing!) and then changing operations to prevent future similar failures from occurring.
How to build and deploy a Machine Learning algorithm (in lay-man’s terms)
There are five steps (or bits) to creating an effective Machine Learning model (read: algorithm) that’s capable of answering any question posed to it and then making the most of it:
- Prepare your data – you identify where the answer to your query is going to lie, you collate and collect all your data together in a central repository. Once you have a large enough data set, e.g. in the above scenario, there’s been a failure in the machinery and you’ve been collecting all the relevant data that you’d need to predict a failure (i.e. you might need to apply IoT devices first and run them for a while), you then take a chunk of the data offline (where the problem was) and isolate it for training.
- Build or choose your algorithm – sounds scary but it doesn’t have to be. Depending on what you want to do, there are likely off-the-shelf algorithms that you can buy or download that you can adjust and use with your data. There are also platforms (like Rayven's Dynamix integrated data, AI + IoT platform) where you can build your own (or adjust an existing one) using an easy drag-and-drop, intuitive interface – one of our goals is to democratize Machine Learning and AI, meaning you didn’t need a degree in computer programming to create one.
- Training / Learning – you apply the algorithm to the prepared offline data and leave it to create a model that’s able to answer the questions that you have posed to it. In plain English, if you’re looking for machinery failure, you’ll give it all the data that you have available around a past failure and leave it to find the points at which the failure could have been predicted. It’s likely to find a few ways, so you will need to evaluate these individually once you make them live to discover which is the most effective.
- Deployment – once you have chosen a model or models (if you’re wanting to compare their performance), you then deploy the trained algorithm into the platform that you’ll be using for Machine Learning and AI (the best, and we’re not just saying this because it’s the way Rayven’s built) are the ones where IoT and Machine Learning are in the same, single platform that you’re using for IoT monitoring and management (you can read why this is the case here) and leave it to run using live, real-time data that’s coming into it. From here, it’ll be able to flag to you when failures in your machinery are likely to occur.
- Ongoing improvement – as your algorithm operates, faults occur and you (and it) learn from missed breakdowns, your model evolves. What this means is that it gets better at predicting different types of failures and provides you with the opportunity to build out on it. For example, once predictive maintenance is cracked, you can build on it or deploy a sister algorithm that starts looking at how you can improve energy efficiency of your machines, load balancing across your facility, or model operational changes and the impact that that will have on machinery lifespan, energy usage etc. – the possibilities are endless!
Does that all make sense? If not, do get in contact with us – we’re more than happy to talk through exactly what Machine Learning is and how you might be able to use it in your business (all free of cost and obligation).
Alternatively, if you’re interested in finding out more about why Machine Learning and IoT are made for each other and why they should be in the same platform (beware! Many that appear to be in the same, actually aren’t) then read our blog that covers just that.