主要内容GydF4y2Ba

stftLayerGydF4y2Ba

短时傅里叶变换层GydF4y2Ba

描述GydF4y2Ba

短时傅立叶变换层计算输入的短时傅立叶变换。GydF4y2Ba使用此层需要深入的学习工具箱™.GydF4y2Ba

创建GydF4y2Ba

描述GydF4y2Ba

实例GydF4y2Ba

层GydF4y2Ba=stftLayerGydF4y2Ba创建一个GydF4y2Ba短时傅里叶变换GydF4y2Ba(STFT)层。的输入GydF4y2BastftLayerGydF4y2Ba一定是个GydF4y2BadlarrayGydF4y2Ba(深度学习工具箱)GydF4y2Ba对象GydF4y2Ba“认知行为治疗”GydF4y2Ba格式,其大小沿时间维度大于长度GydF4y2Ba窗口GydF4y2Ba.GydF4y2Ba

实例GydF4y2Ba

层GydF4y2Ba= stftLayer (GydF4y2Ba名称=值GydF4y2Ba)GydF4y2Ba使用名称-值参数指定可选参数。您可以指定分析窗口和输出格式等。GydF4y2Ba

属性GydF4y2Ba

全部展开GydF4y2Ba

STFTGydF4y2Ba

此属性是只读的。GydF4y2Ba

用于计算STFT的分析窗口,指定为包含两个或多个元素的向量。GydF4y2Ba

例子:GydF4y2Ba(1-cos(2*pi*(0:127)’/127))/2GydF4y2Ba和GydF4y2Ba汉恩GydF4y2Ba(128)GydF4y2Ba两者都指定长度为128的Hann窗口。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

此属性是只读的。GydF4y2Ba

重叠样本的数目,指定为严格小于的长度的正整数GydF4y2Ba窗口GydF4y2Ba.GydF4y2Ba

连续窗口间的跨距是窗口长度与重叠样本个数的差值。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

此属性是只读的。GydF4y2Ba

用于计算离散傅里叶变换的频点数,指定为大于或等于窗口长度的正整数。如果未指定,此参数默认为窗口长度。GydF4y2Ba

如果输入数据在时间维度上的长度小于DFT点的个数,GydF4y2BastftLayerGydF4y2Ba向右填充数据和窗口的零,使它们的长度等于GydF4y2BaFFTLengthGydF4y2Ba.GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

图层变换模式,指定为以下模式之一:GydF4y2Ba

  • “杂志”GydF4y2Ba-STFT震级GydF4y2Ba

  • “squaremag”GydF4y2Ba- STFT平方幅度GydF4y2Ba

  • “logmag”GydF4y2Ba- STFT量级的自然对数GydF4y2Ba

  • “logsquaremag”GydF4y2Ba-STFT平方震级的自然对数GydF4y2Ba

  • “realimag”GydF4y2Ba- STFT的实部和虚部,沿通道尺寸连接GydF4y2Ba

数据类型:GydF4y2Ba字符GydF4y2Ba|GydF4y2Ba字符串GydF4y2Ba

图层输出模式,指定为以下模式之一:GydF4y2Ba

  • “时空的”GydF4y2Ba-将输出格式化为一维图像序列,其中图像高度对应于频率,第二维对应于通道,第三维对应于批次,第四维对应于时间。GydF4y2Ba

    可以使用此输出模式提供的输出GydF4y2BastftLayerGydF4y2Ba到一维卷积层,当你想沿着频率卷积时。有关更多信息,请参见GydF4y2Baconvolution1dLayerGydF4y2Ba(深度学习工具箱)GydF4y2Ba.GydF4y2Ba

  • “空间”GydF4y2Ba-将输出格式为一个二维图像序列,其中图像高度对应频率,图像宽度对应时间。第三维度和第四个维度分别对应通道和批处理。GydF4y2Ba

    可以使用此输出模式提供的输出GydF4y2BastftLayerGydF4y2Ba当你想沿着二维空间进行卷积时。有关更多信息,请参见GydF4y2Baconvolution2dLayerGydF4y2Ba(深度学习工具箱)GydF4y2Ba.GydF4y2Ba

  • “时间”GydF4y2Ba—将输出格式化为一维序列。此格式采用GydF4y2Ba“时空的”GydF4y2Ba输出格式和平面化图像高度成通道尺寸。STFT输出的第2维对应批处理,第3维对应时间。GydF4y2Ba

    可以使用此输出模式提供的输出GydF4y2BastftLayerGydF4y2Ba当你想随时间卷积时,将其转换为一维卷积层。有关详细信息,请参阅GydF4y2Baconvolution1dLayerGydF4y2Ba(深度学习工具箱)GydF4y2Ba。您也可以使用此输出模式使用GydF4y2BastftLayerGydF4y2Ba作为递归神经网络的一部分。有关详细信息,请参阅GydF4y2BalstmLayerGydF4y2Ba(深度学习工具箱)GydF4y2Ba和GydF4y2Ba泥鳅GydF4y2Ba(深度学习工具箱)GydF4y2Ba.GydF4y2Ba

数据类型:GydF4y2Ba字符GydF4y2Ba|GydF4y2Ba字符串GydF4y2Ba

层GydF4y2Ba

权重学习率的乘数,指定为非负标量。如果未指定,此属性默认为零,导致权重不会随训练而更新。您也可以使用GydF4y2BasetLearnRateFactorGydF4y2Ba(深度学习工具箱)GydF4y2Ba作用GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

