Skip to content

Convolution with or without relu #2

@Atwaman

Description

@Atwaman

In edsr.py, in edsr():
You say that
for i in range(n_blocks):
outputs = block( outputs , 3 , 1 , tf.nn.relu , regularization_scale= regularization_scale , scope = "Block{}".format(i) )

but as .block. is defined
def block( inputs , kernel_size , stride , activation_fn = None , regularization_scale = 0.0 , scaling_factor = 0.1 , scope = "Block"):
with tf.variable_scope(scope) :
dim = inputs.get_shape()[-1].value
outputs = layer_utils.conv2d( inputs , dim , kernel_size , stride ,he_init = True , activation_fn = None , regularization_scale = regularization_scale )
outputs = tf.nn.relu( outputs )
outputs = layer_utils.conv2d( outputs , dim , kernel_size , stride , he_init = False , activation_fn = None , regularization_scale = regularization_scale )
outputs = inputs + scaling_factor * outputs
return outputs

From what I understand when reading the article is that we shouldn't have relu unless explicitly stated, but I'm a bit confused about whether you wanted to pass relu or not as an activation function to block, care to shed any light on this? :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions