본문 바로가기

Data Science/Time series data

시계열 데이터 (Time series data) 의 동시성(Synchrony) 측정

728x90
time series data 사이 동시성을 측정하기 위한 4가지 방법
1.      Pearson correlation
2.      Time Lagged Cross Correlation (TLCC) & Windowed TLCC
3.      Dynamic Time Warping (DTW)
4.      Instantaneous phase synchrony

 

1. Pearson correlation (선형 상관관계 측정, 가장 간단한 방법)

  • Pearson correlation에서는 두 연속 신호가 시간에 따라 어떻게 서로 달라지는지 측정하고 둘 사이의 선형 관계를 -1(음극적으로 상관됨)에서 0(상관되지 않음)에서 1(완벽하게 상관됨) 사이의 숫자로 나타낸다.
  • 이 방법은 직관적이고, 이해하기 쉽고, 해석하기 쉽다.
  • Pearson correlations를 사용할 때 주의해야 할 두 가지 사항은 1) 특이치(outlier)가 상관 추정의 결과를 왜곡할 수 있다는 것과 2) 데이터의 분산(variance)이 데이터 범위에 걸쳐 동질적(homoscedastic)이라고 가정한다는 것이다.
  • 즉, 어떤 신호가 선두하고 어떤 신호가 뒤따르는지와 같은 두 신호 사이의 방향성에 대한 정보는 제공하지 않는다.
  • Pearson 상관 관계는 Numpy, Scipy, Panda를 포함한 여러 패키지로 구현되어 있으며, null이거나 결측값(missing value)이 있는 경우 Panda의 상관 함수는 계산 전에 해당 행을 삭제하는 반면 Numpy 또는 Scipy의 구현을 사용하는 경우 해당 데이터를 수동으로 제거해야 한다.
  • Pearson correlations는 두 신호 전체 데이터 간의 관계성(연관성)을 단일 값으로 축소하는 방법이다. 그럼에도 불구하고 피어슨 상관 관계를 사용하여 두 데이터 간의 순간적인 부분적 연관성을 살펴볼 수 있는 방법이 있다. 이를 계산하는 한 가지 방법은 신호의 작은 부분에서 Pearson 상관 관계를 측정하고 전체 신호가 가려질 때까지 롤링 윈도우를 따라 프로세스를 반복하는 것이다. 이 절차를 반복할 창 크기를 임의로 정의해야 하므로 다소 주관적일 수 있다.
  • 전반적으로 Pearson 상관 관계는 글로벌 및 로컬 동기화를 모두 계산하는 매우 간단한 방법을 제공하기 때문에 두 time series data 사이의 연관성 분석을 시작하기 좋은 방법이다. 그러나, 앞서 말한 것과 같이 해당 방법은 교차 상관 관계를 통해 측정될 수 있는 어떤 신호가 가장 먼저 발생하는지와 같은 신호 역학에 대한 통찰력을 제공하지 않는다는 것을 주의해야 한다.

 

2. Time Lagged Cross Correlation — assessing signal dynamics (역동적인 신호를 처리)

  • Time lagged cross correlation (TLCC)은 두 신호 사이의 방향성(예) 앞선 신호(leader)가 반응을 시작하면, 뒷 신호(follower)에 의해서 반복되는 양상인 leader-follower relationship) 을 식별할 수 있다.

  • 위와 같이 TLCC는 하나의 시계열 벡터(빨간색)를 계속해서 이동시키며 두 신호 사이의 상관 관계를 반복적으로 계산함으로써 측정된다. peak correlation이 중심에 있으면(α=0), 이는 두 시계열이 그 시간에 가장 많이 동기화되었음(연관성이 있음)을 나타낸다. 그러나 한 신호가 다른 신호를 유도하면 피크 상관 관계가 다른 오프셋에 있을 수 있다. pandas 기능을 사용해 TLCC 상호 상관 함수를 구현할 수 있다. 또한 데이터를 wrapping하여 edge의 상관 값이 신호의 반대쪽에서 데이터를 추가하여 계속 계산되도록 할 수도 있다.
  • Time lagged cross correlations 와 windowed time lagged cross correlation는 리더-팔로워 관계 및 시간이 지남에 따라 변화하는 방법과 같은 두 신호 사이의 미세한 동적 상호 작용을 시각화하는 좋은 방법이다. 이 방법은 신호가 동시에 발생한다는 것과 데이터가 유사한 길이라는 가정이 뒷받침되어야 한다.

 

3. Dynamic Time Warping — synchrony of signals varying in lengths

  • Dynamic time warping (DTW)은 두 신호 사이의 거리를 최소화하는 두 신호 사이의 경로를 계산하는 방법이다. 이 방법의 가장 큰 장점은 길이가 다른 신호도 처리할 수 있다는 것이며, 원래 음성 데이터 분석을 위해 고안되었다. DTW는 두 신호와 일치하는 최소 경로를 계산하기 위해 다른 모든 프레임에 걸쳐 각 프레임에서 유클리드 거리를 계산한다. 한 가지 단점은 결측값(missing value)을 처리할 수 없기 때문에 이 경우 사전에 해당 값을 보간(interpolate)해야 한다는 것이다.

 

4.      Instantaneous phase synchrony

  • 마지막으로 진동 특성(예: EEG, fMRI)이 있을 것이라 예상되는 시계열 데이터가 있는 경우 instantaneous phase synchrony 를 측정할 수도 있다. 이 측정법은 또한 두 신호 사이의 순간적인 연관성(moment-to-moment)을 측정한다. 관심 파장에 맞춰 데이터를 필터링해야 하기 때문에 다소 주관적일 수 있대. phase synchrony 를 계산하려면 신호를 phase 및 power로 분할하는 힐버트 변환(Hilbert transform )을 사용하여 신호의 위상을 추출해야 한다. 이를 통해 두 신호가 위상(위/아래로 함께 이동) 또는 위상 이탈 상태인지 평가할 수 있다.

 

참고자료

https://datascience.stackexchange.com/questions/15812/check-similarity-between-time-series

https://towardsdatascience.com/four-ways-to-quantify-synchrony-between-time-series-data-b99136c4a9c9

 

 

반응형