层名,指定为字符向量或字符串标量。为GydF4y2Ba层GydF4y2Ba数组输入,GydF4y2Ba列车网络GydF4y2Ba,GydF4y2BaassembleNetworkGydF4y2Ba,GydF4y2BalayerGraphGydF4y2Ba,GydF4y2BadlnetworkGydF4y2Ba函数自动为层分配名称GydF4y2Ba的名字GydF4y2Ba着手GydF4y2Ba''GydF4y2Ba.GydF4y2Ba

数据类型:GydF4y2Ba字符GydF4y2Ba|GydF4y2Ba字符串GydF4y2Ba

此属性是只读的。GydF4y2Ba

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

数据类型:GydF4y2Ba双GydF4y2Ba

此属性是只读的。GydF4y2Ba

输入层的名称。此层仅接受单个输入。GydF4y2Ba

数据类型:GydF4y2Ba单间牢房GydF4y2Ba

此属性是只读的。GydF4y2Ba

层的输出数。此层只有一个输出。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba

此属性是只读的。GydF4y2Ba

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

数据类型:GydF4y2Ba单间牢房GydF4y2Ba

例子GydF4y2Ba

全部崩溃GydF4y2Ba

产生以600 Hz采样2秒的信号。该信号由一个频率为正弦变化的啁啾信号组成。将信号存储在深度学习数组中GydF4y2Ba“施”GydF4y2Ba总体安排GydF4y2Ba

fs=6e2;x=vco(sin(2*pi*(0:1/fs:2)),[0.10.4]*fs,fs);dlx=dlx阵列(x,GydF4y2Ba“施”GydF4y2Ba);GydF4y2Ba

创建一个带有默认属性的短时间傅里叶变换层。创建一个GydF4y2BadlnetworkGydF4y2Ba对象,该对象由序列输入层和短时傅里叶变换层组成。指定最小序列长度为128个样本。把信号通过GydF4y2Ba预测GydF4y2Ba网络的方法。GydF4y2Ba

ftl=stftLayer;dlnet=dlnetwork([sequenceInputLayer(1,MinLength=128)ftl]);netout=predict(dlnet,dlx);GydF4y2Ba

将网络输出转换为数字数组。使用GydF4y2Ba挤压GydF4y2Ba函数删除长度为1的通道和批次维度。绘制STFT的大小。阵列的第一个维度对应于频率,第二个维度对应于时间。GydF4y2Ba

q = extractdata (netout);瀑布(挤压(q)的)设置(gca XDir =GydF4y2Ba“反向”GydF4y2Ba、查看= 45[30])包含(GydF4y2Ba“频率”GydF4y2Ba) ylabel (GydF4y2Ba“时间”GydF4y2Ba)GydF4y2Ba

图中包含一个轴对象。轴对象包含面片类型的对象。GydF4y2Ba

生成一个3 × 160 (× 1)阵列,包含一批三通道,160样本正弦信号。正弦波频率为GydF4y2BaπGydF4y2Ba/4拉德/样品,GydF4y2BaπGydF4y2Ba/2 rad/样品,和3GydF4y2BaπGydF4y2Ba/ 4 rad /样品。将信号保存为aGydF4y2BadlarrayGydF4y2Ba,按顺序指定尺寸。GydF4y2BadlarrayGydF4y2Ba将数组的维数置换为GydF4y2Ba“认知行为治疗”GydF4y2Ba深度学习网络所期望的形状。GydF4y2Ba

nch = 3;N = 160;x = dlarray (cos(π。* (1:nch) / 4 * (0: n - 1)),GydF4y2Ba“施”GydF4y2Ba);GydF4y2Ba

创建一个短时间傅里叶变换层,可以使用正弦波。指定64个样本矩形窗口,48个相邻窗口的重叠样本,1024个DFT点。指定层输出模式为GydF4y2Ba“空间”GydF4y2Ba.默认情况下,该层输出STFT的大小。GydF4y2Ba

stfl=stftLayer(窗口=rectwin(64),GydF4y2Ba...GydF4y2BaOverlapLength = 48岁GydF4y2Ba...GydF4y2BaFFTLength = 1024,GydF4y2Ba...GydF4y2BaOutputMode =GydF4y2Ba“空间”GydF4y2Ba);GydF4y2Ba

创建一个两层结构GydF4y2BadlnetworkGydF4y2Ba对象,包含序列输入层和刚才创建的STFT层。将正弦信号的每个通道作为一个特征。指定信号长度为输入层的最小序列长度。GydF4y2Ba

层=[sequenceInputLayer(nch,MinLength=N)stfl];dlnet=dlnetwork(层);GydF4y2Ba

将正弦曲线穿过管道GydF4y2Ba向前地GydF4y2Ba网络的方法。GydF4y2Ba

数据输出=正向(dlnet,x);GydF4y2Ba

将网络输出转换为数字数组。使用GydF4y2Ba挤压GydF4y2Ba函数可折叠大小为1的批次维度。在瀑布图中分别绘制每个通道的STFT幅值。GydF4y2Ba

q=压缩(提取数据(数据输出));GydF4y2Ba对于GydF4y2BaKj = 1:nch subplot(nch,1, Kj) waterfall(q(:,:, Kj)') view(30,45) zlabel(GydF4y2Ba“Ch。”GydF4y2Ba+字符串(kj))GydF4y2Ba终止GydF4y2Ba

图中包含3个轴对象。轴对象1包含面片类型的对象。轴对象2包含面片类型的对象。轴对象3包含面片类型的对象。GydF4y2Ba

更多关于GydF4y2Ba

全部展开GydF4y2Ba

另见GydF4y2Ba

应用程序GydF4y2Ba

物体GydF4y2Ba

功能GydF4y2Ba

话题GydF4y2Ba

在R2021b中引入GydF4y2Ba