主要内容

modwtLayer

极大重叠离散小波变换(MODWT)层

自从R2022b

    描述

    MODWT层计算MODWT和MODWT多分辨率分析(MRA)的输入。使用这一层需要深度学习工具箱™。

    创建

    描述

    = modwtLayer创建一个MODWT层。默认情况下,层计算MODWTMRA 5级使用Daubechies least-asymmetric小波有四个消失的时刻“sym4”)。

    的输入modwtLayer必须是一个dlarray(深度学习工具箱)对象“认知行为治疗”格式。时间维度的张量输入的大小必须大于或等于2水平,在那里水平是MODWT变换的。modwtLayer格式的输出“SCBT”。有关更多信息,请参见层输出格式

    请注意

    内部对象初始化权重MODWT用作小波滤波器。不建议直接初始化权重。

    例子

    = modwtLayer (名称=值)创建一个MODWT层属性由名称指定参数。例如,层= modwtLayer(小波=“哈尔”)创建一个MODWT层使用Haar小波。您可以指定小波分解的程度,等等。

    属性

    全部展开

    MODWT

    这个属性是只读的。

    正交小波用于MODWT,名称指定为一个特征向量或字符串标量。

    正交小波被指定为1型小波的小波经理。有效的内置正交小波的家庭“哈雾”,的数据库N,的颗N,“头巾N,的提单N,“汉LP,“信谊N,“乌”,或“beyl”。使用waveinfo与小波家族短名称看到任何支持值数值后缀和如何解释这些值。金宝app例如,waveinfo(汉族)

    小波所指定的wname,相关的低通和高通滤波器分别是(~,~,嗨)= wfilters (wname)

    数据类型:字符|字符串

    这个属性是只读的。

    最初的小波滤波器组,指定为一对就是实值向量。向量的长度必须相等。LowpassFilterHighpassFilter必须对应于低通和高通滤波器,分别与正交小波。您可以使用isorthwfb确定正交性。

    (~,~,嗨)= wfilters (“db2”);[tf,检查]= isorthwfb (Lo,嗨);
    如果未指定,默认为两个过滤器[]modwtLayer使用小波确定MODWT使用的过滤器。

    你不能指定一个小波的名字和一双小波滤波器。

    例子:层= modwtLayer (‘LowpassFilter’,‘HighpassFilter’,嗨)

    数据类型:|

    这个属性是只读的。

    变换计算MODWT水平,指定为一个正整数小于或等于地板(log2 (N)),在那里N是输入层的大小在时间维度。

    数据类型:|

    这个属性是只读的。

    边界条件的计算使用MODWT,指定为其中的一个:

    • “周期”——信号沿着时间维度定期延长。小波系数的数量等于信号在时间维度的大小。

    • “反射”沿着时间维度——信号反射对称计算MODWT之前在终端。返回数的小波系数是输入信号的长度的两倍。

    这个属性是只读的。

    选定的水平modwtLayer输出,指定为一个向量的正整数小于或等于水平

    数据类型:|

    这个属性是只读的。

    包括低通滤波器系数,指定为一个数字或逻辑1(真正的)或0()。如果指定为真正的,MODWT层包括水平th MODWT水平低通(扩展)系数,或水平th MODWTMRA水平光滑。

    数据类型:逻辑

    这个属性是只读的。

    总选择水平,指定为一个数字或逻辑1(真正的)或0()。如果指定为真正的,MODWT层骨料(如果选中的水平和低通水平IncludeLowpass真正的每个输入通道的总和。如果AggregateLevels真正的输出的大小,空间维度1。有关更多信息,比较modwtLayer输出和modwt modwtmra输出

    数据类型:逻辑

    这个属性是只读的。

    算法modwtLayer用来计算输出,指定为其中的一个:

    • “MODWTMRA”——计算基于极大重叠离散小波变换的多分辨率分析。

    • “MODWT”——计算极大重叠离散小波变换的小波系数。

    有关更多信息,请参见比较MODWT和MODWTMRA

    乘数为体重学习速率,指定为负的标量。如果不指定,该属性默认为零,导致权重不更新培训。你也可以设置该属性使用setLearnRateFactor(深度学习工具箱)函数。

    可学的参数“重量”modwtLayer是一个棱矩阵对当前的过滤器。第一行是低通滤波器和高通滤波器是第二行。默认情况下,权重与默认小波相关的低通和高通滤波器,不更新。

    数据类型:|

    图层名称,指定为一个特征向量或字符串标量。为数组输入,trainNetwork(深度学习工具箱),assembleNetwork(深度学习工具箱),layerGraph(深度学习工具箱),dlnetwork(深度学习工具箱)函数自动分配名称层的名称

    数据类型:字符|字符串

    这个属性是只读的。

    输入层的数量。这一层只接受一个输入。

    数据类型:

    这个属性是只读的。

    输入层的名称。这一层只接受一个输入。

    数据类型:细胞

    这个属性是只读的。

    输出层的数量。这一层只有一个输出。

    数据类型:

    这个属性是只读的。

    输出层的名称。这一层只有一个输出。

    数据类型:细胞

    例子

    全部折叠

    创建一个MODWT层来计算输入信号的多分辨率分析。使用一个coiflet 5小波与秩序。变换级别设置为8。只保留细节水平3、5、7,近似。

    层= modwtLayer(小波=“coif5”= 8级,SelectedLevels = (3、5、7) Name =“MODWT”);

    创建一个dlnetwork对象包含一个序列输入层,MODWT层,和一个LSTM层。8级分解,设定最低序列长度为2 ^ 8样本。使用LSTM层,平层LSTM层崩溃之前还需要空间维度进入频道维度。

    mLength = 2 ^ 8;sqLayer = sequenceInputLayer (Name =“输入”最小长度= mLength);层= [sqLayer层flattenLayer lstmLayer (Name =“LSTM”));dlnet = dlnetwork(层);

    运行一个批10个随机单通道信号通过dlnetwork对象。检查输出的大小和尺寸。平层已经崩溃的空间维度。

    dataout = dlnet.forward (dlarray (randn (1, 2000,“单一”),“认知行为治疗”));大小(dataout)
    ans =1×310 2000
    dim (dataout)
    ans =“认知行为治疗”

    数据集加载Espiga3脑电图(EEG)。脑电图采样的数据由23频道在200赫兹。有995个样本在每个通道。保存multisignal作为dlarray,指定的尺寸。dlarray排列的阵列尺寸“认知行为治疗”所期望塑造一个深度学习网络。

    负载Espiga3(N, nch) = (Espiga3)大小;x = dlarray (Espiga3“TCB”);

    使用modwtmodwtmra获取MODWT和MRA multisignal 6级。默认情况下,modwtmodwtmra使用sym4小波。

    列弗= 6;wt = modwt (Espiga3,列弗);mra = modwtmra (wt);

    modwt

    创建一个MODWT层可以使用的数据。变换级别设置为6。指定要使用的层MODWT计算输出。默认情况下,层使用sym4小波。

    mlayer = = modwtLayer(水平=列弗,算法“MODWT”);

    创建一个两层的dlnetwork对象包含一个序列输入层和MODWT层刚刚创建。对待每个通道特性。6级分解,设定最低序列长度为2 ^ 6。

    mLength = mlayer.Level;sqInput = sequenceInputLayer (nch最小长度= 2 ^ mLength);层= [sqInput mlayer];dlnet = dlnetwork(层);

    通过运行脑电图数据向前网络的方法。

    向前dataout = (dlnet x);

    modwtmodwtmra函数返回MODWT和MRA的多通道信号作为一个三维数组。第一、第二、第三维度的数组对应小波分解层次,信号长度,分别和通道。网络的输出转换为一个数字数组。交换网络输出的尺寸匹配函数的输出。比较网络输出的modwt输出。

    q = extractdata (dataout);q =排列(q, [1 4 2 3]);马克斯(abs (q (:) wt (:)))
    ans = 8.4402 e-05

    选择一个MODWT源于modwtLayer。与相应的通道脑电图数据。每个级别的modwtLayer输出。不同级别包含信号在不同频率范围的信息。水平不是时间与原始信号,因为层使用MODWT算法。

    频道= 10;t = 100:400;次要情节(lev + 2 1 1)情节(t, Espiga3 (t,频道))ylabel (“原始脑电图”)k = 2: lev + 1次要情节(lev + 2 1 k)情节(t, q (k - 1 t频道))ylabel ([“水平”k - 1,“MODWT”])结束次要情节(lev + 2 1列弗+ 2)情节(t, q (lev + 1 t频道))ylabel ([“缩放”,“系数”,“MODWT”])集(gcf位置= [0 0 500 700])

    图包含8轴对象。坐标轴对象1与原有ylabel脑电图包含一个类型的对象。坐标轴对象2 ylabel水平1 MODWT包含一个类型的对象。轴3 MODWT ylabel级别2的包含一个对象类型的对象。轴对象4 ylabel水平3 MODWT包含一个类型的对象。坐标轴对象5 ylabel水平4 MODWT包含一个类型的对象。坐标轴对象6 ylabel水平5 MODWT包含一个类型的对象。坐标轴对象7 ylabel水平6 MODWT包含一个类型的对象。坐标轴对象8 ylabel MODWT包含一个类型的对象的缩放系数。

    modwtmra

    创建第二个网络类似于第一个网络,除了这一次指定modwtLayer使用MODWTMRA算法和总第四,第五,第六的水平。不包括低通级别的聚合。

    sLevels = (4 5 6);=列弗mlayer = modwtLayer(水平,SelectedLevels = sLevels,IncludeLowpass = 0,AggregateLevels = 1);层= [sqInput mlayer];dlnet2 = dlnetwork(层);

    通过运行脑电图数据向前网络的方法。网络的输出转换为一个数字数组。排列的维度之前完成。

    向前dataout = (dlnet2 x);q = extractdata (dataout);q =排列(q, [1 4 3 2]);

    总第四、第五和第六种MRA的水平。与网络的输出。

    mraAggregate =总和(mra (sLevels,:,:));马克斯(abs (q (:) -mraAggregate (:)))
    ans = 2.1036 e-04

    检查MODWTMRA层的结果。与相应的通道脑电图数据。通过选择只有第四,第五,和6的水平,和不包括低通滤波器组件层删除几个高、低频率成分的信号。转换后的信号比原始信号平滑和低频组件被删除,以便抵消更接近于0。输出是时间与原始信号,因为层使用默认MODWTMRA算法。取决于你的目标,保留时间对齐可以是有用的。

    频道= 10;t = 100:400;图保存情节(t, Espiga3 (t,频道))情节(t, q (1 t 1、通道))传奇([“原始脑电图”,“层输出”),位置=“西北”)

    图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表原始的脑电图,输出层。

    这个例子演示了MODWT之间的差异和MODWTMRA。MODWT分区一个信号的能量在细节系数和缩放系数。MODWTMRA项目一个信号在小波子空间和一个扩展子空间。

    选择sym6小波。加载和情节心电图(ECG)信号。心电信号的采样频率为180赫兹。数据来自珀西瓦尔和《瓦尔登湖》(2000),p。125(data originally provided by William Constantine and Per Reinhall, University of Washington).

    负载wecgt =(0:元素个数(wecg) 1) / 180;西弗吉尼亚州=“sym6”;情节(t, wecg)网格标题([“信号长度= 'num2str(元素个数(wecg))))包含(“时间(s)”)ylabel (“振幅”)

    图包含一个坐标轴对象。坐标轴对象与标题信号长度= 2048,包含时间(s), ylabel振幅包含一个类型的对象。

    的MODWT信号。

    西弗吉尼亚州wtecg = modwt (wecg);

    输入数据是一个函数的样本 f ( x ) 评估在 N 时间点。函数可以表示为一个扩展函数的线性组合 ϕ ( x ) 和小波 ψ ( x ) 在不同的尺度和翻译: f ( x ) = k = 0 N - - - - - - 1 c k 2 - - - - - - J 0 / 2 ϕ ( 2 - - - - - - J 0 x - - - - - - k ) + j = 1 J 0 f j ( x ) ,在那里 f j ( x ) = k = 0 N - - - - - - 1 d j , k 2 - - - - - - j / 2 ψ ( 2 - - - - - - j x - - - - - - k ) J 0 是小波分解的层数。第一笔是粗尺度的近似信号,和 f j ( x ) 在连续的尺度上的细节。MODWT返回 N 系数 { c k } ( J 0 × N ) 细节系数 { d j , k } 的扩张。在每一行wtecg包含系数在不同的规模。

    当把MODWT长度的信号 N ,有 地板上 ( 日志 2 ( N ) ) 默认的分解。细节系数在每个生产水平。比例系数只返回最后的水平。在这个例子中, N = 2 0 4 8 , J 0 = 地板上 ( 日志 2 ( 2 0 4 8 ) ) = 1 1 的行数wtecg J 0 + 1 = 1 1 + 1 = 1 2

    MODWT分区的能量在不同的尺度和比例系数: | | X | | 2 = j = 1 J 0 | | W j | | 2 + | | V J 0 | | 2 ,在那里 X 是输入数据, W j 细节系数在尺度 j , V J 0 是最后一个级别的比例系数。

    计算的能量在每个规模,并评估它们的和。

    energy_by_scales = (wtecg。^ 2, 2)总和;水平= {“D1”;“D2”;“D3”;“D4”;“D5”;“D6”;“D7”;D8的;“D9”;“D10”;“这里”;“A11”};energy_table =表(水平,energy_by_scales);disp (energy_table)
    14.063水平energy_by_scales _________ ___________ {D1的}{“D2”} 20.612 {D3的}37.716 25.123 {D4的}{}“D5”17.437 8.9852 {D6的}{D7的}1.2906 {D8的}4.7278 12.205 {D9的}{D10的}{‘这里’}76.268 76.428 3.4192 {“A11”}
    energy_total = varfun (@sum energy_table (:, 2))
    energy_total =298.28 sum_energy_by_scales ____________________

    确认MODWT energy-preserving是通过计算信号的能量和比较它与所有尺度上的能量的总和。

    energy_ecg =总和(wecg。^ 2);马克斯(abs (energy_total.sum_energy_by_scales-energy_ecg))
    ans = 7.4402平台以及

    的MODWTMRA信号。

    西弗吉尼亚州mraecg = modwtmra (wtecg);

    MODWTMRA返回函数的预测 f ( x ) 在不同的小波子空间和最终的扩展空间。也就是说,MODWTMRA回报 k = 0 N - - - - - - 1 c k 2 - - - - - - J 0 / 2 ϕ ( 2 - - - - - - J 0 x - - - - - - k ) J 0 许多 { f j ( x ) } 评估在 N 时间点。在每一行mraecg是一个投影 f ( x ) 到不同的子空间。这意味着可以恢复原始信号通过添加所有的预测。这不是真正的MODWT。添加系数wtecg不会恢复原始信号。

    选择一个时间点,添加的预测 f ( x ) 评估时间点,并与原始信号。

    time_point = 1000;abs(总和(mraecg (:, time_point)) -wecg (time_point))
    ans = 3.0846 e-13

    确认,不像MODWT, MODWTMRA不是一个energy-preserving变换。

    energy_ecg =总和(wecg。^ 2);energy_mra_scales = (mraecg。^ 2, 2)总和;energy_mra =总和(energy_mra_scales);马克斯(abs (energy_mra-energy_ecg))
    ans = 115.7053

    MODWTMRA是零相位滤波的信号。将time-aligned特性。显示通过绘制原始信号和它的一个预测。为了更好地说明了对齐,放大。

    情节(t, wecg“b”)举行:情节(t, mraecg (4),“- - -”)举行网格传说xlim (8 [4]) (“信号”,“投影”,“位置”,“西北”)包含(“时间(s)”)ylabel (“振幅”)

    图包含一个坐标轴对象。坐标轴对象包含时间(s), ylabel振幅包含2线类型的对象。这些对象代表信号,投影。

    做一个类似的阴谋使用MODWT系数相同的规模。不会time-aligned特性。MODWT不是零相位滤波的输入。

    情节(t, wecg“b”)举行:情节(t, wtecg (4),“- - -”)举行网格传说xlim (8 [4]) (“信号”,“系数”,“位置”,“西北”)包含(“时间(s)”)ylabel (“振幅”)

    图包含一个坐标轴对象。坐标轴对象包含时间(s), ylabel振幅包含2线类型的对象。这些对象代表信号,系数。

    更多关于

    全部展开

    版本历史

    介绍了R2022b

    另请参阅

    应用程序

    功能

    对象

    主题