2017-08-22 21:25:18 +00:00
|
|
|
struct SGD
|
2017-08-31 16:36:18 +00:00
|
|
|
ps::Vector{Param}
|
2017-08-22 21:25:18 +00:00
|
|
|
η::Float32
|
|
|
|
end
|
|
|
|
|
|
|
|
sgd(m, η) = SGD(params(m), η)
|
|
|
|
|
|
|
|
function update!(o::SGD)
|
|
|
|
for p in o.ps
|
2017-08-31 16:36:18 +00:00
|
|
|
p.x .-= p.Δ .* o.η
|
2017-08-24 10:42:29 +00:00
|
|
|
Δ .= 0
|
2017-08-22 21:25:18 +00:00
|
|
|
end
|
|
|
|
end
|