cwtLayer
描述
CWT层计算输入的类。使用这一层需要深度学习工具箱™。
创建
描述
创建一个类层的信号长度1024个样本。层使用每倍频程10小波滤波器和周期性边界条件。默认情况下,该层使用分析莫尔斯(60)小波。层
= cwtLayer
的输入cwtLayer
必须是一个dlarray
(深度学习工具箱)对象“认知行为治疗”
格式。张量的大小在时间维度的输入是平等的价值的SignalLength。默认情况下,cwtLayer
格式的输出“SCBT”
。有关更多信息,请参见层输出格式。
请注意
cwtLayer
初始化权重内部类中使用小波滤波器。不建议直接初始化权重。
属性
类
SignalLength
- - - - - -信号长度的样品
1024年
(默认)|正整数
信号长度样本中,指定为一个正整数大于或等于4。所有的序列输入cwtLayer
垫有尺寸吗SignalLength
在时间维度。
数据类型:单
|双
小波
- - - - - -分析小波
“莫尔斯”
(默认)|“埃莫”
|“撞”
分析中使用小波变换,指定为“莫尔斯”
,“埃莫”
,或“撞”
,代表了分析莫尔斯,Morlet(伽柏),分别和凹凸小波。默认小波分析莫尔斯(60)小波。
阈值
- - - - - -体重阈值
1 e-8
(默认)|积极的真正的标量
体重阈值,指定为一个积极的真正的标量。cwtLayer
使用阈值来确定每个CWT过滤器的显著值小波滤波器组之前任何重量修改通过学习。它集值低于指定的阈值为零,不包括学习。CWT过滤器是规范化,以便每个滤波器的峰值是2。
较小的值
阈值
导致更多的值被保留的CWT过滤器,因此不减肥。更大的值
阈值
导致更多的减肥和分歧的深度学习CWT和转换计算滤波器组。一个阈值小于
最小正浮点数
,最小的积极的归一化双精度浮点数,剪最小正浮点数
计算重要的过滤值。
设置阈值
值导致没有值被保留任何单个过滤器会导致错误。
数据类型:单
|双
IncludeLowpass
- - - - - -包括低通滤波器
假
或0
(默认)|真正的
或1
包括低通滤波器,指定为一个数字或逻辑1
(真正的
)或0
(假
)。指定真正的
包括低通滤波器(扩展)过滤器类。
数据类型:逻辑
VoicesPerOctave
- - - - - -数量每八度的声音
10
(默认)|整数1 - 48
每个八度的声音数类,指定为一个整数1 - 48。CWT尺度离散使用指定的数量每八度的声音。小波能量传播的频率和时间自动决定了最小和最大尺度。
您可以使用cwtfreqbounds
确定小波滤波器组的频率限制。频率范围取决于等参数小波的能量分散,数量每八度的声音,和信号长度。
数据类型:单
|双
FrequencyLimits
- - - - - -频率的限制
双元素标量矢量
CWT频率限制,指定为一个双元素向量用积极严格增加条目。频率限制解释为归一化频率,周期/样品。
第一个元素指定了最低通带频率和峰值必须大于或等于小波的峰值频率的乘积在归一化频率和两个标准差除以时间SignalLength。
第二个元素指定了最高峰通带频率和必须小于或等于奈奎斯特频率。
以2为底的对数频率上限的比值freqMax
频率下限freqMin
必须大于或等于1 /VoicesPerOctave:
日志2(freqMax / freqMin)≥1 / VoicesPerOctave
。
有关更多信息,请参见CWT频率限制。
获得归一化频率,您期望在赫兹频率除以赫兹的采样率。例如,如果采样率为1000 Hz和你想要的频率范围是[100400]赫兹,每个元素除以1000获得归一化频率:(100/1000、400/1000)。
仅适用于小波滤波器频率限制。如果您另外指定IncludeLowpass
作为真正的
,cwtLayer
还包括低通滤波器(扩展)。
请注意
如果你使用深层网络设计师(深度学习工具箱)创建或编辑一个深度学习网络,改变小波
财产的cwtLayer,应用程序不会改变的频率限制层。如果您希望应用程序提供默认频率限制适合新的小波,你必须采取额外措施。有关更多信息,请参见重置默认值频率限制深陷网络设计师。
数据类型:单
|双
TimeBandwidth
- - - - - -莫尔斯波的时间带宽积
60
(默认)|积极的标量
莫尔斯波的时间带宽积,指定为一个积极的标量大于或等于3和小于或等于120。莫尔斯波的对称性(γ)固定在3。此属性时才有效小波
是“莫尔斯”
。时间带宽积是忽略的“埃莫”
和“撞”
小波。莫尔斯小波、时间带宽积越大、越分散小波在时间和更窄的小波的频率。
的符号莫尔斯小波,TimeBandwidth
是P2。
数据类型:单
|双
TransformMode
- - - - - -层变换模式
“杂志”
(默认)|“squaremag”
|“realimag”
层变换模式,指定为其中的一个:
“杂志”
——CWT级“squaremag”
——CWT平方级“realimag”
沿着通道——CWT实部和虚部连接尺寸
层
WeightLearnRateFactor
- - - - - -乘数为学习速率
0
(默认)|负的标量
乘数为体重学习速率,指定为负的标量。权重是减少CWT过滤器值表示为1-by-1-by -Nr张量。看到cwtfilters2array
获取详细信息。默认情况下,重量不更新培训。
数据类型:单
|双
的名字
- - - - - -层的名字
”
(默认)|特征向量|字符串标量
图层名称,指定为一个特征向量或字符串标量。为层
数组输入,trainNetwork
(深度学习工具箱),assembleNetwork
(深度学习工具箱),layerGraph
(深度学习工具箱),dlnetwork
(深度学习工具箱)函数自动分配名称层的名称”
。
数据类型:字符
|字符串
NumInputs
- - - - - -输入数量
1
(默认)
这个属性是只读的。
输入层的数量。这一层只接受一个输入。
数据类型:双
InputNames
- - - - - -输入名字
{"在"}
(默认)
这个属性是只读的。
输入层的名称。这一层只接受一个输入。
数据类型:细胞
NumOutputs
- - - - - -数量的输出
1
(默认)
这个属性是只读的。
输出层的数量。这一层只有一个输出。
数据类型:双
OutputNames
- - - - - -输出的名字
{“出”}
(默认)
这个属性是只读的。
输出层的名称。这一层只有一个输出。
数据类型:细胞
对象的功能
filterbank |
毛重CWT过滤器银行深入学习 |
例子
使用cwtLayer
在深入学习网络
创建一个类层的信号长度2000个样本。学习速率因子设置为1。
粘土= cwtLayer (SignalLength = 2000, WeightLearnRateFactor = 1);
创建一个三层dlnetwork
类包含一个序列输入层,图层,和一个二维最大池层。
sqLayer = sequenceInputLayer (Name =“输入”,最小长度= 2000);媒体播放器= maxPooling2dLayer(25[2],跨步= 12 [2]);层= [sqLayer粘土媒体播放器);dlnet = dlnetwork(层);
运行一个批10个随机单通道信号通过dlnetwork
。
dataout =前进(dlnet,…dlarray (randn (1, 2000,“单身”),“认知行为治疗”));大小(dataout)
ans =1×440 1 165
dim (dataout)
ans = ' SCBT '
比较类和cwtLayer
和过滤器银行
加载Espiga3脑电图数据集。脑电图采样的数据由23频道在200赫兹。有995个样本在每个通道。保存multisignal作为dlarray
,指定的尺寸。dlarray
排列的阵列尺寸“认知行为治疗”
所期望塑造一个深度学习网络。
负载Espiga3(N, nch) = (Espiga3)大小;x = dlarray (Espiga3“TCB”);谁Espiga3x
类属性名称大小字节Espiga3 995 x 23 x1x995 183110 dlarray x23 183080双
创建一个适合的CWT过滤器银行渠道的数据集。使用默认分析莫尔斯(60)小波。指定周期性边界条件。使用滤波器组获得的类的一个渠道。类是一个二维矩阵。行维度对应于规模,或频率,列维度对应时间。
fb = cwtfilterbank (SignalLength = N,边界=“周期”);colInd = 11;cfs = wt (fb, Espiga3 (:, colInd));
层变换模式-“杂志”
创建一个类与EEG数据层,可以使用。默认情况下,层输出的绝对值类,或量图,每个通道。
粘土= cwtLayer (SignalLength = N);
创建一个两层的dlnetwork
对象包含一个序列输入层和您刚才创建的CWT层。对待每个通道特性。指定长度的信号作为输入层最低序列长度。
杀手= sequenceInputLayer (nch最小长度= N);层=(杀手粘土);dlnet = dlnetwork(层);
通过运行脑电图数据向前
网络的方法。
向前dataout = (dlnet x);
默认情况下,输出的cwtLayer
是一个dlarray
对象“SCBT”
格式。空间维度对应于频率。网络的输出转换为一个数字数组。交换网络的维度与输出“STCB”
格式。结果是一个三维数值数组,因为只有一个批处理。
q = extractdata (dataout);q =排列(q, [1 4 2 3]);谁问慢性疲劳综合症
类属性名称大小字节cfs 71 x995 1130320双复杂问71 x995x23 6499340单身
从输出结果对应于你选择的通道。与先前获得的CWT的绝对值。
r = q (:,:, colInd);d = max (abs (r (:) abs (cfs (:))));str = sprintf (“区别:% g”d);流(“% s \ n”str)
区别:8.86966 e-06
次要情节(2,1,1)显示亮度图像(r)标题(“层输出”次要情节(2,1,2)显示亮度图像(abs (cfs))标题(“滤波器组输出”)
层变换模式-“realimag”
创建一个类层,可以使用的数据。指定层输出的类的实部和虚部。创建一个两层的dlnetwork
对象包含一个序列输入层和CWT层。通过运行脑电图数据向前
网络的方法。
clayer2 = cwtLayer (SignalLength = N, TransformMode =“realimag”);layers2 =[杀手clayer2];dlnet2 = dlnetwork (layers2);向前dataout2 = (dlnet2 x);
网络的输出转换为一个数字数组。交换网络的维度与输出“STCB”
格式。因为输出类的实部和虚部,通道尺寸的大小是输入通道数的两倍。
q2 = extractdata (dataout2);q2 =排列(q2, [1 4 2 3]);谁第二季
类属性名称大小字节71年第二季度x995x46 12998680单
选择一个频道。使用CWT滤波器组来获得类的频道。比较类的实部和虚部和从网络输出相应的结果。
colInd = 23;cfs = wt (fb, Espiga3 (:, colInd));r = q2 (:,: [colInd nch + colInd]);a1 =实际(cfs);a2 = r (:,: 1);str1 = sprintf (“差(实部):% g”马克斯(abs (a1 (:) a2 (:))));a1 =图像放大(cfs);a2 = r (:: 2);str2 = sprintf (“差(图像放大部分):% g”马克斯(abs (a1 (:) a2 (:))));流(“% s \ n % s \ n”、str1 str2)
差异(实部):7.102 e-05差异(图像放大部分):6.94453 e-05
图次要情节(2 2 1)显示亮度图像(真实(cfs))标题(“过滤器”银行——真正的次要情节(2,2,2)显示亮度图像(r(:,: 1))标题(“层——真正的“次要情节(2,2,3)显示亮度图像(图像放大(cfs))标题(“过滤器”银行——图像放大次要情节(2,2,4)显示亮度图像(r(:,: 2))标题(“层-图像放大”)
CWT频率限制
创建一个类层使用默认值。默认情况下,类层是信号长度的1024个样本。层使用分析莫尔斯(60)的小波变换与10每八度的声音和周期性边界条件。检查默认频率限制的层。频率限制,在单位的周期/样本,基于小波的能量传播,信号长度,每八度的声音。
粘土= cwtLayer;clayer.FrequencyLimits
ans =1×20.0032 - 0.4341
使用filterbank
层的方法来获得全重CWT滤波器组的层。每行包含一个过滤器的值。过滤器是下令从高中心频率低。
psif = filterbank(粘土);谁psif
类属性名称大小字节psif 71 x1024 290816单
您可以确定通过创建一个中心频率cwtfilterbank
对象,指定类中使用的相同的小波参数的层,然后使用centerFrequencies
对象的功能。
创建一个cwtfilterbank
。默认的小波参数的CWT层完全相同。获得中心频率。的频率从高到低是有序的。情节的中心频率。
fb = cwtfilterbank;cf = centerFrequencies (fb);次要情节(2,1,1)情节(cf) ylabel (“周期/样本”)标题(“小波中心频率”网格)在次要情节(2,1,2)semilogy (cf)网格在ylabel (“周期/样本”)标题(“半对数的规模”)
情节表明小波中心频率并不像通常的线性间隔的情况下与其他过滤器银行。具体来说,中心频率指数下降。在连续小波分析,小波滤波器的中心频率是对数间隔。最常见的间隔是2 ^ (1 /NV),NV是声音的数量每倍频程,提高到整数的权力。换句话说,在CWT滤波器组,它是不可能连续的中心频率 和 ,在那里 ,以满足 。CWT层中的频率限制您指定必须满足 。
CWT层使用10每八度的声音。连续计算以2为底的对数的比值对中心频率。确认结果的最大和最小值都等于1/10。
cfRatio = log2 (cf (1: end-1)。/ cf(2:结束);(最小(cfRatio)最大(cfRatio))
ans =1×20.1000 - 0.1000
情节毛重CWT过滤器银行和中心频率。中心频率的峰值对应的频率响应每个小波滤波器组。
slen = clayer.SignalLength;f = 0:1 / slen: 1 - 1 / slen;图绘制(f, psif”) xlim(1/2[0])包含(“周期/样本”)ylabel (“级”)标题(“全力过滤器银行”,“与中心频率”)举行在情节(cf, 2 *(大小(psif, 1), 1),“软”)举行从
如果您创建的CWT层不支持你的频率限制,试着增加声音的数量每八度层。金宝app有关更多信息,请参见实际使用连续小波变换时频分析的介绍和连续和离散小波变换。
重置默认值频率限制深陷网络设计师
这个例子展示了如何重置默认值的极限频率改变后的小波cwtLayer在深层网络设计师。
假设您正在编辑一个深度学习网络使用深层网络设计师。网络上有一个cwtLayer使用莫尔斯波,频率限制[0.1,0.3]
。
使用下拉列表来改变小波来埃莫
。不改变频率限制,但是权重的数量变化。
改变频率限制合适的默认值埃莫
小波,先做以下之一:
删除FrequencyLimits
0.1,0.3
。设置FrequencyLimits来
[]
。
然后单击鼠标外FrequencyLimits编辑字段移动焦点。应用程序会自动填充FrequencyLimits使用默认值埃莫
小波。权重的数量也在改变以反映新的限制。
提示:如果你改变频率限制,后来想恢复默认值,遵循相同的步骤。
更多关于
层输出格式
cwtLayer
格式的输出“SCBT”
,一个一维图像序列图像高度对应的规模,或频率。第二维度对应渠道,第三维度对应的批处理,和第四维对应于时间。
你可以养活的输出
cwtLayer
不变的一维卷积层沿频率(当你想要卷“S”
)维度。有关更多信息,请参见convolution1dLayer
(深度学习工具箱)。的输出
cwtLayer
当你想要到一个一维卷积层卷沿时间(“T”
)尺寸,必须放置一个平层后cwtLayer
。有关更多信息,请参见flattenLayer
(深度学习工具箱)。你可以养活的输出
cwtLayer
不变的二维卷积层沿频率(当你想要卷“S”
)和时间(“T”
共同)维度。有关更多信息,请参见convolution2dLayer
(深度学习工具箱)。使用
cwtLayer
递归神经网络的一部分,你必须放置一个平层后cwtLayer
。有关更多信息,请参见lstmLayer
(深度学习工具箱)和gruLayer
(深度学习工具箱)。使用的输出
cwtLayer
与一个完全连接层作为一个分类工作流的一部分,你必须减少时间(“T”
)输出的尺寸,尺寸1。减少输出的时间维度,将全球池层之前完全连接层。有关更多信息,请参见globalAveragePooling2dLayer
(深度学习工具箱)和fullyConnectedLayer
(深度学习工具箱)。
版本历史
介绍了R2022b
另请参阅
应用程序
- 深层网络设计师(深度学习工具箱)
功能
对象
cwtfilterbank
|modwtLayer
|stftLayer
(信号处理工具箱)|dlarray
(深度学习工具箱)|dlnetwork
(深度学习工具箱)
主题
- 实际使用连续小波变换时频分析的介绍
- 时频卷积网络脑电图数据分类
- 时频特性嵌入深度度量学习
- 深度学习在MATLAB(深度学习工具箱)
- 深度学习层的列表(深度学习工具箱)
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。