deep-learning - 如何只为每个卷积层设置修改后的权重?
问题描述
我目前正在做一些关于修改权重而不是模型每个卷积层的偏差的实验。
对于模型的每一层,我用来layer.get_weights()[0]
获取权重。修改该特定层的权重值后,我想将权重设置回相应的层。
我想set_weights()
为此目的使用该方法,但是,它需要输入权重和偏差,所以我无法实现。将权重值设置回模型层并保持偏差不变的最简单方法是什么?
我只是一个初学者,如果问题不合适,请给我一些建议和想法。
解决方案
layer.get_weights()
returns list of numpy arrays. Element 0 is weights, element 1 - biases. Actually, I don't remember and can't check it right now, can this list contain something else, but it is not important in your situation, I guess.
So you can do something like:
params = layer.get_weights()
weights = params[0]
biases = params[1]
my_weights = <your modifications>
layer.set_weights([my_weights, biases])
推荐阅读
- reactjs - 如何在气泡天才聊天附近添加按钮?
- graphql - 在 swapi graphql 中,如何找到每部电影中每个星球的角色?
- javascript - 节点模块不会导入到我的 Vue.js 项目中
- javascript - 使用带有真值 if 语句的 etcd 事务
- r - 在 R 中创建一个循环以根据存储在其中的变量的名称来命名(保存)文件
- graphviz - Graphviz:给定一棵树渲染节点,从同一层的根节点开始的最大路径长度?
- javascript - 在发送到数据库之前操作 json
- javascript - 如何等待所有可观察对象完成并将结果存储在对象中
- azureservicebus - Azure 服务总线 - 将消息从死信队列自动转发到另一个队列
- android - 登录谷歌账户时显示用户界面