主要内容

超前滞后分析的小波互相关

这个例子展示了如何使用小波互相关来测量两个不同尺度信号之间的相似性。

小波互相关仅仅是两个信号之间常见互相关的尺度局部化版本。在相互关联中,通过将一个序列相对于另一个序列进行移动,将移位的序列一个元素一个元素地相乘,然后将结果相加,从而确定两个序列之间的相似性。对于确定性序列,你可以把它写成普通的内积: < x n y n - k > n n x n y n - k 在哪里 x n 而且 y n 是序列(信号),柱状表示复数共轭。变量k是滞后变量,表示应用到的位移 y n .如果两个 x n 而且 y n 都是实数,复共轭就没有必要了。假设 y n 顺序是一样的吗 x n 但延迟L>0个样本,其中L是一个整数。为了具体化,假设 y n x n - 1 0 .如果你表达 y n 在这方面 x n 以上,你得到 < x n x n - 1 0 - k > n n x n x n - 1 0 - k .由Cauchy-Schwartz不等式可知,当 k - 1 0 .这意味着如果你左shift(前进) y n 通过10个样本,可以得到最大的互相关序列值。如果 x n 的l延迟版本 y n x n y n - l 时,则互相关序列最大 k l .你可以用xcorr

创建一个由20个样本组成的三角形信号。创建这个信号的一个有噪声的移位版本。三角形峰值的位移是3个样本。画出x而且y序列。

N = 20;X0 = 1:n/2;X1 = (2*x0-1)/n;X = [x1 fliplr(x1)]';rng默认的;Y = [0 (3,1);x]+0.3*randn(长度(x)+3,1);次要情节(2,1,1)干细胞(x,“填充”轴([0 22 -1 2])输入序列的) subplot(2,1,2) stem(y,“填充”轴([0 22 -1 2])“输出序列”

图中包含2个轴对象。标题为Input Sequence的Axes对象1包含一个stem类型的对象。标题为Output Sequence的Axes对象2包含一个stem类型的对象。

使用xcorr得到互相关序列,确定得到最大值的滞后。

