2 回答
TA贡献1845条经验 获得超8个赞
Keras 无法更改默认值,因此您只需创建一个包装函数即可:
def myConv2D(filters, kernel):
return Conv2D(filters, kernel, strides=1, kernel_initializer=tf.glorot_uniform_initializer())
然后将其用作:
x = Input(shape=(None, None, 3))
y = myConv2D(10, 3)(x)
y = myConv2D(16, 3)(y)
y = myConv2D(32, 3)(y)
y = myConv2D(48, 3)(y)
y = myConv2D(64, 3)(y)
TA贡献1812条经验 获得超5个赞
更好地 make alambda将创建一个Conv2D层并根据需要修复初始化程序并在模型定义部分调用它。
我认为 lambda 比函数更适合这种情况。
你可以这样做,
customConv = lambda filters, kernel : Conv2D(filters, kernel, strides=1, kernel_initializer=tf.glorot_uniform_initializer())
x = Input(shape=(None, None, 3))
y = customConv(10, 3)(x)
y = customConv(16, 3)(y)
y = customConv(32, 3)(y)
y = customConv(48, 3)(y)
y = customConv(64, 3)(y)
添加回答
举报