将 mp3 文件格式化为 CNN 机器学习的频谱图
Formatting mp3 files to spectrograms for CNN machine learning
我从使用 MNIST 数据集中获得了很多乐趣并且学到了很多东西,但我想扩展到使用我自己的训练数据,我正在使用 theano 和 keras。但是,我在概念化如何创建训练数据时遇到了非常困难的时间。
我查看了 MNIST 的结构,发现作为数据,它的第一部分是图像的分类,其余部分是从 0 到 100 的单个像素亮度。
我的第一个想法是使用像 this or this 这样的光谱图,但我不明白的是如何构建数据以便 CNN 可以读取它。有什么想法或建议吗?
我可能无法准确回答这个问题。
我将尝试解释 MNIST 数据集的格式,我将采用以下示例。
考虑到您希望 class在训练数据中使用四个不同的 class 标签对图像进行 class 化 -> car, bike 、公共汽车 和飞机。
所有图像都是彩色图像,每个 RGB 具有 255 个像素值。我排除了亮度/不透明度值作为此示例的属性。所有图像都已标准化,尺寸为 28x28(只是任意尺寸)。这给了我们 784 个像素,因为每个像素都有 3 个 RGB 值,所以这给了我们 784x3 = 2352 个属性值。
每个实例(在 MNIST 数据集中)的输出表示为一个热向量表示。汽车、自行车、公共汽车和飞机的 1 个热矢量表示分别为 1000、0100、0010 和 0001。
假设MNIST数据集有1000个实例用于训练,那么它将采用以下结构。它将由 1000 个元组组成,其中每个元组都是一个输入向量(2352 个属性长)和一个输出向量(一个热表示,4 个属性长)的组合。
这是为了更加清楚。
([12, 51, 16, 17, ......., 12], [0, 0, 1, 0])
([55, 125, 71, 244, ....., 10], [1, 0, 0, 0])
......
其中元组中第一个列表的长度为2352,元组中第二个列表的长度为4。总共有 1000 个元组,每个元组代表一个训练实例。
如果你愿意,你可以看看这个code,其中我创建了一个类似于 MNIST 格式的数据集。
我从使用 MNIST 数据集中获得了很多乐趣并且学到了很多东西,但我想扩展到使用我自己的训练数据,我正在使用 theano 和 keras。但是,我在概念化如何创建训练数据时遇到了非常困难的时间。
我查看了 MNIST 的结构,发现作为数据,它的第一部分是图像的分类,其余部分是从 0 到 100 的单个像素亮度。
我的第一个想法是使用像 this or this 这样的光谱图,但我不明白的是如何构建数据以便 CNN 可以读取它。有什么想法或建议吗?
我可能无法准确回答这个问题。
我将尝试解释 MNIST 数据集的格式,我将采用以下示例。
考虑到您希望 class在训练数据中使用四个不同的 class 标签对图像进行 class 化 -> car, bike 、公共汽车 和飞机。 所有图像都是彩色图像,每个 RGB 具有 255 个像素值。我排除了亮度/不透明度值作为此示例的属性。所有图像都已标准化,尺寸为 28x28(只是任意尺寸)。这给了我们 784 个像素,因为每个像素都有 3 个 RGB 值,所以这给了我们 784x3 = 2352 个属性值。
每个实例(在 MNIST 数据集中)的输出表示为一个热向量表示。汽车、自行车、公共汽车和飞机的 1 个热矢量表示分别为 1000、0100、0010 和 0001。
假设MNIST数据集有1000个实例用于训练,那么它将采用以下结构。它将由 1000 个元组组成,其中每个元组都是一个输入向量(2352 个属性长)和一个输出向量(一个热表示,4 个属性长)的组合。
这是为了更加清楚。
([12, 51, 16, 17, ......., 12], [0, 0, 1, 0])
([55, 125, 71, 244, ....., 10], [1, 0, 0, 0])
......
其中元组中第一个列表的长度为2352,元组中第二个列表的长度为4。总共有 1000 个元组,每个元组代表一个训练实例。
如果你愿意,你可以看看这个code,其中我创建了一个类似于 MNIST 格式的数据集。