11 분 소요

이번 포스팅에서는 시계열 데이터의 인과그래프를 탐색하는 논문을 리서치하던 중 인용수가 많았던 Causal Discovery with Attention_Based Convolutional Neural Network를 리뷰해보고자 합니다. 최근 업무에서 IT서비스의 성능 표인 시계열 데이터의 인과관계를 추론하여 장애가 발생하였을 때 원인이 무엇인지 탐색하는 Root Cause Analysis(RCA)에 대한 연구를 진행하고 있습니다. 이 논문의 목적이 RCA는 아니지만 시계열의 인과관계를 추론하는 데에 연구목적과 맞기 때문에 포스팅을 하게 되었습니다.

Abstract

먼저 초록을 정리해보면 다음과 같습니다.

  • 시계열 데이터에서 인과 관계를 발견하여 인과 그래프를 학습하는 딥러닝 framework인 TCDF를 제안한다.
  • CNN의 내부 파라미터를 해석하여 원인과 결과 발생 사이의 시간 지연도 발견할 수 있다.
  • 금융 및 신경과학 벤치마크에 대한 실험은 시계열 데이터에서 인과 관계를 발견하는 데 있어 TCDF의 높은 성능을 보여준다.
  • 광범위하게 적용 가능하기 때문에 지식 발견 및 복잡한 시스템의 인과 관계에 대한 새로운 인사이트를 얻는 데 사용할 수 있다.

Introduction은 초록과 비슷하기 때문에 생략하도록 하겠습니다.

Problem Statement

본 논문에서의 Temporal causal discovery는 길이가 $T$이고, 변수의 개수가 $N$인 시계열 데이터 $X={ X_1,X_2,…,X_N } \in \mathbb{R}^{N \times T}$가 주어졌을 때, $X$의 모든 $N$개의 시계열과 원인과 결과 사이의 시간 지연 사이의 인과관계를 발견하고 시간적 인과관계 그래프로 모형화하는 것으로 정의합니다.
인과그래프 $g=(V,E)$ 에서 노드 $v_i \in V$는 $i$번째 시계열 데이터 $X_i$를 의미하고, 엣지 $e_{i,j}$는 노드 $v_i$와 노드 $v_j$의 관계를 나타냅니다. 즉, $X_i$가 $X_j$의 원인임을 나타냅니다.
또한, $p=<v_i,…,v_j>$는 $g$의 $v_i$부터 $v_j$까지의 path를 나타내며, temporal causal graph에서 모든 엣지는 가중치 $d(e_{i,j})$가 있으며, 이는 이는 원인 $X_i$의 발생과 결과 $X_j$의 발생 사이의 시간 지연을 나타냅니다. 예시를 확인해보면 다음과 같습니다.

fig1

인과 관계가 복잡할 경우 Causal Discovery는 다음과 같은 어려움이 있습니다.

  • 모델은 직접 원인과 간접 원인을 구별해야 합니다. fig2-a와 같이 $v_i$가 $v_j$의 간접 원인이고, $p=<v_i, v_k, v_j> \in g$일 때 Pairwise방법은 즉, 두 변수 사이의 인과관계만을 찾는 방법은 종종 이러한 구분을 할 수 없습니다. 하지만, 다변량 방법은 직접적인 인과 관계와 간접적인 인과 관계를 구별하기 위해 모든 변수를 고려합니다.
  • 모델은 원인과 결과 사이의 지연이 0인 즉각적 인과 효과를 학습해야 합니다. 순간적인 영향을 무시하면 오해의 소지가 있는 해석을 초래할 수 있습니다. 이는 대부분 원인과 결과의 시간적 척도가 너무 coarse하여 인과적 정렬을 할 수 없을 때 발생합니다.
  • Confounder의 존재는 인과관계에서 잘 알려진 challenge입니다.(fig2-b) confounder는 상관관계는 있지만 인과관계는 없기 때문에 confounder의 효과로 인해 긴과관계를 잘못 포함하지 않도록 주의해야 합니다. confounder에 대한 자세한 설명은 제가 포스팅한 인과그래프에서 확인해보실 수 있습니다.
  • confounder가 관찰되지 않을 때(숨겨진(또는 잠재된) confounder) 특별한 도전이 발생합니다. 비록 얼마나 많은 숨겨진 confounder가 존재하는지조차 알 수 없을 수 있지만, 인과 추론 방법이 숨겨진 confounder의 존재를 가설로 설정하여 그 효과 사이의 잘못된 인과 관계를 학습하는 것을 방지하는 것이 중요합니다.

