1

添加 Convolution2D 层的语法是 Keras 是 https://keras.io/layers/convolutional/#convolution2d。我无法正确传递“权重”参数。我该怎么做?

4

2 回答 2

1
conv1_1 = Conv2D(64, kernel_size=(3, 3), activation='relu', padding='same',
                            weight_and_bias=[weight, biases], name='conv1_1')(input)

权重的形状是 (nb_filter, nb_channel, filter_size, filter_size),偏差的形状是 (nb_channel,)

于 2018-06-01T06:48:01.007 回答
0

您应该传递一个numpy数组列表以设置为初始权重。

对于Convolution2D,权重列表有两项,一项在形状上,一项在(nb_filter, nb_channel, nb_row, nb_col)形状上(nb_filter,)

根据 Keras 的作者:

如果您对这些形状是什么有疑问,您可以简单地实例化您的图层,然后调用get_weights(),然后查看输出。参数权重以及方法 set_weights(weights)期望与 的输出完全相同的格式get_weights()

于 2016-10-26T15:33:01.163 回答