optimiser_setup_sgd Module Function

private module function optimiser_setup_sgd(learning_rate, momentum, nesterov, num_params, regulariser, clip_dict, lr_decay) result(optimiser)

Set up the SGD optimiser

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(in), optional :: learning_rate

Learning rate and momentum

real(kind=real32), intent(in), optional :: momentum

Learning rate and momentum

logical, intent(in), optional :: nesterov

Nesterov momentum

integer, intent(in), optional :: num_params

Number of parameters

class(base_regulariser_type), intent(in), optional :: regulariser

Regularisation method

type(clip_type), intent(in), optional :: clip_dict

Clipping dictionary

class(base_lr_decay_type), intent(in), optional :: lr_decay

Learning rate decay method

Return Value type(sgd_optimiser_type)

Instance of the SGD optimiser


Source Code

     module function optimiser_setup_sgd( &
          learning_rate, momentum, &
          nesterov, num_params, &
          regulariser, clip_dict, lr_decay) result(optimiser)
       !! Set up the SGD optimiser
       real(real32), optional, intent(in) :: learning_rate, momentum
       !! Learning rate and momentum
       logical, optional, intent(in) :: nesterov
       !! Nesterov momentum
       integer, optional, intent(in) :: num_params
       !! Number of parameters
       class(base_regulariser_type), optional, intent(in) :: regulariser
       !! Regularisation method
       type(clip_type), optional, intent(in) :: clip_dict
       !! Clipping dictionary
       class(base_lr_decay_type), optional, intent(in) :: lr_decay
       !! Learning rate decay method
       type(sgd_optimiser_type) :: optimiser
       !! Instance of the SGD optimiser
     end function optimiser_setup_sgd