This is an old revision of the document!
Tuning Your AI Anomaly Detector
There are several reasons your anomaly detector might be giving false positives (showing an anomaly in normal situations).
New Situations / Not Enough Training Data
This is the most common cause of issues when you're starting to deploy anomaly detectors. AI requires training, which means it needs examples of what normal operation looks like.
If you haven't give the AI any training examples of a situation - such as when your machine is switched off - then it will raise the alarm during maintenance and down times.
Adding more training data is usually a good way of resolving these issues.
Tight Tolerances
When comparing the actual values to your model values, the system uses a set of tolerances which indicate how far from the model value you're willing to let a value drift before raising an alert.
This allows you to tune your model to be highly sensitive to specific types of issue and more relaxed with others.
For example, on a conveyor belt you might want very tight tolerance on speed (to capture the belt slipping or losing grip), moderate tolerance on temperature (to capture motors over-heating) and quite loose tolerances on tension (which varies depending on load).
You might want to consider adjusting tolerances to ignore low-priority or randomly-moving values.
Additional Context Data
Adding more context data - data about the environment or other systems around your asset - can be extremely useful, as this helps give some explanation about why your assets are in the state they are in.
For example, let's look at the temperature of an electric motor that is installed outside.
If we only have the temperature of the motor, there's very little we can do to spot an anomaly, other than set an arbitrary 'max' value. By the time the motor is that hot, it's quite likely to already be damaged or causing quality issues.
But if we have more context information, we can start to effectively predict information.
If we have Speed, Motor Temperature and Ambient Temperature, we can tell a lot more about that motor.
| Speed | Ambient Temp | Motor Temp | Condition |
|---|---|---|---|
| Stopped | Low | Low | Good |
| Running | Low | Moderate | Good |
| Running | High | High | Good |
| Running | Low | High | Anomalous |
| Stopped | High | High | Anomalous |
Adding additional context information - about what the wider system is doing, about loads, quantities, product types and even the hour of the day - can provide much more for the AI to work with.
Erase and re-create your AI model if you've added new information.
Randomness
The AI can only predict values if there are genuine relationships somewhere in the input data. In cases where values are random or arbitrary, models can't predict values.
In some cases, randomness is caused by factors that you simply aren't measuring - for example, differences in the speed and tension of a conveyor-belt might be impacted by the weight on the belt. If you aren't measuring that weight - or anything related to it - the values appear random and couldn't be modelled by the detector.