用VGG网计算Cifuning Cifar数据

时间:2016-03-21 03:03:39

标签: computer-vision caffe vgg-net

原始VGG网络接受大小为256x256x3的输入。为了训练Cifar-10数据,我需要将数据大小调整为256x256x3吗?或者还有其他方法吗?

我正在尝试使用Cifar-10数据微调VGG网络,其大小为32x32x3。

2 个答案:

答案 0 :(得分:0)

为了在VGG上训练Cifar-10数据,您必须提供大小为256x256x3的输入数据。各种输入图层都有变换参数来处理这个图像大小调整。

但是将32x32图像升级到256x256并不是一个好方法,因为图像数据的主要部分是通过可用32x32图像数据的近似值创建的。所以我不建议这样做。但如果只是为了尝试演示VGG微调,你可以通过设置变换参数来实现。

答案 1 :(得分:0)

您应该将缩小版VGG用于较小的图像,因为VGG-16对于小图像而言过于复杂。

我认为这个模型可以更好地解决您的问题,并且使用gpu进行训练并不困难:

model = Sequential()

model.add(Conv2D(32, (3, 3), padding='same',
                 input_shape=x_train.shape[1:]))
model.add(Activation('relu'))
model.add(Conv2D(32, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))

model.add(Conv2D(64, (3, 3), padding='same'))
model.add(Activation('relu'))
model.add(Conv2D(64, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))

model.add(Flatten())
model.add(Dense(512))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes))
model.add(Activation('softmax'))