Machine Learning

Machine Learning is a useful tool for pattern matching and curve fitting to make predictions based on data and its underlying patterns. Given the recent breakthroughs and ease of use, it is worthwhile to extend the research of schedulability analysis to the lens of machine learning. These algorithms will be able to interpret the data in much more efficient and feasible ways than other algorithms. Since we are using real-time systems, we must also analyze the efficiency and cost of the algorithms and understand the tradeoffs among different techniques. Certain algorithms may be more suitable for the offline training phase while others on the online training phase. All of these are factors which will be considered with this analysis.

The models will be evaluated primarily as a cost benefit analysis with regards to its execution cost (resources required, time to train and classify) and its classification ability. At the very least, machine learning should help to model the data with accuracy where predictions bring more success than standard techniques.

We are pursuing both routes with Deep Learning and Shallow Learning to compare the approaches. Although deep learning models are more flexible and advanced than their shallow learning counterparts, it is important to analyze both to see the tradeoffs of both approaches. Since resources and time of execution are more important to consider in the online than the offline learning phases, it is important to see whether we can emulate the accuracy of a heavyweight neural network with a lighter weight shallow-learning algorithm. Furthermore, different algorithms acheive higher accuracy depending on the modelling of the data. A naive bayes classification with high accuracy will indicate data that is mostly independent and uncorrelated with each other.

We hope that testing a wide variety of these approaches will reveal important information for any kind of future schedulability analysis. Understanding the data is the most important aspect and will provide useful information for any kind of feature engineering that may be done in the future. For more information on the specific algorithms, please see the Deep Learning and Shallow Learning pages.