fig2

TCDF - Temporal Causal Discovery Framework

fig3

이제 자세하게 본 논문에서 제안하는 framework에 대해 알아보겠습니다.
TCDF는 크게 네가지 단계(Time Series Prediction, Attention Interpretation, Causal Validation, Delay Discovery)로 구성됩니다.
TCDF는 $N$개의 독립적인 attention-based CNN으로 구성되어 있는데 모두 같은 구조로 되어있지만 fig4에서 확인할 수 있듯이 target 변수가 다릅니다. 이는 $j$번째 네트워크 $\mathcal{N_j}$는 target인 $X_j$를 예측하는 것을 의미합니다.
$\mathcal{N_j}$에서 $X_j$를 예측하기 위해 학습될 때, attention score $a_j$는 $X_j$를 예측할 때 어떤 변수를 참조하는지 나타냅니다. $\mathcal{N_j}$에서 예측을 위해 attention된 시계열을 사용하기 때문에 이 시계열은 예측에 유용한 정보를 포함해야 하며, 이는 이 시계열이 잠재적으로 target 시계열과 인과적으로 연관되어 있음을 의미합니다. 이 네트워크의 입력데이터로 target 시계열도 포함되기 때문에 모델은 self-causation도 포착할 수 있다고 합니다.
본 논문에서는 이러한 attention 기반 CNN을 위한 특정 아키텍쳐를 설계하여 잠재적 원인을 발견할 수 있도록 했고, 이를 AD-DSTCN이라고 정의했습니다.
이제 네가지 단계에 대해 좀 더 구체적으로 알아보겠습니다.

1. Time Series Prediction

논문에서는 TCN 아키텍쳐를 사용하여 예측모델링을 진행합니다. TCN은 1D kernel인 CNN으로 구성되어 있습니다. TCN은 입력 시계열의 과거 및 현재 값, 즉 시간 단계 1부터 시간 단계 t까지의 값을 기반으로 목표 시계열의 시간 단계 t를 예측합니다. 입력 시계열의 현재 값을 포함하면 순간 효과를 탐지할 수 있습니다. TCN은 미래에서 과거로 ‘누출’되는 정보가 없는 소위 causal convolution을 수행합니다.
TCN은 입력 값이 $[X_1^1, X_1^2, …,X_1^t,…,X_1^T]$인 시계열 $X_1$위에 kernel을 슬라이드하면서 target인 $X_2$의 각 시간을 예측합니다. 예를 들어 $X_2$의 t시점, 즉, $X_2^t$를 예측하기 위해서는 사용자가 지정한 크기가 K인 1D-kernel은 학습된 kernel 가중치 $W$와 현재 시점부터 K-1개의 이전값 사이의 dot product를 계산합니다. 즉, $W \odot [X_1^{t-K+1}, X_1^{t-K+2}, …,X_1^{t-1},X_1^{t}]$입니다. 하지만 이러면 초기의 값들을 예측할 때는 데이터가 부족해지기 때문에 없는 데이터를 zero padding을 통해 채워줍니다.
원래 TCN에서서는 활성함수로 ReLU를 사용하지만, 본 논문에서는 PReLU를 사용합니다. 그 이유로 기존 ReLU에 비해 계산 비용이 거의 들지 않고, 과적합 위험이 거의 없어 model fitting을 개선하기 때문이라고 설명합니다.

1.1 Dilations

