|
|
|
@@ -974,7 +974,28 @@ int Convolution_arm::forward(const Mat& bottom_blob, Mat& top_blob, const Option |
|
|
|
kptr += maxk; |
|
|
|
} |
|
|
|
|
|
|
|
sum = activation_ss(sum, activation_type, activation_params); |
|
|
|
if (activation_type == 1) |
|
|
|
{ |
|
|
|
sum = std::max(sum, 0.f); |
|
|
|
} |
|
|
|
else if (activation_type == 2) |
|
|
|
{ |
|
|
|
float slope = activation_params[0]; |
|
|
|
sum = sum > 0.f ? sum : sum * slope; |
|
|
|
} |
|
|
|
else if (activation_type == 3) |
|
|
|
{ |
|
|
|
float min = activation_params[0]; |
|
|
|
float max = activation_params[1]; |
|
|
|
if (sum < min) |
|
|
|
sum = min; |
|
|
|
if (sum > max) |
|
|
|
sum = max; |
|
|
|
} |
|
|
|
else if (activation_type == 4) |
|
|
|
{ |
|
|
|
sum = static_cast<float>(1.f / (1.f + exp(-sum))); |
|
|
|
} |
|
|
|
|
|
|
|
outptr[j] = sum; |
|
|
|
} |
|
|
|
|