取上一层的重量

2024-04-19 05:07:42 发布

您现在位置:Python中文网/ 问答频道 /正文

是否可以获取上一层的权重,修改它们并再次设置到下一层。我想在网络中引入一个自定义层,它将修改权重(根据所需的逻辑),然后将修改后的权重值设置到下一层。与下图所示类似:

enter image description here

我不确定这是否可能。我知道我们可以转储快照,然后用它来设置新的权重。我还可以使用快照转换权重。但是,我不知道如何在网络本身内做到这一点(不采取或使用任何快照)。你知道吗

谢谢

KK公司


Tags: 网络公司逻辑快照权重kk
1条回答
网友
1楼 · 发布于 2024-04-19 05:07:42
<>强>太长了,读不下去了:加载一个模型(不编译),使用你想要初始化模型的权重。为要更改的层创建新权重。你知道吗

完整版

根据this thread和fchollet自己的解释,实现这一点的标准方法是将您的权重加载到以前的Keras模型中(您不需要编译它,因此它是即时的),并使用该模型作为可查询的数据结构来访问权重。你知道吗

对于顺序模型,您可以这样做:

weights = model.layers[5].get_weights()
model.layers[5].set_weights(weights)

另请参见:another discussion关于fchollet的这个主题。你知道吗

相关问题 更多 >