Keras:语法说明

苏景坤

keras 新手:

我试图了解 keras 中使用的语法。我难以理解的语法是在构建网络时。我在许多地方都看到过,如下代码中所述。

像这样的语句: current_layer = SOME_CODE(current_layer)
这样的语句是什么意思?这是否意味着首先SOME_CODE要遵循 中描述的计算,然后再进行当前层中描述的计算?

这种语法有什么用,什么时候应该使用它?有什么优势和替代方案吗?

input_layer = keras.layers.Input(
        (IMAGE_BORDER_LENGTH, IMAGE_BORDER_LENGTH, NB_CHANNELS))

current_layer = image_mirror_left_right(input_layer)

current_layer = keras.layers.convolutional.Conv2D(
      filters=16, "some values " ])
        )(current_layer)

def random_image_mirror_left_right(input_layer):
    return keras.layers.core.Lambda(function=lambda batch_imgs: tf.map_fn(
        lambda img: tf.image.random_flip_left_right(img), batch_imgs
    )
    )(input_layer)
沙漠之舟

如果您确实是 Keras 的新手,正如您所说,我强烈建议您在现阶段不要打扰这些高级的东西。

您所指的 repo 是使用专用库 ( HyperOpt ) 对Keras模型进行自动元优化的相当先进且非常重要的案例它涉及根据已经存储在 Python 字典中的一些配置参数的“自动”模型构建......

此外,您引用的函数超越了 Keras,涉及 TensorFlow 方法和lambda函数......

current_layer=SOME_CODE(current_layer)是 Keras Functional API的典型示例根据我的经验,它不像更直接的Sequential API那样广泛使用,但在一些更高级的情况下它可能会派上用场,例如:

Keras 函数式 API 是定义复杂模型的方法,例如多输出模型、有向无环图或具有共享层的模型。[...] 使用函数式 API,可以轻松重用经过训练的模型:您可以将任何模型视为一个层,通过在张量上调用它。请注意,通过调用模型,您不仅可以重用模型的架构,还可以重用其权重。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章