首页 > 解决方案 > 在 keras 中更新权重的问题

问题描述

我想使用更新权重(过滤数据和偏差权重)layer.set_weight()但收到此错误:

您使用长度为 3 的权重列表调用set_weights(weights)层“con”,但该层期望 2 个权重。

我使用的代码是:

w = model.layers[0].get_weights()

它返回以下数据:

 [array([[[[ 7.95478702e-01,  3.62834007e-01,  8.63312304e-01,
           -2.18138605e-01]],

         [[ 9.54419136e-01,  7.83904433e-01,  2.39170641e-01,
           -4.93528843e-01]],

         [[ 3.85988206e-01,  9.14532781e-01, -1.05724104e-01,
           -6.36200011e-01]]],


        [[[-2.96189755e-01,  1.04245281e+00, -7.93409765e-01,
           -5.18380702e-01]],

         [[-1.17103405e-01,  7.04082668e-01, -8.85501146e-01,
           -4.04743433e-01]],

         [[ 6.19280517e-01,  5.28193831e-01,  6.80770318e-04,
            2.26266444e-01]]],


        [[[-7.70748794e-01,  1.13630258e-01,  2.38650933e-01,
            6.83022439e-01]],

         [[-4.86002900e-02,  6.83946311e-01,  4.66377288e-01,
            8.29747736e-01]],

         [[ 7.78391004e-01,  2.00692505e-01,  5.20951033e-01,
            1.11665785e+00]]]], dtype=float32),
 array([-0.011733  ,  0.00292955,  0.0021829 ,  0.00517058], dtype=float32)]

现在我想使用set_weight()方法修改这一层的权重和偏差。我该如何修改它?

标签: machine-learningkeras-layer

解决方案


推荐阅读