没有tf.keras的tf2.0中的构建模型和估计量

问题描述 投票:0回答:1

鉴于Layer API已被弃用,如何在不使用tf.keras的情况下在tf2中构建模型(或推荐的构建模型的方法是什么?问题#30829有相同的问题,但已关闭,没有任何答案。

更新:

我可以使用tf.keras.layers而不是tf.layers,但是当我构建完所有图层并需要返回模型后,是否可以NOT使用keras模型,进行编译,拟合,预测和评估,并且只是按照张量流的方式进行?

如果您想知道为什么我想做这样的事情,那就是我想使用估计量来训练,而不是使用keras的fit函数。存在keras_model_to_estimator,但似乎不是keras_model_to_estimatormatureenough

tensorflow-estimator tensorflow2.0 tf.keras
1个回答
0
投票

Google发布了从TF 1到TF 2的迁移指南,yet

推荐的建模方式

[section Converting Models建议将Guide (section "Models based on tf.layers")模型转换为tf.layers

转换是一对一的,因为从v1.layers到tf.keras.layers有直接映射。

构建没有Keras的模型

该选项是提供自己的层实现(指南中的示例):

tf.keras.layers

但是值得考虑W = tf.Variable(tf.ones(shape=(2,2)), name="W") b = tf.Variable(tf.zeros(shape=(2)), name="b") @tf.function def forward(x): return W * x + b out_a = forward([1,0]) print(out_a) tf.keras.layers.Layer),它具有一定程度的自由度,但与Keras的其余部分(以及它的层)集成在一起。

即使使用example编写的图层,您也可以编写自己的训练循环(tf.keras)。

总而言之,实际上TF 2.0要求您使用example

© www.soinside.com 2019 - 2024. All rights reserved.