/NLC

nonlinear correlation search on long time series

Primary LanguageMATLAB

Non-Linear Correlation search (NLC)

Non-Linear Correlation search(NLC) is proposed for the localization of correlated window pairs on long time series pairs.

Our goal is to find these correlated window pairs, which may have different delays and lengths, and may be nonlinear.

Problem statement

Given:

  • A pair of long time series ,

  • a threshold ,

  • the length constraint

  • and the delay constraint ,

Our goal:

Find all correlated time window pairs in the time series pair, where each satisfies

  • ,

  • ,

  • .

Algorithm Overview

The specific algorithm details are explained in Sec 4 and Sec 5 of our paper.

Also, we give a longer-version proof of theoretical analysis in vldb-nlc-longer.pdf.

Parameter Settings

You can change the parameters setting part in the beginning of NLC_E.m or NLC_S.m

% --parameters setting--
L_min = 400;    % min length
L_max = 850;    % max length
tau_min = -150; % min delay
tau_max = 150;  % max delay
k = 2;          % k-NN for MI calculation in KSG estimator
theta0 = 0.25;  % initial threshold for phase one
theta1 = 1.0;   % final threshold for phase two

miniL = 0.1*L_min;     % mini window length for trimming
delta_s = 0.1*L_min;    % search termination condition of starting point s
delta_l = 0.1*L_min;    % search termination condition of length l

Run

run NLC_S.m for NLC with window shrinking strategy.

run NLC_E.m for NLC with window extending strategy.

The window pair we found by NLC is saved in CP_1.

If you have the standard answer of the known correlated pairs, you can also get the Accuracy of NLC. (including Precision, Recall, F1-score.)