【发布时间】:2016-09-03 17:40:08
【问题描述】:
我正在训练一个卷积神经网络,将图像分类为五个类别之一(第 1 类 - 第 5 类)。
我的第 1 类训练图像非常少,因此我通过随机裁剪和翻转图像来创建更多数据来执行一些数据增强。我有至少 3000 张 2 到 5 级的训练图像。现在,我的训练集包含每个班级的 3000 张图像,我使用随机梯度下降对其进行训练。
我的测试集包括:
Class 1 - 8 images
Class 2 - 83 images
Class 3 - 227 images
Class 4 - 401 images
Class 5 - 123 images
我的网络正确预测:
Class 1 - 0 images
Class 2 - 0 images
Class 3 - 0 images
Class 4 - 399 images
Class 5 - 0 images
考虑到我的训练集的局限性,我不希望有一个非常准确的网络,而且 15000 张图像可能还不够 - 但我没想到它会如此偏斜,因为 2 - 5 类有相同的数量不同的训练图像。如果我在更大比例的 4 类图像上训练了我的网络,那么这不会让我感到惊讶。我本来希望网络能够正确预测至少一些其他类。
有什么想法吗?
编辑:
图片类型:建筑物
网络架构:
Input image - 256 x 256 x 3
Convolutional layer - 15 x 15 filters, 16 filters
Max 2x2 pooling layer
Convolutional layer - 11 x 11 filters, 32 filters
Max 2x2 pooling layer
Convolutional layer - 7 x 7 filters, 64 filters
Max 2x2 pooling layer
Fully connected layer - 1024 outputs
Softmax classifier layer - 5 outputs
成本函数:交叉熵
【问题讨论】:
-
有一个特定的数据科学堆栈交换 - 也许你的问题会更好?
-
你应该描述你的卷积网络的架构以及你正在分类的对象。
-
@user3791372 感谢您为我指明方向!
-
@EliKorvigo 我也添加了这些。谢谢!
-
分类偏斜与使用卷积无关。请报告:训练集的确切大小。训练错误(关键部分)。使用的训练方法。附带说明 - 考虑到输入的大小,您的网络看起来非常简单(小)。
标签: machine-learning computer-vision neural-network deep-learning conv-neural-network