Проблема с обновлением весов в керасе - PullRequest
0 голосов
/ 17 января 2020

Я хочу обновить вес (данные фильтра и вес смещения), используя layer.set_weight(), но получил эту ошибку:

Вы вызвали set_weights(weights) на слое "con" со списком весов длины 3, но слой ожидал 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(). Как я могу изменить это?

...