部分 keras 培训 可培训

问题描述

我的代码有问题。我希望能得到一些帮助。我想做混合学习;在我的情况下,就是进行分段和回归的顺序学习。但是现在,我的回归部分有问题(它没有训练)。 现在的想法是按部分进行训练,但我不知道该怎么做。 谢谢你帮助我。

def load_model(segmentation_model,regression_model,width,height,num_classes = 1):

    # Rename segmentation model layers and weights
    for layer in segmentation_model.layers:
        rename(segmentation_model,layer,layer.name + '_seg')
    #for i,w in enumerate(segmentation_model.weights):
    #    split_name = w.name.split('/')
    #    new_name = split_name[0] + '_seg' + '/' + split_name[1]
    #    segmentation_model.weights[i]._handle_name = new_name

    # Rename regression model layers
    for layer in regression_model.layers:
        rename(regression_model,layer.name + '_reg')
    #for i,w in enumerate(regression_model.weights):
    #    split_name = w.name.split('/')
    #    new_name = split_name[0] + '_reg' + '/' + split_name[1]
    #    regression_model.weights[i]._handle_name = new_name

    image = layers.Input(shape=(width,3),name="img")
    
    mask_image = segmentation_model(image)

    if num_classes==1:
        mask_image_categorical = K.cast(K.squeeze(mask_image,axis=3) + 0.5,dtype='int32') # Threshold at 0.5
    else:
        mask_image_categorical = K.argmax(mask_image,axis=3)

    masked_layer = mylayers.CustomMasking(mask_value=0)
    masked_image = masked_layer.call([image,mask_image_categorical])

    value = regression_model(masked_image)

    m = models.Model(inputs=image,outputs=[mask_image,value])
    #m = models.Model(inputs=image,value,mask_image_categorical,masked_image])

    #for i,w in enumerate(m.weights): print(i,w.name)

    m.summary()
    
    return m

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)