所以我在每个类中包含250个图像的小数据集上进行二进制图像分类,我使用 Resnet50 作为基础网络架构进行传输学习我已经添加了2个隐藏层和一个最终输出层,经过20个时期的训练后,我所看到的是在初始时代突然增加了损失,我无法理解其背后的原因。
网络架构 -
image_input = Input(shape=(224, 224, 3))
model = ResNet50(input_tensor=image_input,include_top=True, weights='imagenet')
last_layer = model.get_layer('avg_pool').output
x = Flatten(name='flatten')(last_layer)
x = Dense(1000, activation='relu', name='fc1000')(x)
x = Dropout(0.5)(x)
x = Dense(200, activation='relu', name='fc200')(x)
x = Dropout(0.5)(x)
out = Dense(num_classes, activation='softmax', name='output')(x)
custom_model = Model(image_input, out)
我正在使用 binary_crossentropy,Adam 使用默认参数
答案 0 :(得分:1)
对于如此小的数据类别,绝对有可能过度拟合会增加您的数据集大小,并在可能的情况下检查它是否使用数据扩充