美文网首页
Keras 模型构建

Keras 模型构建

作者: 郭彦超 | 来源:发表于2019-04-30 13:29 被阅读0次

介绍

Keras中构建 模型有两种方式,一种是通过Model类构建,一种是通过Sequential构建。前者类似对数据的pipline处理,后者侧重于模型的堆叠。

Model操作

tf.keras.Model
tf.keras.models.Model

Model 类提供了数据特征处理和模型训练的一些操作。在keras中构建model有两种方式,直接构建和通过定义一个子类构建。

  • 直接构建
import tensorflow as tf

inputs = tf.keras.Input(shape=(3,))
x = tf.keras.layers.Dense(4, activation=tf.nn.relu)(inputs)
outputs = tf.keras.layers.Dense(5, activation=tf.nn.softmax)(x)
model = tf.keras.Model(inputs=inputs, outputs=outputs)

首先需要定义一个layer的pipline ,然后通过传入输入输出参数进行构建。

  • 通过定义一个model class来构建
import tensorflow as tf

class MyModel(tf.keras.Model):

  def __init__(self):
    super(MyModel, self).__init__()
    self.dense1 = tf.keras.layers.Dense(4, activation=tf.nn.relu)
    self.dense2 = tf.keras.layers.Dense(5, activation=tf.nn.softmax)

  def call(self, inputs):
    x = self.dense1(inputs)
    return self.dense2(x)

model = MyModel()

在MyModel类init函数中初始化需要的网络层,然后实现一个前向传播函数,来定义传播方式;推荐使用这种方式进行构建,代码高度模块化,并且可以通过传递参数控制前向传播的执行逻辑。

import tensorflow as tf

class MyModel(tf.keras.Model):

  def __init__(self):
    super(MyModel, self).__init__()
    self.dense1 = tf.keras.layers.Dense(4, activation=tf.nn.relu)
    self.dense2 = tf.keras.layers.Dense(5, activation=tf.nn.softmax)
    self.dropout = tf.keras.layers.Dropout(0.5)

  def call(self, inputs, training=False):
    x = self.dense1(inputs)
    if training:
      x = self.dropout(x, training=training)
    return self.dense2(x)

model = MyModel()

Sequential操作

通过网络层堆叠构建模型

tf.keras.Sequential
tf.keras.models.Sequential
  • 我们定义了一个Sequential, 并添加两层
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(32, input_shape=(500,)))
model.add(tf.keras.layers.Dense(32))

相关文章

  • Keras 模型构建

    介绍 Keras中构建 模型有两种方式,一种是通过Model类构建,一种是通过Sequential构建。前者类似对...

  • keras

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

  • tensorflow模型建立与训练

    线性分类器Model 数据获取及预处理: tf.keras.datasets 模型的构建: tf.keras.Mo...

  • 如何使用Tensorflow保存或者加载模型(三) -- Ker

    1.背景 Keras是一个非常易于上手,好用的深度学习框架。不仅容易构建模型,而且容易保存模型。目前,Keras已...

  • tf.Keras

    tf.keras 是 TensorFlow 对 Keras API 规范的实现。这是一个用于构建和训练模型的高阶 ...

  • 自动部署深度神经网络模型TensorFlow(Keras)到生产

    目录 Keras简介 Keras模型分类 Keras模型部署准备 默认部署Keras模型 自定义部署Keras模型...

  • BigDL入门 (2)

    模型构建 在BigDL中,模型构建的API共分为两层,即torch风格的低级API和keras风格的高级A...

  • 初识Keras

    1.导入tf.keras 2.构建一个简单的模型 2.1Sequential model 在Keras中,通过组装...

  • keras模型构建(补充)

    不管是使用Sequential还是Model的方式构建keras模型;都会用到一些常用的函数。共同的方法或属性 m...

  • 训练和评估(03)

    设置训练流程 构建好模型后,通过调用 compile 方法配置该模型的学习流程: tf.keras.Model.c...

网友评论

      本文标题:Keras 模型构建

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