하나의 layer만 있는 TCN의 경우, receptive field는 사용자가 지정한 커널 크기 K와 같습니다. 인과 관계를 성공적으로 발견하려면 receptive field가 적어도 원인과 결과 사이의 delay만큼 커야합니다. receptive field를 늘리려면 커널 크기를 늘리거나 hidden layer의 수를 추가해야하는 데, 1D 커널을 사용하는 CNN은 레이어 수에 따라 선형적으로 증가하는 receptive field를 가지므로 큰 receptive field가 필요할 때 계산 비용이 많이 듭니다.
receptive field를 크게 하면서 연산량을 적게 하기 위해 dilated convolutions를 도입합니다. dilated convolutions는 특정 스텝 크기 $f$로 입력 값을 건너뛰는 방식으로 커널크기보다 큰 영역에 적용할 수 있습니다. dilation factor인 $f$는 dilation coefficient $c$에 따라 기하급수적으로 증가하게 됩니다. 즉, $f=c^l$입니다. ($l$은 layer 개수) 아래는 예시입니다.

fig4

$f$가 기하급수적으로 증가하면 dilated convolution이 적용된 네트워크는 해상도나 coverage의 손실 없이 더 coarse한 규모로 작동할 수 있습니다. receptive field R은 다음과 같습니다.

$\begin{align} R_{D-TCN}=1+\sum_{l=0}^L (K-1) \cdot c^l \end{align}$

이는 dilated convolution이 파라미터 수가 선형적으로 증가하는 동안 receptive field 기하급수적으로 증가하고, 이는 원인과 결과 사이에 큰 지연이 있을 때 특히 유용하다는 것을 뜻합니다.

1.2 Adaption for Discovering Self-Causation

논문에서는 self-causation을 포착하기 위해 target 시계열이 input에 포함하도록 허용합니다. 이를 위해 target 시계열의 현재 값을 포함하지 않아야 하기 때문에 TCN 아키텍처를 약간 수정했습니다.
target 시계열을 제외한 exogenous 시계열들의 input은 커널크기가 $K$일 때, $[X_i^{t-K+1}, X_i^{t-K+2}, …,X_i^{t-1},X_i^{t}], i \ne j$이지만 target 시계열은 input에 들어갈 때 $[X_j^{t-K}, X_j^{t-K+1},…,X_j^{t-2}, X_j^{t-1}]$이 $X_j^t$를 예측하기 위한 입력으로 들어가게 됩니다.

1.3 Adaption for Multivariate Causal Discovery

TCN은 단변량 시계열을 대상으로 모델링되어있기 때문에 그대로 사용할 수 없습니다. 이를 위해 모델의 수정이 필요합니다. CNN에서의 다변량 시계열 모델링은 일반적으로 여러 시계열을 2D input으로 병합합니다.
하지만 이러한 접근은 각 conv 계층의 출력이 항상 1차원이므로 입력 시계열이 혼합되기 때문에 인과 관계의 발견에 제약을 줍니다.
본 논문에서는 다변량 causal discovery를 위해 단변량 TCN 아키텍쳐를 입력 시계열이 분리된 상태로 유지되는 1D depthwise separable 아키텍처로 확장합니다. 이 방법은 이미지 분류를 위한 구글의 Xception에서 사용되었다고 합니다.
이는 depthwise convolutions와 $1 \times 1$ pointwise convolution으로 구정됩니다. depthwise separable 아키텍처는 정확도와 수렴 속도를 향상시키고, 분리된 채널을 통해 입력 시계열과 target 시계열 사이의 관계를 입력값이 섞이지 않고도 정확하게 해석할 수 있다고 논문에서 주장합니다.
TCDF 아키텍처는 각각 하나의 시계열을 input으로 하는 $N$개의 채널로 구성됩니다. 네트워크 $\mathcal{N_j}$에서 채널 $j$는 target 시계열 $X_j=[0, X_j^1, X_j^2,…,X_j^{T-1}]$와 다른 모든 exogenous한 시계열 $X_{i \ne j}=[X_i^1, X_i^2,…, X_i^{T-1}, X_i^T]$로 구성됩니다. 다음은 아키텍쳐의 overview입니다. 여기에는 attention mechamism도 포함되어 있는데 이는 아래에서 설명하도록 하겠습니다.

