我在互聯網上看到過很多關於如何微調VGG16和InceptionV3的例子。例如,有些人在微調VGG16時會將前25層設置爲凍結。對於InceptionV3,前172層將被凍結。但是,如何resnet?當我們做微調的時候,我們會凍結一些底層模型,如下:如何用resnet50模型進行微調?
from keras.applications.resnet50 import ResNet50
base_model = ResNet50(include_top=False, weights="imagenet", input_shape=(input_dim, input_dim, channels))
..............
for layer in base_model.layers[:frozen_layers]:
layer.trainable = False
那麼應該如何設置frozen_layers?實際上我不知道應該用VGG16,VGG19,ResNet50,InceptionV3等進行微調時,我應該設置多少層。任何人都可以給我關於如何微調這些模型的建議嗎?特別是當用這些模型進行微調時,有多少人會凍結?
我也聽說如果我們只訓練我們自己的密集層,這就是所謂的轉移學習。如果我們用小的學習速度在base_model中訓練一些圖層(如resnet,vgg .etc),則稱爲微調。我知道卷積塊有一些特殊的含義,那麼如何凍結基本模型中的圖層以便進行微調? –
我在這個博客上看到這些:[building-powerful-image-classification-models-using-very-little-data](https://blog.keras.io/building-powerful-image-classification-models-using- very-little-data.html) –