Je voulais simplement clarifier quelques informations sur un post précédent qui traite de la façon dont un modèle pré-entraîné Keras comme VGG ou InceptionV3 peut être étendu à des images de tailles différentes. Mon problème est que j'ai des images satellites qui viennent en 8 bandes. Ainsi, une image pourrait être 650x650x8
au lieu des images habituelles à 3 bandes RGB. Je voulais savoir si je pouvais utiliser un modèle pré-entraîné Keras sur des images avec 8 bandes au lieu de 3 bandes.
Il y a un post original qui traite quelque chose de similaire à cela. Le post de référence concernait l'application d'un modèle pré-entraîné Keras VGG sur une image de taille différente. Ainsi, VGG a été entraîné sur 224x224x3
et l'utilisateur voulait utiliser ce modèle sur une image de 160x320x3
.
Voici le post original : Changer la forme du tenseur d'entrée pour l'application VGG16
Voici le code du post original :
from keras.models import Model
from keras.layers import Dense,Flatten
from keras.applications import vgg16
from keras import backend as K
model = vgg16.VGG16(weights='imagenet', include_top=False, input_shape=(160,320,3))
model.summary(line_length=150)
flatten = Flatten()
new_layer2 = Dense(10, activation='softmax', name='my_dense_2')
inp2 = model.input
out2 = new_layer2(flatten(model.output))
model2 = Model(inp2, out2)
model2.summary(line_length=150)
Donc si je devais substituer la 6ème ligne par quelque chose comme :
model = vgg16.VGG16(weights='imagenet', include_top=False, input_shape=(650,650,8))
Est-ce que ça fonctionnerait, ou est-ce que le modèle pré-entraîné n'accepterait pas une augmentation du nombre de canaux comme il accepterait un changement de hauteur ou de largeur de l'image ?
De plus, je devrais effectuer une formation supplémentaire sur le modèle avec les canaux supplémentaires. Mais je ne suis pas clair sur la manière dont le modèle pré-entraîné implémente cette extension. Est-ce que les poids pour les nœuds ajoutés sont simplement définis à 0 ou à des poids initialisés quelconques ? J'essaie de mesurer combien de formation supplémentaire je devrais faire.
Merci pour tout conseil ou suggestion.