Title: | Detect Change Points in Means of High Dimensional Data |
---|---|
Description: | Objective: Implement new methods for detecting change points in high-dimensional time series data. These new methods can be applied to non-Gaussian data, account for spatial and temporal dependence, and detect a wide variety of change-point configurations, including changes near the boundary and changes in close proximity. Additionally, this package helps address the “small n, large p” problem, which occurs in many research contexts. This problem arises when a dataset contains changes that are visually evident but do not rise to the level of statistical significance due to the small number of observations and large number of parameters. The problem is overcome by treating the dimensions as a whole and scaling the test statistics only by its standard deviation, rather than scaling each dimension individually. Due to the computational complexity of the functions, the package runs best on datasets with a relatively large number of attributes but no more than a few hundred observations. |
Authors: | Jeffrey Okamoto [aut], Natasha Stewart [aut], Dr. Jun Li [aut] |
Maintainer: | Natasha Stewart <[email protected]> |
License: | GPL-3 |
Version: | 0.1.0 |
Built: | 2025-02-28 04:00:40 UTC |
Source: | https://github.com/cran/HDcpDetect |
Detects change points in time series data using a binary segmentation algorithm.
binary.segmentation(data_M,alpha=.05,power_enhancement=TRUE,M_threshold=0.05)
binary.segmentation(data_M,alpha=.05,power_enhancement=TRUE,M_threshold=0.05)
data_M |
An nxp matrix representing a times series of length n with p dimensions. |
alpha |
The critical value for the hypothesis testing procedure. |
power_enhancement |
Indicates whether to add a power enhancement term to the test statistic. |
M_threshold |
Value used as a threshold to estimate temporal dependence by determining how small of a standardized difference is indistinguishable from zero. |
The power enhancement term reduces type II error but slows the algorithm.
The returned value is a list with the following components
Foundlist |
The estimated locations of the change points |
pvalues |
The p values corresponding to each change point estimate |
Jun Li, Jeffrey Okamoto, and Natasha Stewart
Li, J., Li, L., Xu, M., Zhong, P (2018). Change Point Detection in the Mean of High-Dimensional Time Series Data under Dependence. Manuscript.
library(HDcpDetect) HAPT2 <- as.matrix(HAPT[1:35,]) binary.segmentation(data_M=HAPT2,power_enhancement=FALSE)
library(HDcpDetect) HAPT2 <- as.matrix(HAPT[1:35,]) binary.segmentation(data_M=HAPT2,power_enhancement=FALSE)
The dataset is composed of features extracted from 7 videos with people gesticulating, aiming at studying gesture phase segmentation. It contains velocity and acceleration recording of the experimental subjects' hands and wrists.
gestureVelocity
gestureVelocity
A data frame with 1743 observations on the following 33 variables.
Vectorial velocity of left hand (x coordinate)
Vectorial velocity of left hand (y coordinate)
Vectorial velocity of left hand (z coordinate)
Vectorial velocity of right hand (x coordinate)
Vectorial velocity of right hand (y coordinate)
Vectorial velocity of right hand (z coordinate)
Vectorial velocity of left wrist (x coordinate)
Vectorial velocity of left wrist (y coordinate)
Vectorial velocity of left wrist (z coordinate)
Vectorial velocity of right wrist (x coordinate)
Vectorial velocity of right wrist (y coordinate)
Vectorial velocity of right wrist (z coordinate)
Vectorial acceleration of left hand (x coordinate)
Vectorial acceleration of left hand (y coordinate)
Vectorial acceleration of left hand (z coordinate)
Vectorial acceleration of right hand (x coordinate)
Vectorial acceleration of right hand (y coordinate)
Vectorial acceleration of right hand (z coordinate)
Vectorial acceleration of left wrist (x coordinate)
Vectorial acceleration of left wrist (y coordinate)
Vectorial acceleration of left wrist (z coordinate)
Vectorial acceleration of right wrist (x coordinate)
Vectorial acceleration of right wrist (y coordinate)
Vectorial acceleration of z coordinate (z coordinate)
Scalar velocity of left hand
Scalar velocity of right hand
Scalar velocity of left hand
Scalar velocity of right wrist
Scalar velocity of left hand
Scalar velocity of right hand
Scalar velocity of left wrist
Scalar velocity of right wrist
Phase
Phase of gesture: D(rest position),P(preparation),S(stroke),H(hold),R(retraction)
https://archive.ics.uci.edu/ml/datasets/gesture+phase+segmentation#
1. Madeo, R. C. B. ; Lima, C. A. M. ; PERES, S. M. . Gesture Unit Segmentation using Support Vector Machines: Segmenting Gestures from Rest Positions. In: Symposium on Applied Computing (SAC), 2013, Coimbra. Proceedings of the 28th Annual ACM Symposium on Applied Computing (SAC), 2013. p. 46-52.
2. Wagner, P. K. ; PERES, S. M. ; Madeo, R. C. B. ; Lima, C. A. M. ; Freitas, F. A. . Gesture Unit Segmentation Using Spatial-Temporal Information and Machine Learning. In: 27th Florida Artificial Intelligence Research Society Conference (FLAIRS), 2014, Pensacola Beach. Proceedings of the 27th Florida Artificial Intelligence Research Society Conference (FLAIRS). Palo Alto : The AAAI Press, 2014. p. 101-106.
This sample data is drawn from the Human Activity Recognition (HAPT) Dataset on the UCI Machine Learning Repository. The original dataset includes sensor recordings from 30 subjects performing a range of daily activities. The data has 561 attributes, consisting of different accelerometer and gyroscope measurements. A small portion of the overall dataset (10 seconds of recordings for subject A) is included in this package.
HAPT
HAPT
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
a numeric vector
https://archive.ics.uci.edu/ml/datasets/Human+Activity+Recognition+Using+Smartphones
1. Davide Anguita, Alessandro Ghio, Luca Oneto, Xavier Parra and Jorge L. Reyes-Ortiz. A Public Domain Dataset for Human Activity Recognition Using Smartphones. 21th European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning, ESANN 2013. Bruges Belgium 24-26 April 2013.
Detects change points in time series data using the wild binary segmentation algorithm from Fryzlewicz (2014).
wild.binary.segmentation(data_M,minsize=15,num_intervals=1250,M_threshold=0.05)
wild.binary.segmentation(data_M,minsize=15,num_intervals=1250,M_threshold=0.05)
data_M |
An nxp matrix representing a times series of length n with p dimensions. |
minsize |
The minimum interval length. |
num_intervals |
The number of random intervals to be generated and tested for change points. |
M_threshold |
Value used as a threshold to estimate temporal dependence by determining how small of a standardized difference is indistinguishable from zero. |
Increasing the minimum interval length will generally reduce type I error while increasing type II error.
The returned value is a list of the estimated change point locations.
Jun Li, Jeffrey Okamoto, and Natasha Stewart
Li, J., Li, L., Xu, M., Zhong, P (2018). Change Point Detection in the Mean of High-Dimensional Time Series Data under Dependence. Manuscript. Fryzlewicz, P. (2014). Wild Binary Segmentation for Multiple Change-point Detection. The Annals of Statistics.
library(HDcpDetect) HAPT2 <- as.matrix(HAPT[1:35,]) wild.binary.segmentation(HAPT2)
library(HDcpDetect) HAPT2 <- as.matrix(HAPT[1:35,]) wild.binary.segmentation(HAPT2)