Classification in time series analysis refers to the process of assigning categories to data. The goal of classification is to categorize or label the data into meaningful groups characterized by different properties. Classification algorithms train on labeled data and classify new data accordingly.
In general, the algorithms and the approach used to classify time series data does not differ significantly from other types of data. However, time series data can present a few challenges:
- Temporal information included with time series data adds a new dimension to consider in classification. Temporal information includes the order of the data, seasonality or cyclicity.
- The volume and the flow of time series data can vary widely depending on a time window
- Patterns often emerge after data is downsampled or aggregated rather than in considering individual data points
Common applications for classifications with time series data include:
- IoT: classifying sensor data into human-readable outcomes. For example, turning heart rate data into heart condition categories such as “normal” or “irregular”, or labeling sensors as “normal” or “faulty”.
- Financial: detecting fraudulent transactions Application metrics: detecting anomalies in user behavior or API metrics
- E-commerce: classifying user behavior based on previous actions, such as purchase history, interaction data and ad clicks
There are several classification algorithms with varying degrees of complexity:
- Distance-based methods: distance-based methods such as nearest-neighbor classification with dynamic time warping calculates a “distance” by measuring the similarity between a new data point with target samples. Prediction is then given based on the closest sample
- Shapelet-based methods: Shapelets are small, consecutive chunks of data. The Shapelet Transform method works in a step-by-step manner. First, it picks a shapelet from the data, either randomly or by trying out all possibilities. Then, it measures how well this shapelet fits the data using a specific measurement, such as one derived from a distance algorithm. The shapelets that fit the best are kept. This process is repeated until the entire dataset has been analyzed. The end result is a transformed dataset, where the data is represented by the shapelets that best match it
- Tree-based methods: tree-based algorithms like random forests or bag-of-features generate random intervals from a sub-sequence of time series data and gather various statistical information such as the mean, standard deviation and slope
- Deep-learning methods: These are a subset of machine learning techniques that use multi-layered neural networks to analyze data. The "deep" in deep learning refers to the number of layers through which the data is transformed. Deep learning models are able to learn to represent data by training on a large amount of data and can automatically extract features for a given task. They are particularly good at identifying patterns and structures in unlabeled and unstructured data like images, audio, and text
Different algorithms may be used based on how complex the data set is, how fast the algorithm must return the classification results, or how accurate the use case requires. In general, deep-learning methods are more accurate but are more expensive in terms of computation time.