我从使用 MNIST 数据集中获得了很多乐趣并学到了很多东西,但我想扩展到使用我自己的训练数据,我正在将 theano 与 keras 结合使用。然而,我在概念化如何创建训练数据方面遇到了极其困难的时间。
我查看了 MNIST 的结构,发现作为数据,它的第一部分是图像的分类,其余部分是从 0 - 100 的各个像素亮度。
我的第一个想法是使用频谱图,例如 this或this但我不明白的是如何构建数据以便 CNN 可以读取它。有什么想法或建议吗?
最佳答案
我可能无法准确回答这个问题。
我将尝试解释 MNIST 数据集的格式,我将采用以下示例。
考虑一下,您希望在训练数据中对具有四个不同类别标签的图像进行分类 -> 汽车、自行车、巴士和>飞机。 所有图像都是彩色图像,每个 RGB 都有 255 个像素值。我排除了亮度/不透明度值作为此示例的属性。所有图像均已标准化,尺寸为 28x28(任意尺寸)。这为我们提供了 784 个像素,并且由于每个像素有 3 个 RGB 值,因此这为我们提供了 784x3 = 2352 个属性值。
每个实例(在 MNIST 数据集中)的输出都表示为一个热向量表示。汽车、自行车、公共(public)汽车和飞机的 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 格式的数据集。
关于python - 将 mp3 文件格式化为用于 CNN 机器学习的频谱图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37950354/