如何自定义权重
收藏
我在一个batch的时候,得到一个loss,以及模型A,现在用loss计算出新的模型A参数暂时不更新,把新参数放进模型B,然后再计算loss,当然后续还有操作,然后得到一个新的loss,然后用这个loss再去更新模型A,我现在不知道paddle如何实现上面的这个中间参数如何取和放,可以参考哪些API来实现,或者案例
0
收藏
请登录后评论
可以看看飞桨的API 模型保存与加载:https://www.paddlepaddle.org.cn/documentation/docs/zh/api_guides/low_level/model_save_reader.html
谢谢,可能我没说清楚,是再一个epoch里面完成上述操作,这个API好像是模型的持久化,跟我的问题还是有些区别
模型A与模型B基本一致,只是有一层参数有区别
是模型A与模型B 是串联在一起训练吗? 看看这个能否帮到你:https://www.paddlepaddle.org.cn/documentation/docs/zh/api_guides/low_level/program.html#name
你是要做什么任务呢?
好的,谢谢,我试试
文本分类
你的意思是指网络中权值共享这一机制吗?比如前几层用网络a训练,中间用网络b训练,后面用网络c训练。
可以这么理解
你可以把最后的所有层用concat连接一下就好,如果是按照通道连接的话axis=1即可
layer1 = fluid.layers.conv2d()
layer2 = fluid.layers.conv2d()
out = fluid.layers.concat([layer1, layer2], axis=1)
API文档:https://www.paddlepaddle.org.cn/documentation/docs/zh/api_cn/layers_cn/concat_cn.html#concat
虽然自己没遇到这个问题,但是看看大佬的 以备不时之需。说不定哪天就遇到了
收藏学习。
按照第十行算梯度的时候,梯度为空数组