Towards the Future!
As you can tell from our code, this is still just a proof-of-concept! There is still much to do to make the algorithm applicable in real-world situations. In this section, we describe some possible ideas and advancements to consider for future work on this project.
What about Methodologies?
Our project work is contained in a number of Jupyter notebooks embedded in the page below. You can also run the code yourself by cloning our GitHub repository at https://github.com/sjmluo/Contextually_Situated_Anomaly_Detection. See in particular the final output images and CAC animations in the offline and online notebook sections respectively.
A Few Theoretical Ideas
Our methods build on a special data structure called the matrix profile which computes the pairwise distances between subsequences of a given window length and records a list of ‘nearest neighbour indices’ (subsequences that match each other the closest in the time series); these indices play an important role in *semantic segmentation*.
What kind of Problem Needs to be Solved?
A building undergoing increasing structural damage. A bridge in different climates experiences qualitatively different vibrations. An aircraft begins on the runway, accelerates, cruises in the sky while experiencing turbulence, then begins descending. These are all examples of structures that undergo avariety of stresses in distinct contextual ‘states’. It would be advantageous for operators to be able to detect these contextual shifts in both controlled and non-controlled settings.