我正在计划建立一个软件,可以使用人工神经网络将一段音乐分类为好坏。为此,我需要将音频转换为一些数值,以便作为输入提供给NN。因此,为了训练NN,我首先下载了billboard Hot100歌曲(我认为它们应该被归类为好音乐),还下载了一些糟糕的噪音音频文件(它们将被归类为糟糕的音乐)。然后,我将它们转换为.wav格式,然后将每个文件拆分为多个.wav文件,每个文件的长度为2秒。我计划使用快速傅立叶变换将这些音频剪辑转换为频率-振幅对,但问题是,即使我们使用2秒的剪辑,它的FFT也会生成大约100,000个这样的对的数组。对数以千计的音频文件这样做会产生具有太多特征的太大的数据集。
我想知道,有没有办法缩短这个数据集,同时保留“音乐的本质”,以便做出更好的预测?或者我应该使用一些其他的算法/过程?
发布于 2018-02-27 22:45:55
首先,你可以像这样使用extract the various audio features:
1)紧凑性。
2)震级谱。
3) Mel倒谱系数。
4)音高。
5)功率谱。
6) RMS。
7)节奏。
8)频谱质心。
9)光谱通量。
10)谱RollOff点。
11)光谱可变性。
12)零交叉。
生成功能集后,您有两个选项:
A)通过采用均值和/或方差来聚合歌曲的特定特征,将歌曲的所有特征连接起来,然后馈送到人工神经网络并执行分类任务。
B)使用Recurrent Neural Network执行分类任务。
https://stackoverflow.com/questions/49008320
复制相似问题