【问题标题】:How to classify continuous audio如何对连续音频进行分类
【发布时间】:2017-04-24 03:34:38
【问题描述】:

我有一个音频数据集,每个数据集都有不同的长度。这些音频中有一些事件,我想训练和测试,但这些事件是随机放置的,加上长度不同,使用该数据集构建机器学习系统真的很困难。我想修复一个默认的长度大小并构建一个多层神经网络但是,事件的长度也不同。然后我想到了使用 CNN,就像它用于识别图像上的模式或多个人一样。那个问题是当我试图理解音频文件时我真的很挣扎。

所以,我的问题是,有没有人可以给我一些关于构建机器学习系统的提示,该系统通过在随机包含这些事件的数据集上训练自己对不同类型的定义事件进行分类(1 个数据包含超过 1 个事件和它们彼此不同。)并且它们每个都有不同的长度?

如果有人提供帮助,我将不胜感激。

【问题讨论】:

  • 可能用于交叉验证或信号处理通道?
  • 你能再扩展一点吗?
  • 这个问题不适合这个频道。我们处理编程错误和方法。问的太模糊了

标签: python machine-learning classification conv-neural-network recurrent-neural-network


【解决方案1】:

首先,您需要在声音流中注释您的事件,即为它们指定边界和标签。

然后,使用信号帧将您的声音转换为特征向量序列。典型的选择是 MFCC 或 log-mel filtebank 特征(后者对应于声音的频谱图)。完成此操作后,您将把声音转换为可输入分类器的固定大小特征向量序列。见this。为了更好的解释。

由于典型声音的持续时间比分析帧长,您可能需要使用滑动窗口堆叠几个连续的特征向量,并将这些堆叠的帧用作 NN 的输入。

现在您有了 a) 输入数据和 b) 每个分析窗口的注释。因此,您可以尝试训练 DNN 或 CNN 或 RNN 来预测每个窗口的声音类别。此任务称为定位。我建议您阅读 Sainath, T. N. 和 Parada, C. (2015)。用于小尺寸关键字发现的卷积神经网络。 In Proceedings INTERSPEECH (pp. 1478–1482) 并按照其参考资料了解更多详细信息。

【讨论】:

  • 你有没有用于采样和开窗的 python sn-ps .wav 文件。数据集的音频文件是单声道的,数据是具有帧数长度的向量,包括双数。我可以对单波进行光谱分析吗?
  • 如果你想用python写代码,使用librosa。它带有许多示例。但是请考虑到您无论如何都需要一些信号处理的基本知识。学习傅里叶变换、窗口函数、频谱。
  • 您不需要固定音频的大小。特征提取后,您的一维信号将被转换为特征向量的二维矩阵,其中第一维将具有固定大小(# of feats),第二维将对应于输入声音的长度。关于 LSTM——我将从使用前馈网络的基于窗口的分类开始。您将获得一段时间内的概率分布,您可以轻松地对其进行后处理并找到检测到特定声音的位置。
  • 神经网络通常会在类上产生某种概率分布(使用 softmax 层)。将其应用于每一帧后,您将获得声音类别随时间的概率分布。两类示例见本文(使用 MFCC+SVM):mazsola.iit.uni-miskolc.hu/~czap/letoltes/IS14/IS2014/PDF/…
  • 471 MB 不算什么。但是您甚至不需要将所有内容打包到一个数组中。神经网络在按顺序读取的批量数据上进行训练。如果你做的一切都正确,你的 GPU 就绰绰有余了。
【解决方案2】:

您可以使用循环神经网络 (RNN)。

https://www.tensorflow.org/versions/r0.12/tutorials/recurrent/index.html

输入数据是一个序列,您可以在时间序列的每个样本中放置一个标签。

例如,TensorFlow 等库中提供了 LSTM(一种 RNN)。

【讨论】:

  • 我对 rnn 和 lstm 做了一些研究,看来我可以使用它。但是,我能否构建一个可以接受不同形状的输入数据的 rnn?对不起,我问是因为我是机器学习的新手。
  • 在 RNN 中,您使用时间序列,例如音频信号,每个音频信号可以有不同的大小,每个音频信号在每个时间单位都有不同的标签。 RNN 迭代所有音频信号,每个时间单元产生不同的输出。
  • 是的,您将每个信号分成小帧,然后在每个帧中提取特征(或直接使用时间信号)。每个框架都有一个标签。 RNN 根据当前帧和先前帧对每一帧进行迭代和分类。
猜你喜欢
  • 2012-05-16
  • 2017-07-08
  • 1970-01-01
  • 1970-01-01
  • 2012-04-07
  • 1970-01-01
  • 1970-01-01
  • 2017-12-26
  • 2011-10-21
相关资源
最近更新 更多