void forward_dropout_layer(dropout_layer l, network net)
{
int i;
if (!net.train) return;
for(i = 0; i < l.batch * l.inputs; ++i){
float r = rand_uniform(0, 1);
l.rand[i] = r;
if(r < l.probability) net.input[i] = 0;
else net.input[i] *= l.scale;
}
}
void backward_dropout_layer(dropout_layer l, network net)
{
int i;
if(!net.delta) return;
for(i = 0; i < l.batch * l.inputs; ++i){
float r = l.rand[i];
if(r < l.probability) net.delta[i] = 0;
else net.delta[i] *= l.scale;
}
}
tmep
最新推荐文章于 2024-04-18 15:40:33 发布