fig5

1.4 Attention Mechanism

시계열을 예측할 때 네트워크가 어디에 중점을 두는지 포착하기 위해, attention mechanism으로 네트워크 아키텍처를 확장합니다. 이를 논문에서는 ‘Attention-based Dilated Depthwise Separable Temporal Convolutional Networks’(AD-DSTCNs)라고 부릅니다. (참 기네요)
attention 벡터는 학습 가능한 $1 \times N$ 차원의 벡터 $a$로 구현하고, 이 벡터에 N개의 입력 시계열을 요소별로 곱합니다. attention vector는 $a_j=[a_{1,j}, a_{2,j},…,a_{j,j},…,a_{N,j}]$이고, 각 원소는 attention score를 의미합니다. attention score $a_{i,j}$는 target $X_j$를 예측하기 위해 $N_j$에서 input 시계열 $X_i$가 얼마나 기여했는지를 나타냅니다. 따라서 높은 attention score $a_{i,j} \in a_j$는 $X_i$가 $X_j$의 원인일 수 있다는 것을 의미합니다.
이 attention score는 네트워크 학습 후 어떤 시계열이 target 시계열의 잠재적 원인인지 결정하기 위해 사용됩니다.

1.5 Residual Connections

네트워크의 hidden layer 수가 증가하면 일반적으로 training error가 증가한다고 합니다. 이러한 정확도 저하 문제는 과적합으로 인한 것이 아니라 backpropagation이 최적의 가중치를 찾지 못하기 때문에 발생합니다. 이 문제를 해결하기 위해 residual connection을 사용합니다. convolution layer를 통과한 입력 $x$ 를 $F(x)$ 라고 한다면, residual connection과 활성함수 PReLU를 통과한 output $o$는 다음과 같습니다.

$\begin{align} o=PReLU(x+F(x)) \end{align}$

2. Attention Interpretation

학습이 시작될 때, 모든 attention score는 1로 초기화됩니다. 학습이 진행되면서 각 epoch마다 점수가 증가하거나 감소할 수 있습니다.
일반적으로 사용하는 soft attention은 softmax함수를 사용합니다. 하지만 결과로 나오는 확률분포는 softmax함수의 특성 상 0이 나올 수 없습니다. 사실 이는 분류문제에서는 장점이 될 수 있지만 본 논문의 task에서는 시계열이 인과관계가 있다 또는 없다와 같은 이분법적 결정을 내려야 합니다. 이러한 특성에서는 softmax함수는 제한이 있을 수 있습니다. 때문에 논문에서는 학습할 때는 softmax함수 $\sigma$를 각 $a$에 적용하고, 네트워크 $N_j$의 학습이 끝난 후에는 임계값 $\tau_j$ 의 점수를 0으로 잘라내는 간단한 방법을 적용했습니다. 논문에서는 이 $h$를 HardSoftmx score라고 부릅니다.

fig4

본 논문에서는 potential cause의 집합인 $P_j$를 정의합니다. 만약 $h_{i,j}>0$이라면 시계열 $X_i$가 target 시계열 $X_j$의 잠재적 원인이라고 볼 수 있습니다.
하지만 위의 attention방법을 적용하려면 $\tau_j$라는 임계치를 설정해줘야 합니다. 이를 위해 논문에서는 $a_j$에서 score 사이의 가장 큰 격차를 찾아 $\tau_j$를 결정하는 알고리즘을 제안합니다. 이 방법은 먼저 attention score를 높은 점수부터 정렬을 한 뒤 인접한 두 score 사이의 가장 큰 격차 $g$를 검색합니다. 그러면 $\tau_j$는 gap의 왼쪽 score가 됩니다. 이 접근법은 fig7과 같습니다. 여기서 $G$는 gap의 리스트입니다.

fig4

