如何将 dropout 技术添加到 keras Retinanet?
How Can I Add drop out technique to the keras Retina net?
我正在使用 RetinaNet NN 模型进行对象检测,但遇到过拟合问题。
解决方案之一是添加 "Dropout"。
我正在使用 keras 代码 Here
我想在最后一层添加Dropout,但我不知道如何添加。
谁能帮助我更改哪个文件?如何更改?
您可以尝试将全连接层存储到变量中,例如:
fc1 = model.layers[-3]
fc2 = model.layers[-2]
predictions = model.layers[-1]
然后创建你的 dropout 层并重新连接它们以构建一个新模型,如图所示post:
希望对您有所帮助。
一段时间后,我尝试了很多解决方案,但没有一个没有说具体如何添加,所以我试了一下,然后找到了如何添加,所以决定自己回答!
只需要添加这样一行:
outputs = keras.layers.SpatialDropout1D (rate=dropout_rate) (outputs)
您可以使用其他层丢失类型,例如:
SpatialDropout2D
等等。
我正在使用 RetinaNet NN 模型进行对象检测,但遇到过拟合问题。 解决方案之一是添加 "Dropout"。 我正在使用 keras 代码 Here
我想在最后一层添加Dropout,但我不知道如何添加。
谁能帮助我更改哪个文件?如何更改?
您可以尝试将全连接层存储到变量中,例如:
fc1 = model.layers[-3]
fc2 = model.layers[-2]
predictions = model.layers[-1]
然后创建你的 dropout 层并重新连接它们以构建一个新模型,如图所示post:
希望对您有所帮助。
一段时间后,我尝试了很多解决方案,但没有一个没有说具体如何添加,所以我试了一下,然后找到了如何添加,所以决定自己回答!
只需要添加这样一行:
outputs = keras.layers.SpatialDropout1D (rate=dropout_rate) (outputs)
您可以使用其他层丢失类型,例如:
SpatialDropout2D
等等。