Predictive Maintenance (Alarm Prediction) Methodologies in Telecom Domain — 2
In my previous writing, I mentioned one of the approaches which can be implemented in a predictive maintenance scenario in the telecom domain. I will go around with another approach. I recommend reading the first writing if you have not read it yet.
In the second scenario, we only use alarm data and support prediction results with correlated alarm information. Correlated alarms simply mean that we make this prediction because we have seen these alarm combinations before. Market Basket Analysis (MBA) which is an application of Association Rule Mining can be used for this purpose. MBA simply works on transaction data which comprises items, and finds out hidden patterns of items that show up in the same transactions. It includes two main steps, which expose frequent item combinations, and then construct association rules respectively. For finding out frequent item sets, Apriori or FP-Growth algorithm can be used. FG-Growth algorithm uses a special tree-based structure and usually performs faster. I will not mention about working principle in a detailed way, and focus on how we can utilize this approach in alarm prediction use case.
MBA is not designed for predictive modeling, for this reason, we need customization in order to convert it to make a prediction. In an alarm prediction use case, transactions can be thought of as prediction time slots and items can be thought of as alarms. And then,
1- Narrow the alarm scope (alarm size in the study)as much as possible by ignoring irrelevant alarms, because finding out alarm combinations and then creating association rules among millions of alarms has a high cost.
2- Set a window size, lets say your prediction range is 24 hours and you set the window size as 3 days.
3- Turn the alarm data into one hot encoding format as seen in Figure 2.
4- Find out alarm combinations and form association rules according to the selected window size for each target alarm. Take into consideration all previous time slots of window size before the target alarm occurred in history.
5- For prediction, search for previously deduced alarm combinations in newly received data of window size.
6- If you detect an alarm combination, assign a prediction probability with the help of support, confidence, and lift values of rules. The more lift value you get, the more probability for an alarm to occur.
The figure above is a very simplified version of the real case again. In the above figure, let's assume we are trying to predict alarm A1 with a window size of 3 days and a prediction range is 1 day. We can think of 3 days' time slots as a single composite transaction and we can increase these composite transactions by sliding window methodology. We detect combinations of alarms in these 3 days' time slots and extract association rules. As it can be seen A8, A14, and A17 together can be assessed as an important combination(indicator) for predicting alarm A1. Finally, in the prediction phase, we look for alarm combinations (A8, A14, and A17 together) in the last 3 days.
Finally, I also want to mention the probable data sources that may be utilized in order to give an idea. These can be alarm datasets, several performance metrics of devices, topology data which specifies the internal network level connection between the devices, test results of the performance of device name, failure frequencies of hardware which comprise the devices in history, log data of devices if available, data of maintenance schedule, weather data if necessary. The only advice I can make is firstly just try to understand the probable reasons of the alarm/fault you aim to predict. It may be very tough if you are not familiar with the domain and then decide on the datasets you will use in your study.