Вызов функции в коде re snet в python - PullRequest
0 голосов
/ 28 марта 2020

Есть функция f (входная): как показано ниже в файле re snet внутри другой функции, называемой _conv_bn_relu. Но в этой функции «вход», переданный в качестве аргумента функции f, недоступен в этой функции. Откуда получается «входной» параметр?

def _conv_bn_relu(**conv_params):
    """Helper to build a conv -> BN -> relu block
    """
    filters = conv_params["filters"]
    kernel_size = conv_params["kernel_size"]
    strides = conv_params.setdefault("strides", (1, 1))
    kernel_initializer = conv_params.setdefault("kernel_initializer", "he_normal")
    padding = conv_params.setdefault("padding", "same")
    kernel_regularizer = conv_params.setdefault("kernel_regularizer", l2(1.e-4))

    def f(input):
        conv = Conv2D(filters=filters, kernel_size=kernel_size,
                      strides=strides, padding=padding,
                      kernel_initializer=kernel_initializer,
                      kernel_regularizer=kernel_regularizer)(input)
        return _bn_relu(conv)

    return f
...