提交 ea70f28a 编写于 作者: W wizardforcel

2020-08-27 23:02:45

上级 8cc14d22
......@@ -168,7 +168,7 @@ plt.tight_layout()
![](img/a40c9f46-fc4a-4011-81c8-82581345bdbc.png)
您可以在上图中清楚地看到不同的音频数据样本及其源标签和相应的音频波形图。 这描绘了一些有趣的见解。 **engine_idling****手提凿岩机****air_conditioner** 等音源通常具有恒定的声音,不会随时间变化。 因此,您可以注意到波形中的振幅恒定。 **警笛****car_horn** 通常也具有恒定的音频波形,并具有间歇性的幅度增加。 **gun_shot** 通常在开始时会发出很大的声音,然后保持沉默。 **dog_bark** 间歇地进入。 因此,除了静音以外,声音还具有短的高振幅间隔。 您还能找到更多有趣的模式吗?
您可以在上图中清楚地看到不同的音频数据样本及其源标签和相应的音频波形图。 这描绘了一些有趣的见解。 `engine_idling``jackhammer``air_conditioner`等音源通常具有恒定的声音,不会随时间变化。 因此,您可以注意到波形中的振幅恒定。 `siren``car_horn`通常也具有恒定的音频波形,并具有间歇性的幅度增加。`gun_shot`通常在开始时会发出很大的声音,然后保持沉默。 `dog_bark`间歇地进入。 因此,除了静音以外,声音还具有短的高振幅间隔。 您还能找到更多有趣的模式吗?
音频数据的另一种有趣的可视化技术是声谱图。 通常,声谱图是一种视觉表示技术,用于表示音频数据中的频谱。 它们也被普遍称为**超声检查仪****语音图**。 让我们将音频样本可视化为频谱图:
......@@ -188,7 +188,7 @@ plt.tight_layout()
![](img/c309828b-41bc-450c-a72a-af65ae9e4d49.png)
我们可以看到如何用频谱图将音频数据表示为很好的图像表示形式,这对于像**卷积神经网络****CNN**)这样的模型很有用,因为 可以肯定地看到不同音频源在声谱图中存在明显差异。 但是,我们将使用梅尔谱图,它通常比基本谱图更好,因为它代表了梅尔标度的谱图。 名称 **mel** 来自单词 *melody* 。 这表明比例尺基于音高比较。 因此,梅尔音阶是对音高的感知尺度,听众已将其判断为彼此之间的距离相等。 如果我们使用 CNN 从这些频谱图中提取特征,这将非常有用。 以下代码段描绘了梅尔频谱图:
我们可以看到如何用频谱图将音频数据表示为很好的图像表示形式,这对于像**卷积神经网络****CNN**)这样的模型很有用,因为 可以肯定地看到不同音频源在声谱图中存在明显差异。 但是,我们将使用梅尔谱图,它通常比基本谱图更好,因为它代表了梅尔标度的谱图。 名称 **mel** 来自单词 *melody*。 这表明比例尺基于音高比较。 因此,梅尔音阶是对音高的感知尺度,听众已将其判断为彼此之间的距离相等。 如果我们使用 CNN 从这些频谱图中提取特征,这将非常有用。 以下代码段描绘了梅尔频谱图:
```py
i = 1
......@@ -314,7 +314,7 @@ def windows(data, window_size):
这个想法来自 Karol J. Piczak 的出色论文,[《具有卷积神经网络的环境声音分类》](https://ieeexplore.ieee.org/document/7324337/)(IEEE2015)。他将梅尔频谱图用于一般必要的特征,CNN 可以使用这些特征来进行特征提取。 但是,我们已经考虑了对最终特征图的一些其他转换。
第一步是将帧(列)的总数定义为 **64** ,将波段(行)的总数定义为 **64** ,这形成了每个特征图的尺寸(64 x 64)。 然后,基于此,我们提取音频数据的窗口,从每个音频数据样本中形成子样本。
第一步是将帧(列)的总数定义为 **64** ,将波段(行)的总数定义为 **64**,这形成了每个特征图的尺寸(64 x 64)。 然后,基于此,我们提取音频数据的窗口,从每个音频数据样本中形成子样本。
考虑每个音频子样本,我们首先创建一个梅尔声谱图。 由此,我们创建了一个对数缩放的梅尔频谱图,作为特征图之一,音频子样本的谐波分量和敲击分量的平均特征图(再次对数缩放)以及对数缩放的增量或导数 梅尔频谱图作为第三特征图。 这些特征图的每一个都可以表示为 64 x 64 图像,并且通过组合它们,我们可以为每个音频子样本获得尺寸为(64、64、3)的 3-D 特征图。 现在,为该工作流程定义函数:
......@@ -706,7 +706,7 @@ Epoch 50/50
18300/18300 - 1s - loss: 0.2631 - acc: 0.9197 - val_loss: 0.3887 - val_acc: 0.8890
```
我们获得的验证准确度接近 **89%** ,这非常好,看起来很有希望。 我们还可以绘制模型的整体精度图和损耗图,以更好地了解事物的外观,如下所示:
我们获得的验证准确度接近 **89%**,这非常好,看起来很有希望。 我们还可以绘制模型的整体精度图和损耗图,以更好地了解事物的外观,如下所示:
```py
f, (ax1, ax2) = plt.subplots(1, 2, figsize=(12, 4))
......
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册