AdamType<UpdateRule>::AdamType( const double stepSize, const size_t batchSize, const double beta1, const double beta2, const double epsilon, const size_t maxIterations, const double tolerance, const bool shuffle) : optimizer(stepSize, batchSize, maxIterations, tolerance, shuffle, UpdateRule(epsilon, beta1, beta2)) { /* Nothing to do. */ }
AdamType<DecomposableFunctionType, UpdateRule>::AdamType( DecomposableFunctionType& function, const double stepSize, const double beta1, const double beta2, const double epsilon, const size_t maxIterations, const double tolerance, const bool shuffle) : optimizer(function, stepSize, maxIterations, tolerance, shuffle, UpdateRule(epsilon, beta1, beta2)) { /* Nothing to do. */ }