[xc,滞后]= xcorr(x,y);[~,I] = max(abs(xc));图阻止(xc滞后,“填充”)传说(sprintf ('延迟%d时的最大值'滞后(我)))标题(“样本互相关序列”

图中包含一个轴对象。标题为Sample Cross-Correlation Sequence的axes对象包含一个stem类型的对象。该节点表示延迟-3时的最大值。

最大延迟为-3。信号y第二个输入是xcorr这是一个延迟版x.你必须改变y左移3个样本(负移)以最大化相互相关性。如果你颠倒角色x而且y作为输入xcorr,最大滞后现在出现在一个正滞后。

[xc,滞后]= xcorr(y,x);[~,I] = max(abs(xc));图阻止(xc滞后,“填充”)传说(sprintf ('延迟%d时的最大值'滞后(我)))标题(“样本互相关序列”

图中包含一个轴对象。标题为Sample Cross-Correlation Sequence的axes对象包含一个stem类型的对象。该节点表示延迟3时的最大值。

x是高级版吗y你会拖延x通过三个样本来最大化相互关联。

modwtxcorr是基于比例的版本xcorr.使用modwtxcorr,首先得到非抽取小波变换。

将小波相互相关应用于两个相互移位的信号。构造两个带有附加噪声的指数阻尼200hz正弦波。的x信号的时间中心在 t 0 2 秒时y的中心在 t 0 5 秒。

T = 0:1/2000:1-1/2000;x =罪(2 *π* 200 * t)。* exp(-50 *π* (t - 0.2) ^ 2) + 0.1 * randn(大小(t));y =罪(2 *π* 200 * t)。* exp(-50 *π* (t - 0.5) ^ 2) + 0.1 * randn(大小(t));图(t,x)稍等情节(t、y)包含(“秒”) ylabel (“振幅”网格)传奇(“x”“y”

图中包含一个轴对象。axis对象包含2个line类型的对象。这些向量代表x y。

大家可以看到x而且y都很相似吗y延迟0.3秒。的非抽取小波变换x而且y使用Fejer-Korovkin(14)小波降至5级。采样频率为2千赫的三级小波系数是一个近似值 2 0 0 0 / 2 4 2 0 0 0 / 2 3. 输入带通滤波。Fejer-Korovkin滤波器的频率局部化保证了这个带通近似是相当好的。

Wx = modwt(x,“fk14”5);Wy = modwt(y,“fk14”5);

得到的小波变换的小波互相关序列x而且y.绘制以零滞后为中心的2000个滞后的三级小波互相关序列。将滞后乘以采样周期以获得有意义的时间轴。

[xc,~,lag] = modwtxcorr(wx,wy,“fk14”);Lev = 3;Zerolag = floor(数字(xc{lev})/2+1);滞后=滞后{lev}(zerolag-999:zerolag+1000).*(1/2000);图(tag,xc{lev}(zerolag-999:zerolag+1000))小波互相关序列(三级))包含(“时间”) ylabel (“互关联系数”

图中包含一个轴对象。标题为Wavelet Cross-Correlation Sequence (level 3)的坐标轴对象包含一个类型为line的对象。

互相关序列在延迟-0.3秒时达到峰值。的小波变换y第二个输入是modwtxcorr.因为第二个输入modwtxcorr相对于第一个偏移,相关峰值出现在负延迟。你必须左移(提前)互相关序列来对齐时间序列。如果将输入的角色颠倒为modwtxcorr,则得到正滞后时的峰值相关性。

[xc,~,lag] = modwtxcorr(wy,wx,“fk14”);Lev = 3;Zerolag = floor(数字(xc{lev})/2+1);滞后=滞后{lev}(zerolag-999:zerolag+1000).*(1/2000);图(tag,xc{lev}(zerolag-999:zerolag+1000))小波互相关序列(三级))包含(“时间”) ylabel (“互关联系数”

图中包含一个轴对象。标题为Wavelet Cross-Correlation Sequence (level 3)的坐标轴对象包含一个类型为line的对象。

为了表明小波相互关能够实现尺度(频率)局部相关,请绘制1级和5级的相互关序列。

Lev = 1;Zerolag = floor(数字(xc{lev})/2+1);滞后=滞后{lev}(zerolag-999:zerolag+1000).*(1/2000);情节(tlag xc{列弗}(zerolag - 999: zerolag + 1000)标题(小波互相关序列(一级))包含(“时间”) ylabel (“互关联系数”

图中包含一个轴对象。标题为Wavelet Cross-Correlation Sequence (level 1)的坐标轴对象包含一个类型为line的对象。

图Lev = 5;Zerolag = floor(数字(xc{lev})/2+1);滞后=滞后{lev}(zerolag-999:zerolag+1000).*(1/2000);情节(tlag xc{列弗}(zerolag - 999: zerolag + 1000)标题(小波互相关序列(5级))包含(“时间”) ylabel (“互关联系数”

图中包含一个轴对象。标题为Wavelet Cross-Correlation Sequence(第5级)的axis对象包含一个类型为line的对象。

由于小波变换的带通性质,1级和5级的小波互相关序列不显示任何指数加权正弦信号的证据。

对于财务数据,变量之间通常存在领先或滞后关系。在这些情况下,检查互相关序列是有用的,以确定相对于另一个变量滞后一个变量是否会使它们的互相关最大化。为了说明这一点,考虑GDP的两个组成部分——个人消费支出和私人国内投资总额之间的相关性。该数据是1974年第一季度至2012年第四季度美国实际GDP的链式加权数据。数据的转换方法是先取自然对数,然后计算年与年的差异。看看GDP的两个组成部分——个人消费支出,个人电脑,以及国内私人投资总额,privateinvest

负载GDPcomponentsPiwt = modwt(私人投资,“fk8”5);PCWT = modwt(pc,“fk8”5);图modwtcorr (piwt pcwt,“fk8”

图中包含一个轴对象。标题为Correlation by Scale—Wavelet Coefficients的axis对象包含2个类型为errorbar、line的对象。

个人支出和个人投资在2-4个季度内呈负相关。在较长尺度上,个人支出与个人投资之间存在较强的正相关关系。在代表2-4个四分之一周期的尺度上检查小波互相关序列。绘制95%置信区间的互相关序列。

[xcseq,xcseqci,lag] = modwtxcorr(piwt,pcwt,“fk8”);Zerolag = floor(number (xcseq{1})/2)+1;图plot(滞后{1}(零拉格:零拉格+20),xcseq{1}(零拉格:零拉格+20))保持情节(滞后{1}(zerolag: zerolag + 20), xcseqci {1} (zerolag: zerolag + 20日),“r——”)包含(“滞后(季度)”) ylabel (互相关的网格)标题({小波互相关序列——[2Q,4Q)...“个人消费和私人投资”})

图中包含一个轴对象。标题为“小波交叉相关序列——[2Q,4Q)个人消费和私人投资”的轴对象包含3个类型线对象。

最小尺度小波互相关序列在滞后1个季度后出现峰值正相关。这表明个人投资落后于个人支出四分之一。如果考虑到这种滞后关系,那么在所有尺度上,GDP组成部分之间都存在正相关关系。