From bfcc1ac25d11c5c3e04ddc1ea6c59b7b8efd968d Mon Sep 17 00:00:00 2001 From: pevnak Date: Mon, 25 Sep 2017 21:08:35 +0200 Subject: [PATCH] exposing optimisers --- src/optimise/interface.jl | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/optimise/interface.jl b/src/optimise/interface.jl index cffe62fc..364f7358 100644 --- a/src/optimise/interface.jl +++ b/src/optimise/interface.jl @@ -10,3 +10,9 @@ function optimiser(ps, fs...) end SGD(ps, η = 1) = optimiser(ps, p -> descent(p, η)) +ADAM(ps, η = 0.001, β1 = 0.9, β2 = 0.999, ϵ = 1e-08, decay = 0.0) = optimiser(ps, p -> adam(p; η = η, β1 = β1, β2 = β2, ϵ = ϵ), p -> invdecay(p, decay), p -> descent(p, 1)) +Momentum(ps,ρ, decay = 0.0) = optimiser(ps, p -> momentum(p, ρ), p -> invdecay(p, decay), p -> descent(p, 1)) +Nesterov(ps,ρ, decay = 0.0) = optimiser(ps, p -> nesterov(p, ρ), p -> invdecay(p, decay), p -> descent(p, 1)) +RMSProp(ps, η = 0.001, ρ = 0.9, ϵ = 1e-8, decay = 0.0) = optimiser(ps, p -> rmsprop(p; η = η, ρ = ρ, ϵ = ϵ), p -> invdecay(p, decay), p -> descent(p, 1)) +ADAGrad(ps, η = 0.01, ϵ = 1e-8, decay = 0.0) = optimiser(ps, p -> adagrad(p; η = η, ϵ = ϵ), p -> invdecay(p, decay), p -> descent(p, 1)) +ADADelta(ps, η = 0.01, ρ = 0.95, ϵ = 1e-8, decay = 0.0) = optimiser(ps, p -> adadelta(p; ρ = ρ, ϵ = ϵ), p -> invdecay(p, decay), p -> descent(p, 1))