Я пытаюсь обучить модель resnet50 для задачи классификации изображений. Я загрузил предварительно подготовленные веса 'imagenet' перед тем, как тренировать модель на моем наборе данных. Я хочу вставить слой (средний слой вычитания) между входным слоем и первым слоем свертки.
model = ResNet50(weights='imagenet')
def mean_subtract(img):
img = T.set_subtensor(img[:,0,:,:],img[:,0,:,:] - 123.68)
img = T.set_subtensor(img[:,1,:,:],img[:,1,:,:] - 116.779)
img = T.set_subtensor(img[:,2,:,:],img[:,2,:,:] - 103.939)
return img / 255.0
Я хочу вставить inputs = Lambda(mean_subtract, name='mean_subtraction')(inputs)
рядом с входным слоем и подключить его к первому слою свертки модели повторной сети без потери сохраненных весов.
Как мне это сделать?
Спасибо!