gpt4 book ai didi

validation - 如何解决验证准确率波动的问题?

转载 作者:行者123 更新时间:2023-11-30 09:59:26 25 4
gpt4 key购买 nike

我尝试使用 SGD、Adadelta、Adabound、Adam。一切都会让我的验证准确性出现波动。我尝试了 keras 中的所有激活函数,但 val_acc 仍然出现波动。
训练样本:1352
验证样本:339
Validation Accuracy

        # first (and only) CONV => RELU => POOL block
inpt = Input(shape = input_shape)
x = Conv2D(32, (3, 3), padding = "same")(inpt)
x = Activation("swish")(x)
x = BatchNormalization(axis = channel_dim)(x)
x = MaxPooling2D(pool_size = (3, 3))(x)
# x = Dropout(0.25)(x)

# first CONV => RELU => CONV => RELU => POOL block
x = Conv2D(64, (3, 3), padding = "same")(x)
x = Activation("swish")(x)
x = BatchNormalization(axis = channel_dim)(x)
x = Conv2D(64, (3, 3), padding = "same")(x)
x = Activation("swish")(x)
x = BatchNormalization(axis = channel_dim)(x)
x = MaxPooling2D(pool_size = (2, 2))(x)
# x = Dropout(0.25)(x)

# second CONV => RELU => CONV => RELU => POOL Block
x = Conv2D(128, (3, 3), padding = "same")(x)
x = Activation("swish")(x)
x = BatchNormalization(axis = channel_dim)(x)
x = Conv2D(128, (3, 3), padding = "same")(x)
x = Activation("swish")(x)
x = BatchNormalization(axis = channel_dim)(x)
x = MaxPooling2D(pool_size = (2, 2))(x)
# x = Dropout(0.25)(x)

# first (and only) FC layer
x = Flatten()(x) # Change to GlobalMaxPooling2D
x = Dense(256, activation = 'swish')(x)
x = BatchNormalization(axis = channel_dim)(x)
x = Dropout(0.4)(x)

x = Dense(128, activation = 'swish')(x)
x = BatchNormalization()(x)
x = Dropout(0.4)(x)

x = Dense(64, activation = 'swish')(x)
x = BatchNormalization()(x)
x = Dropout(0.3)(x)

x = Dense(32, activation = 'swish')(x)
x = BatchNormalization()(x)

x = Dense(nc, activation = 'softmax')(x)
model = Model(inputs=inpt, outputs = x)

model.compile(loss = 'categorical_crossentropy',optimizer = 'sgd',metrics = ['accuracy'])

最佳答案

您的模型可能对噪声过于敏感,请参阅此 answer

根据链接中的答案以及我从您的模型中看到的内容,您的网络对于您拥有的数据量来说可能太深(大模型和没有足够的数据==>过度拟合==>噪声敏感性)。我建议使用更简单的模型作为健全性检查。

学习率也可能是一个可能的原因(正如 Neb 所说)。您正在使用 sgd 的默认学习率(为 0.01,可能太高)。尝试使用 1.e-3 或更低版本。

关于validation - 如何解决验证准确率波动的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59590327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com