如果我将输入大小设置为32,32 mnist会发生什么

时间:2019-04-20 09:26:43

标签: image-processing machine-learning keras mnist vgg-net

我想在VGG16上训练MNIST。

MNIST图像大小为28 * 28,我在keras VGG16中将输入大小设置为32 * 32。当我训练时,我得到了很好的指标,但是我不确定会发生什么。角膜填充空白空间还是像缩放功能一样线性扩展图像?有人知道60个纪元后我如何能获得+ 95%的测试准确性吗?

在此我定义目标尺寸:

    target_size = (32, 32)

这是我定义flow_from_dataframe生成器的地方:

train_df = pd.read_csv("cv1_train.csv", quoting=3)

train_df_generator = train_image_datagen.flow_from_dataframe(
    dataframe=train_df,
    directory="../../../MNIST",
    target_size=target_size,
    class_mode='categorical',
    batch_size=batch_size,
    shuffle=False,
    color_mode="rgb",
    classes=["zero","one","two","three","four","five","six","seven","eight","nine"]
) 

在这里定义我的输入大小:

model_base = VGG16(weights=None, include_top=False, 
             input_shape=(32, 32, 3), classes=10)

1 个答案:

答案 0 :(得分:0)

只需将图像调整为指定的target_size即可。 documentation中已明确指出:

  

target_size:整数(height, width)的元组,默认值:(256, 256)。找到的所有图像的尺寸将被调整为大小。

您还可以检查源代码并在load_img函数中找到相关部分。同样,用于调整图像大小的默认插值方法是nearest。您可以找到有关各种插值方法here(MATLAB)或here(PIL)的更多信息。