Set up the SGD optimiser
| Type | Intent | Optional | 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 |
Instance of the SGD optimiser
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