testmode!
function defined in module
Flux
testmode!(model, [mode]) -> model
Set a layer, or all layers in a model, to test mode. This disables the effect of
Dropout and some other regularisation layers.
If you manually set a model into test mode, you need to manually place it back into train mode during training phase, using
trainmode!.
There is an optional second argument, which takes a symbol
:auto to reset all layers back to the default automatic mode.
julia> d = Dropout(0.3)
Dropout(0.3)
julia> testmode!(d) # dropout is now always disabled
Dropout(0.3, active=false)
julia> trainmode!(d) # dropout is now always enabled
Dropout(0.3, active=true)
julia> testmode!(d, :auto) # back to default
Dropout(0.3)
testmode!(model, inactive)
This two-argument method is largely internal. It recurses into the
model, and until a method like
testmode!(d::Dropout, inactive) alters the activity of a layer. Custom layers can support manual
testmode! /
trainmode! switching by defining such a method.
Possible values of
inactive are:
true for testing, i.e.
active=false
false for training, same as
trainmode!
(m)
:auto or
nothing for Flux to detect training automatically.
This method may be removed in a future breaking change, to separate the user-facing
testmode! from the internal recursion.
There are
7
methods for Flux.testmode!:
The following pages link back here:
Flux.jl , deprecations.jl , functor.jl , layers/normalise.jl