美文网首页
用Keras的函数式API创建模型

用Keras的函数式API创建模型

作者: LabVIEW_Python | 来源:发表于2021-09-22 08:45 被阅读0次

为什么要用Keras的函数式API创建模型?

  • 支持创建多输入多输出模型
  • 支持创建非线性模型,eg: 残差模块
  • 支持图层共享

如何创建?使用keras.Model()类

  • 第一种,使用“函数式API”,您从输入开始,您可以链接层调用以指定模型的前向传递,最后您从输入和输出创建模型
  • 第二种,通过继承 Model 类:在这种情况下,您应该在 init 中定义您的层,并且您应该在call()中实现模型的前向传递

用Keras的函数式API创建模型范例

假设头脑中的模型如下图所示: 模型结构图
用函数式API创建模型的代码:
import tensorflow as tf 
from tensorflow.keras import layers
from tensorflow import keras 

# 创建层,将上一层传递进当前层
input = keras.Input(shape=(784,))
dense = layers.Dense(64,activation='relu')
x1 = dense(input)
x2 = layers.Dense(32, activation='relu')(x1)
output = layers.Dense(10)(x2)

# 通过输入,输出创建模型
model = keras.Model(inputs=input, outputs=output, name="Alex_Model")

# 查看模型摘要
model.summary()

# 将模型绘制为计算图
keras.utils.plot_model(model,'alex_model.png',show_shapes=True, show_dtype=True)

从示意图和范例代码可以看出:图和代码几乎完全相同;在代码版本中,连接箭头由调用操作代替

总结:“层计算图”是深度学习模型的直观心理图像,而函数式 API 是创建密切反映此图像的模型的方法。Layer 类是一个种抽象,封装了状态(layer的“权重”)和从输入到输出的转换(“call”,即层的前向传递)

相关文章

  • 用Keras的函数式API创建模型

    为什么要用Keras的函数式API创建模型? 支持创建多输入多输出模型 支持创建非线性模型,eg: 残差模块 支持...

  • keras

    Keras设计了俩种构建模型的方式函数式模型API和顺序式模型API 顺序式模型API构建模型示例: from k...

  • 构建高级模型(05)

    函数式 API tf.keras.Sequential 模型是层的简单堆叠,无法表示任意模型。使用 Keras 函...

  • Keras函数式 API

    Keras 函数式 API 是定义复杂模型(如多输出模型、有向无环图,或具有共享层的模型)的方法。 非函数式api...

  • keras定义模型的两种方法

    Keras定义模型有两种方法。 面向对象式的API 函数式的API keras自定义计算需要用到lamda层 ht...

  • keras模型

    Keras有两种类型的模型,序贯模型(Sequential)和函数式模型(Model),函数式模型应用更为广泛,序...

  • Keras入门--Apple的学习笔记

    Keras有两种类型的模型,序贯模型(Sequential)和函数式模型(Model),函数式模型应用更为广泛,序...

  • DL4J中文文档/Keras模型导入/函数模型

    导入Keras函数模型入门 假设你使用Keras的函数API开始定义一个简单的MLP: 在Keras,有几种保存模...

  • keras的模型学习笔记——函数模型

    函数式(Functional)模型 Keras函数式模型接口是用户定义多输出模型、非循环有向模型或具有共享层的模型...

  • 训练并评估用函数式API创建的模型

    训练并评估用函数式API创建的模型,跟顺序模型的训练和评估基本一致: 载入并预处理数据 用compile方法配置模...

网友评论

      本文标题:用Keras的函数式API创建模型

      本文链接:https://www.haomeiwen.com/subject/hbewgltx.html