TensorFlow模型语法

Kshitij卡纳瓦特

我是神经网络和Tensorflow的新手

通常,当我们在TensorFlow中构建神经网络模型时,我们会通过以下方式进行定义:

model = tf.keras.models.Sequential([
    tf.keras.layers.Conv2D(32, (3,3), activation='relu', input_shape=(150, 150, 3)),
    tf.keras.layers.MaxPooling2D(2, 2),
    tf.keras.layers.Conv2D(64, (3,3), activation='relu'),

我最近想出了一个使用转移学习的代码,它通过以下方式定义了模型:

x = layers.Flatten()(last_output)
x = layers.Dense(1024, activation='relu')(x)
x = layers.Dense(1,activation='sigmoid')(x) 

last_output是转移学习模型的输出。

谁能解释这与顺序方法有何不同?另外,为什么在新层末尾的括号中给出了上一层的输出?

普雷特克·巴特(Prateek Bhatt)

您所描述的两种方法都是正确的。让我们逐步看一下它。

  1. 第一个模型使用SequentialAPI,该API的声明如下。

    tf.keras.Sequential(layers = None,name = None)

API将layers参数作为layers要添加到模型的列表

因此,您显示的示例。

model = tf.keras.models.Sequential([
    tf.keras.layers.Conv2D(32, (3,3), activation='relu', input_shape=(150, 150, 3)),
    tf.keras.layers.MaxPooling2D(2, 2),
    tf.keras.layers.Conv2D(64, (3,3), activation='relu')])

在这里,顺序API将每一层堆叠在另一层之上并进行连接。该API自己管理上一层的输出,即下一层的输入。它为我们提供了便利。

2.方法是使用FunctionalAPI创建模型您可以将其视为将图层作为函数调用。您唯一需要做的事情就是提供上一层作为下一层的输入。由于Functional API不使用与List类似的东西,因此API知道输入来自哪一层的唯一方法是实际提供前一层作为参数。

因此,以您为例。

x = layers.Flatten()(last_output)
x = layers.Dense(1024, activation='relu')(x)
x = layers.Dense(1,activation='sigmoid')(x) 

功能性API将知道该层Flatten需要连接到该last_output层。然后,下一个密集层将作为参数传递给该Flattenx我想你在这里有了主意。

创建模型的另一种方法是对Model进行子类化。您可以在此处查看FunctionalAPI和子Model类类

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

缩短回归模型的公式语法

来自分类Dev

恢复TensorFlow模型

来自分类Dev

TensorFlow LSTM生成模型

来自分类Dev

从Tensorflow模型获取权重

来自分类Dev

TensorFlow模型的输入

来自分类Dev

使用tensorflow的.ckpt模型

来自分类Dev

Tensorflow显示模型摘要

来自分类Dev

简单的Tensorflow线性模型

来自分类Dev

Tensorflow无法保存模型

来自分类Dev

Tensorflow 模型精度

来自分类Dev

确定模型是pytorch模型还是tensorflow模型还是scikit模型

来自分类Dev

确定模型是pytorch模型还是tensorflow模型还是scikit模型

来自分类Dev

DNNClassifier 模型到 TensorFlow Serving 模型

来自分类Dev

基于Gradle规则的模型嵌套bean语法

来自分类Dev

OpenERP / Odoo模型关系XML语法

来自分类Dev

如何使用异步/等待语法填充模型?

来自分类Dev

模型之间关系的正确PHP语法?

来自分类Dev

Tensorflow模型总是产生均值

来自分类常见问题

使用TensorFlow模型进行预测

来自分类Dev

在Android上运行Tensorflow模型

来自分类Dev

Tensorflow模型动物园?

来自分类Dev

Tensorflow中的动态LSTM模型

来自分类Dev

使用队列Tensorflow训练模型

来自分类Dev

与Ray并行服务Tensorflow模型

来自分类Dev

React中的Tensorflow Automl模型

来自分类Dev

TensorFlow使用哪种缓存模型?

来自分类Dev

TensorFlow:无法加载训练模型

来自分类Dev

使用 Flask 提供 tensorflow 模型

来自分类Dev

tensorflow/keras 训练模型 keyerror