논문에서는 $\tau_j$를 결정하기 위한 세가지 조건을 결정했습니다.(우선순위 순)

  1. 처음 attention score는 1로 초기화되고 네트워크가 해당 시계열에 attention하는 경우에만 점수가 증가하기 때문에 $\tau_j \ge 1$입니다.
  2. temporal 인과 그래프는 일반적으로 sparse하다고 합니다. 때문에 낮은 score를 선택에 포함하지 않도록 $\tau_j$에 대해 선택된 간격이 $G$의 전반부에 위치해야 합니다($N>5$인 경우).
  3. $\tau_j$ 를 선택하는 gap이 첫번째 gap이 되지 않도록 제한합니다. 이렇게 하면 target 시계열에 대한 잠재적 원인 $P_j$에는 적어도 두 개의 시계열이 포함됩니다.

$\tau_j$가 결정되면 hardsoftmax 함수가 적용됩니다. 만약 $a_j>\tau_j$인 경우 시계열 $X_i$가 $P_j$에 추가되므로 이는 $h_{i,j}>0$일 때 추가되는 것과 같습니다. hardsoftmax score $h_{i,j}$와 $h_{j,i}$사이에는 다음과 같은 case가 있습니다.

  1. $h_{i,j}=0$, $h_{j,i}=0$ : $X_i$는 $X_j$와 연관이 없다.(그 반대도 마찬가지)
  2. $h_{i,j}=0$, $h_{j,i}>0$ : $X_j$는 $X_i$의 잠재적 원인이기 때문에 $X_j$는 $P_i$에 추가한다.

    (a) $X_i$에서 $X_i$까지 직접적인 인과관계가 있거나,
    (b) $X_i$와 $X_i$ 사이에 교란요인이 존재하며 교란요인에서 $X_j$까지의 delay가 $X_i$까지의 delay보다 작다.

  3. $h_{i,j}>0$, $h_{j,i}=0$ : $X_i$는 $X_j$의 잠재적 원인이기 때문에 $X_i$는 $P_j$에 추가한다. (설명은 위와 동일)
  4. $h_{i,j}>0$, $h_{j,i}>0$ : $X_i$는 $P_j$에, $X_j$는 $P_i$에 추가한다.

    (a) $X_i$가 $X_j$의 원인이고, $X_j$가 $X_i$의 원인이거나,
    (b) 동일한 delay를 갖는 (hidden) 교란요인이 존재한다.

논문에서는 hardsoftmax score가 0보다 클 경우 가짜 상관관계의 결과일 수도 있다는 것을 주의하라고 합니다. 관찰된 데이터만 가지고 상관관계의 허위 여부를 판단할 수 없으므로, 모델의 결과에 대해서 올바른지 판단하는 것은 도메인 전문가의 몫이라고 했습니다.

3. Causal Validation

hardsoftmax score를 해석한 후, TCDFsms $P_j$의 잠재적 원인이 시계열 $X_j$의 실제 원인인지 검증합니다. 그리고 검증이 완료된 원인을 실제 원인이라고 판단합니다.
인과 관계는 일반적으로 다음의 두 가지 가정을 준수하는 것으로 알려져 있습니다.

  1. Temporal precedence : 원인이 결과보다 우선한다.
  2. Physical influence : 원인을 조작하면 결과가 달라진다.

논문에서는 temporal convolutional network를 사용하기 때문에 과거로의 정보 유출이 없습니다. 따라서 첫번째 가정을 준수합니다. 두번째 가정은 일반적으로 개입(intervention)의 측면에서 정의됩니다. 즉, 다른 모든 시계열이 고정되고 $X_i$에 대한 개입이 존재하는 경우 $X_i$는 $X_j$의 원인이 됩니다. 하지만 다른 시계열을 고정하는 통제 실험은 실제로는 실현가능하지 않습니다. 이러한 경우 데이터 기반 인과관계 검증 측정이 개입 방법으로 사용될 수 있다고 합니다. 인과관계 검증 측정값은 실제 입력 데이터와 잠재적 원인을 조작한 개입 데이터 사이의 평가 점수 차이를 모델링하여 이로 인해 효과가 바뀌는지 여부를 평가합니다.

