StochasticDepth
类keras_cv.layers.StochasticDepth(rate=0.5, **kwargs)
实现随机深度层。它在残差架构中随机丢弃残差分支。它用作加法运算的直接替换。请注意,此层不会跨单个样本而是跨整个批次丢弃残差块。
参考文献
参数
示例
StochasticDepth
可在残差网络中使用,如下所示
# (...)
input = tf.ones((1, 3, 3, 1), dtype=tf.float32)
residual = keras.layers.Conv2D(1, 1)(input)
output = keras_cv.layers.StochasticDepth()([input, residual])
# (...)
在训练时,StochasticDepth 返回:$$ x[0] + b_l * x[1], $$ 其中 $b_l$ 是一个概率为 $P(b_l = 1) = rate$ 的随机伯努利变量。在测试时,StochasticDepth 根据丢弃率 ($rate$) 对残差分支的激活进行重新缩放:$$ x[0] + (1 - rate) * x[1] $$