Correcting Dropout
This commit is contained in:
parent
bd7e3b1f41
commit
00a4f4c26d
@ -26,7 +26,7 @@ _dropout_shape(s, dims) = tuple((i ∉ dims ? 1 : si for (i, si) ∈ enumerate(s
|
|||||||
|
|
||||||
_dropout_kernel(y::T, p, q) where {T} = y > p ? T(1 / q) : T(0)
|
_dropout_kernel(y::T, p, q) where {T} = y > p ? T(1 / q) : T(0)
|
||||||
|
|
||||||
function (a::Dropout)(x)
|
function dropout(x, p; dims = :)
|
||||||
istraining() || return x
|
istraining() || return x
|
||||||
y = similar(x)
|
y = similar(x)
|
||||||
rand!(y)
|
rand!(y)
|
||||||
@ -34,6 +34,11 @@ function (a::Dropout)(x)
|
|||||||
return x .* y
|
return x .* y
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function (a::Dropout)(x)
|
||||||
|
istraining() || return x
|
||||||
|
return dropout(x, a.p; dims = a.dims)
|
||||||
|
end
|
||||||
|
|
||||||
"""
|
"""
|
||||||
AlphaDropout(p)
|
AlphaDropout(p)
|
||||||
A dropout layer. It is used in Self-Normalizing Neural Networks.
|
A dropout layer. It is used in Self-Normalizing Neural Networks.
|
||||||
|
Loading…
Reference in New Issue
Block a user