The advancements of AI in various areas of our life make it one of the most appreciated technologies today. Impressive successes have been achieved, and the expectations are constantly rising. A tendency to transfer technology from the consumer space to industrial applications is also observed in this area. However, according to several analysts papers, industrial AI projects never get beyond a PoC in approximately 75% of the cases. Why is that the case?
Enthusiastically building on AI’s success in the consumer space often leave some important properties of industrial applications overlooked. In this article we list a few industrial challenges that have to be addressed to make an AI project successful.
Importance of data
The technology that is referred to as AI is today mostly neural networks (see also: Machine Learning). Without going into details, they can be seen as mathematical functions – approximating an output variable from a set of input variables through a trained network.
To train that network, a large data set of labelled data is required. These are data pairs, where the output related to an input is known. The network between the input and the output is then adjusted so that this known output results. Since neural networks may have a large number of internal variables, a large number of training data sets is required to achieve satisfactory results. Once the network has been trained, new input data can be applied and the network produces an output derived from the training data.
Unlike other forms of software, the functionality of a neural network is hardly defined by the programming code that describes the algorithm. Neural network algorithms are generic. The kind of problem a neural network solves is defined by the data it is trained with.
The quality of an AI solution therefore fully relies on the availability and the quality of training data. That said, the network is only capable of approximating data that was covered in the training data set. If it was given pictures of cats and dogs, it will be able to tell you ‘this is probably a cat’, but it will never detect an elephant. Furthermore, there is no guarantee that the network does resolve a given data set even if it is from within the space it was trained on.
In consumer applications, these data sets are mostly available, often in the databases of the big tech companies. And in most consumer applications of AI, some mislabeled outputs are ok. If 500 cat images are properly recognized, and only a handful are not, this is good enough. For industrial applications, this is different. Why?
In industrial applications, AI supported decisions may have a significant impact on the industrial production. On the other hand, gathering sufficient information is quite difficult, and maybe also expensive. If the results of the AI system are wrong, they may result in losses or even damages or worse. An occasional misinterpretation of an AI system is mostly not acceptable. Here are a few hints on what to observe in industrial AI projects.
Initiation – Before starting an AI Project
Before starting an AI project, some questions have to be clarified first. The first and foremost question, that is – surprisingly – often overlooked, is: What problem do you want to solve, and why. This problem has to be relevant enough to justify the effort, i.e. there must be some basic business case considerations. The next question is, what technology to use to solve it. AI may, or may not be the best solution. One important reason why it may not be, is the lack of data, which leads to the related question: do we have data about the problem to be solved?
And lastly, the solution has to be put in action. Very often this includes scaling up. It is therefore helpful if you consider early whether you not only have data from one single machine for the PoC, but whether it will be feasible to get the data from other machines as well as required by your business case.
Finding the right problem is a business decision, let’s therefore look into the other questions a bit deeper.
Information – Data for AI Applications
Industrial plants generate a lot of data. To control a robot, or a steel mill, or any other industrial process, sensors are used to control the equipment so it behaves as designed. Most of that data is discarded immediately. But it is generated, and could be recorded. So there should be enough data to train AI?
The challenge in using the data is whether it contains the required information. If you want to predict failures, you have to have data about failures. Since industrial equipment fails rarely, it is probably not sufficient to collect data from one machine only. For that, you need data from many installations where equipment failed. If you’re running your own factories, you may not have the required number of machines, if you’re a supplier, you may know where and why machines failed, but your customers may not give you the data. To get the data, you have to offer a value proposition to your customer why he should do that.
Furthermore, using AI to reproduce information you already have, is not efficient. Since process data is correlated by the physics of the process, training the AI system with raw data may reveal those laws of physics. But those are known, those were applied when engineering the plant. You would want to apply AI to detect the effects that cannot easily be explained by your engineering data. You therefore have to remove the known from the data, to train the network on what you don’t know.
In summary: To successfully use AI, you need data, that contains the right information for what you want to achieve. This data may be in different locations, in different formats. If it’s not readily available, be aware that collecting it will easily consume most of the budget of your AI project.
Impact – Results of AI
AI can achieve impressive results, but it can also lead to surprising failures. And unlike conventional software, it is hard to test. Even minor variations in the input data may lead to completely different results, and the nature of a neural network does not reveal a reason why the result changed. It also doesn’t reveal a reason for why it came to the right conclusion.
When applying AI in an industrial system, you have to be aware of its shortcomings and risks, and have to mitigate these with other technical means. Be aware that neither false positives nor false negatives can be ruled out, something, that your system and process design has to account for. A conventional supervisory system, or safety system, that makes sure the AI part remains within reasonable operational bounds is necessary.
In summary: apply AI where it has its strength, and don’t try stretching it where it has its weaknesses. Be aware of these, and cover them with alternate processes and technologies.
Implementation – Applying AI
Once initial training data is available, you’re ready to go. There’s a good chance that your PoC will work. To turn it into a system in production still has its challenges.
One key question is the overall architecture: as we mentioned, training the system requires a lot of data, and a lot of computing power. For both of these requirements, cloud solutions are well suited in many cases. However, to apply the trained network is much less complex and can be done locally, maybe even on dedicated AI chips. Speed, availability of data, security, privacy, and maybe other parameters have to drive your architecture decision.
If you want to learn from operation, your neural network has to be re-trained occasionally, models have to be updated, etc. This may require additional IT resources that were not required in the PoC.
One nasty property of AI systems is the fact, that it is not guaranteed that the training data from the PoC create a network that works in similar, but slightly different environment. So transferring a solution to another installation has its challenges, and is currently being addressed by research.
The system can be more robust against such variations, if input data from a variety of installations is considered for training. Coming back to an earlier statement: consider this early in your project, because you may risk spending the high data collection and cleaning effort again with your next customer, while you can re-use the small effort that is spent on training the AI.
We can’t stress enough that good, representative training data sets that contain the information you need for your solution are the key to a successful AI solution. Make sure you have that data, initially, and over the lifecycle of your solution. But most importantly, be aware which tasks you want your solution to execute. Apply AI where it is suited, and combine it with other components that can do that task more efficiently.