Apply Gaussian activation to array
Applies the Gaussian function element-wise to input array: f = exp(-x^2/(2σ^2))/(σ√(2π))
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(gaussian_actv_type), | intent(in) | :: | this |
Gaussian activation type containing sigma parameter |
||
| type(array_type), | intent(in) | :: | val |
Input values |
Gaussian activated output values
function apply_gaussian(this, val) result(output) !! Apply Gaussian activation to array !! !! Applies the Gaussian function element-wise to input array: !! f = exp(-x^2/(2σ^2))/(σ√(2π)) implicit none ! Arguments class(gaussian_actv_type), intent(in) :: this !! Gaussian activation type containing sigma parameter type(array_type), intent(in) :: val !! Input values type(array_type), pointer :: output !! Gaussian activated output values if(this%apply_scaling)then output => gaussian(val, this%mu, this%sigma) * this%scale else output => gaussian(val, this%mu, this%sigma) end if end function apply_gaussian