TCDF에서는 인과관계를 검증하는 방법으로 Permutation Importance(PI)를 사용합니다. 이 feature importance방법은 변수 값이 무작위로 permute될 때 error score가 얼마나 증가하는지를 측정합니다. 선행논문에 때르면, 관찰된 데이터 구조가 시간순으로 정렬되고 일관되며 숨겨진 교란요인이나 무작위화가 없는 경우, 변수의 중요도를 인과관계로 해석할 수 있다고 합니다. 시계열 값을 permute하면 시간성이 제거되므로 원인과 결과 사이의 잠재적 인과 관계가 끊어지므로, 변수가 permute되었을 때 모델의 loss가 크게 증가하는 경우에만 해당 변수가 target의 원인이 된다고 판단할 수 있습니다.

3.1 Permutation Importance Validation Method

잠재적 원인을 찾기 위해 TCDF는 원본 입력 데이터를 기반으로 네트워크 $N_j$를 학습시키고 ground loss $L_g$를 측정합니다. 그리고 잠재적 원인을 검증하기 위해 각 잠재적 원인 $X_i \in P_j$에 대해 개입된(intervened) 데이터 집합을 생성합니다. 이는 앞서 언급한 것과 같이 잠재적 원인 $X_i$ 값이 무작위로 순열된다는 점을 제외하면 원래 입력 데이터와 동일합니다.
이 무작위로 순열된 데이터는 데이터셋의 분포를 변경하지 않으므로 네트워크 $N_j$는 재학습이 필요하지 않다고 합니다. TCDF는 개입된 데이터에 대해 훈련된 네트워크 $N_j$를 실행하여 $X_j$를 예측하고 intervention loss $L_I$를 측정하면 됩니다.

잠재적 원인 $X_i$가 $X_j$의 실제 원인일 경우, 개입된 데이터에 기반한 예측이 더 나빠질 것이라는 예상을 할 수 있습니다. 논문에서는 이 가정을 통해 잠재적 원인을 검증합니다. 즉, $L_I$가 $L_G$보다 유의하게 높지 않다면 $X_i$의 시간 순서 없이도 $X_j$를 예측할 수 있으므로 $X_i$는 $X_j$의 원인이 아닙니다. 유효성이 검증된 $P_j$의 시계열만 target 시계열 $X_j$의 진짜 원인으로 간주되고, $X_j$의 모든 진짜 원인 집합을 $C_j$로 나타냅니다.

원본 데이터와 개입된 데이터 사이의 loss 증가가 유의미한지를 판단하려면 얼마나 증가했나의 비율이 필요할 수 있습니다. 하지만 필요한 loss 증가율은 데이터 셋에 따라 달라집니다. 때문에 논문에서는 Permutation Importance Validation Method(PIVM)을 적용하여 원래 데이터와 개입된 데이터 사이의 loss 증가가 상대적으로 중요한 시점을 결정합니다. 이 방법은 첫 번째 에폭의 초기 loss를 기반으로 하며, 사용자가 지정한 매개변수 $s \in [0,1]$을 사용하여 유의성 측정값을 나타냅니다. 실험적으로 $s=0.8$의 유의도가 좋은 결과를 제공한다고 합니다.

TCDF는 원본 데이터에서 $\epsilon$에폭에 대해 네트워크 $N_j$를 학습시키고 에폭1과 에폭 $\epsilon$ 사이의 ground loss 감소를 측정합니다($\vartriangle_{L_G}=L_G^1-L_G^{\epsilon}$). 이는 학습을 통해 $N_j$가 달성할 수 있는 loss의 개선을 나타내죠. 그 후, TCDF는 학습된 $N_j$를 $X_i \in P_j$값이 무작위로 순열된 개입된 데이터에 적용하여 $L_I$를 측정합니다. 그 다음 $\vartriangle_{L_I}=L_G^1-L_G^I$를 계산합니다.

