发新帖

tensorflow 如何将训练好地模型迁移到其它模型

[复制链接]
95 3

快来加入 TensorFlowers 大家庭!

您需要 登录 才可以下载或查看,没有帐号?加入社区

x
tensorflow 如何将训练好地模型迁移到其它模型?

例如,训练好了一个网络。需要在新的数据集上进行调整(更改部分层结构同时添加了新层,未更改的层参数固定不变),更改的和新添加的层进行重新训练,具体如何操作?

求一个实例代码地讲解。
我知道答案 回答被采纳将会获得10 金币 + 5 金币 已有3人回答
本楼点评(0) 收起

精彩评论3

Antonio  TF荚荚  发表于 2018-11-30 11:48:04 | 显示全部楼层
训练好了一个网络你不是保存了一个模型吗?然后设计好了新网络你在把这个老模型的参数加载到新网络上就可以了,这里注意一下,模型加载是按照每一层的名字进行加载的,那你你新网络想加载旧参数的层的名字就得和旧网络一样,一个for循环加载好了你想要的层的参数之后就可以训练其他层上的参数了,看你是从0开始训练呢还是随机初始化参数随便你
本楼点评(0) 收起
adam_zz01  TF荚荚  发表于 2018-11-30 15:29:58 | 显示全部楼层
Antonio 发表于 2018-11-30 11:48
训练好了一个网络你不是保存了一个模型吗?然后设计好了新网络你在把这个老模型的参数加载到新网络上就可以 ...

谢谢回答!
追问:前网络训练好的模型载入后。在新模型中,原先模型(各个层结构)是否还需要再定义一遍?还是只需要重新定义更改的层?
能够给出具体一点的代码链接。再次感谢!


本楼点评(1) 收起
  • Antonio需要重新写网络结构的你先写好网络,然后再load_model,加载模型的时候他会按照网络结构的名字加载参数,没有定义的层则不加载对应的参数,并且log中会给你提示warning,参考页面https://www.tensorflow.org/api_docs/python/tf/keras/models/load_model
    2018-12-5 18:17 回复
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

快速回复 返回顶部 返回列表