I am looking for approaches related to outlier detection in time series.

Example: A person visits hospital overtime on multiple bases and there are some measurements made (bmi, blood_pressure, stress_level) at each occasion. Usually, the stress value will be the same for most of the individuals but somehow for one person increases continuously over time. So, the idea is to find such a person who are dissimilar to all others over time.

Some of the literature which I have already searched look to deal with time series on continuous data and some of the approaches involve similarity-based where an average threshold similarity is created(DTW and DTW-Adaptive) and with the nearest neighbor approaches a most dissimilar series whose distance greater than the threshold is identified. These series are usually long and are sensor observations.

The series which I am looking at is a short time series of discrete observations and may vary in length. I am looking for approaches that are usually suitable for them.

Could the multivariate data outlier detection algorithms be suitable over time or could be adapted over time?

Additionally, are there any outlier models which take time into account? (As I could not find anything on this in the literature)

An example:

Patient Time bmi blood_pressure stress
1       t1  v1  v2              v3              
2       t1  v1  v2              v3
3       t1  v1  v2              v3
4       t1  v1  v2              v3
5       t1  v1  v2              v3
1       t2  v1  v2              v3  
2       t2  v1  v2              v3
4       t2  v1  v2              v3
3       t2  v1  v2              v3
5       t2  v1  v2              v3

Some of the multivariate approaches already looked at are:
1. https://pyod.readthedocs.io/en/latest/ - Only holds for static data.
2. Shokoohi-Yekta, M., Hu, B., Jin, H., Wang, J., & Keogh, E. (2017). Generalizing DTW to the multi-dimensional case requires an adaptive approach. Data mining and knowledge discovery, 31(1), 1-31. (Time-series based approach but uses sensors)

I recently also thought, if I could include time itself as a feature to model outlier? Has anyone did this way or have any literature in these lines


1 Answer 1


Outlier detection doesn't sound like the most promising approach to me, as you have a model for the data. Some ideas you could try: use a hypothesis test to check the hypothesis that the stress values fit iid Gaussian with pre-defined standard deviation and unknown mean; use linear regression to fit a line that predicts stress as a function of time, and see if the slope is greater than zero by a statistically significant amount; etc.

  • $\begingroup$ Thank you for your answer. I am utilizing in similar fashion now $\endgroup$
    – coldy
    Commented Mar 15, 2020 at 18:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.