이 차이 $\vartriangle_{L_I}$가 $\vartriangle_{L_G} \cdot s$보다 크면 $\vartriangle_{L_I}$가 유의미하게 큰것이고, 이는 $L_I$가 $L_G$에 비해 크게 증가하지 않은 것입니다. 따라서 $X_i$는 $X_j$의 진짜 원인이 될 수 없습니다. 만약 반대로 된다면, $X_i$는 $X_j$의 진짜 원인이라고 볼 수 있습니다.

3.2 Dealing with Hidden Confounders

모든 진짜 원인이 측정되었다고 가정하면, attention의 해석과 PIVM으로 구성된 인과 검증 단계는 이론적으로 올바른 인과 관계만 발견해야 합니다. 하지만 confounder가 있다면, 교란변수로 인해 시계열 $X_j$와 상관관계가 있는 시계열 $X_i$는 교란변수가 있으면 $X_j$를 예측할 수 있기 때문에 PIVM에서 진정한 원인으로 분류할 수 없습니다.

하지만 숨겨진 교란 요인(데이터에 포함되지 않은 교란요인)이 있을 경우 PIVM은 잘못된 인과관계를 발견할 수 있습니다. 선행논문인 tsFCI는 숨겨진 교란 요인을 처리하기 위해 특별한 edge유형($X_i \Leftrightarrow X_j$)을 포함시켜 $X_i$가 $X_j$의 원인이 아니고, $X_j$가 $X_i$의 원인이 아니라는 것을 보여주며, 이를 통해 $X_i$와 $X_j$를 모두 유발하는 숨겨진 교란 요인이 있어야 한다는 결론을 내렸습니다.

TCDF는 PIVM을 적용해서 특정 case에서 이러한 $X_i \Leftrightarrow X_j$ 관계를 발견할 수 있습니다. TCDF는 두 시계열이 상관관계가 있는 이유를 인과관계, 측정된 교란요인, 숨겨진 교란요인 세가지로 구분하는데, 측정된 교란 요인이 있는 경우, PIVM은 교란 변수의 효과 $X_i$와 $X_j$가 인과 관계가 아닌 단지 상관관계에 불과하다는 것을 발견해야 합니다.
2-sycle이 있는 경우, PIVM은 $X_i$가 일정한 delay를 갖고 $X_j$를 유발하고, $X_j$가 일정한 delay를 갖고 $X_i$를 유발한다는 것을 발견해야 합니다. $X_i$와 $X_j$에 숨겨진 교란요인이 있는 경우, PIVM은 $X_i$가 $X_j$의 진짜 원인이며 그 반대의 경우도 마찬가지인 것을 발견합니다.

4. Delay Discovery

인과 관계를 발견하는 것 외에도, TCDF는 실제 원인과 결과 사이의 시간 delay를 발견합니다. 이는 target $X_j$를 예측하는 네트워크 $N_j$에서 인과 관계가 있는 $X_i$에 대한 커널 가중치 $W_i$를 해석하여 수행됩니다.
채널의 모든 출력 값은 동일한 가중치를 공유하기 때문에 fig5의 동일한 색상으로 표시된 것처럼 정확히 동일한 패턴을 감지합니다. 이러한 가중치는 학습 파라미터 수를 줄일 뿐만 아니라 delay를 해석할 수 있게 합니다.

convolution은 선형 연산이므로, 커널에서 $X_i$의 가중치를 분석하여 원인 $X_i$와 target $X_j$사이의 특정 delay의 영향을 측정할 수 있습니다. 가장 높은 커널 가중치의 위치는 발견된 delay $d(e_{i,j})$와 같고, 입력 데이터의 현재 값도 사용하므로 가장 작은 delay는 0이 될 수 있고 이는 즉각적인 효과를 나타냅니다. 발견할 수 있는 최대 delay는 receptive field와 같고, 따라서 인과 관계를 성공적으로 발견하려면 receptive field가 적어도 원인과 결과 사이의 delay만큼 커야합니다.

fig4

댓글남기기