Implement Zoneout - wolfma61/CNTK GitHub Wiki
You might be wondering if Dropout applied to a Constant is dynamically evaluated. It is! Therefore Zoneout is as simple as
Zoneout (x, xprev) =
{
mask = Dropout (BS.Constants.OnesLike (x))
res = BS.Boolean.If (mask, xprev, x)
}.res