Forward function with frozen batch normalization layers

2 次查看(过去 30 天)
In my application i have both batch normalization and dropout, and i would like to perform MC dropout with the forward function, and ideally i would freeze the parameters TrainedMean and TrainedVariance for the batch normalization layers, but i cannot seem to understand is it possible. I have the bn layers after conv layers, and the dropout after the recurrent layer in my net. Thank you in advance
  1 个评论
Imola Fodor
Imola Fodor 2024-2-28
actually another problem is that i get an error for using the forward function, simply putting as input the same arguments as for the predict function..

请先登录,再进行评论。

采纳的回答

Shivansh
Shivansh 2024-4-2
Hi Imola!
It seems you are facing issues with freezing the parameters of Batch normalization layers and the forward function for the network. For the first case, you can achieve this by setting the 'OffsetLearnRateFactor' and 'ScaleLearnRateFactor' as 0. This will ensure that the "Trained Mean" and "Trained variance" are not updated during the training. You can refer to the following related MATLAB answer for freezing the weights:
For the second query regarding the "forward" function, the "forward" function doesn't take the same inputs as the "predict" function. The "forward" function needs input to be a formatted dlarray. You can convert the current input array to a formatted dlarray using the following command:
dlA = dlarray(input,"format");
A sample example using wNet network
You can refer to the following MATLAB documentation links for more information:
I hope it helps!

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Data Workflows 的更多信息

标签

产品


版本

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by