首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >结合使用tf.keras.layers和Tensorflow低级API

结合使用tf.keras.layers和Tensorflow低级API
EN

Stack Overflow用户
提问于 2019-03-30 20:17:58
回答 1查看 883关注 0票数 4

我可以将tf.keras.layers与低级tensorflow结合使用吗?

代码不正确,但我想这样做:创建占位符,稍后将向其提供数据(在tf.Session()中),并将该数据提供给我的模型

X, Y = create_placeholders(n_x, n_y)

output = create_model('channels_last')(X)

cost = compute_cost(output, Y)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-30 20:43:12

是的,它和使用tf.layers.dense()是一样的。在最新的tensorflow版本1.13中,使用tf.keras.layers.Dense()实际上是一种首选方式(tf.layers.dense()已被弃用)。例如

import tensorflow as tf
import numpy as np

x_train = np.array([[-1.551, -1.469], [1.022, 1.664]], dtype=np.float32)
y_train = np.array([1, 0], dtype=int)

x = tf.placeholder(tf.float32, shape=[None, 2])
y = tf.placeholder(tf.int32, shape=[None])

with tf.name_scope('network'):
    layer1 = tf.keras.layers.Dense(2, input_shape=(2, ))
    layer2 = tf.keras.layers.Dense(2, input_shape=(2, ))
    fc1 = layer1(x)
    logits = layer2(fc1)

with tf.name_scope('loss'):
    xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y, logits=logits)
    loss_fn = tf.reduce_mean(xentropy)

with tf.name_scope('optimizer'):
    optimizer = tf.train.GradientDescentOptimizer(0.01)
    train_op = optimizer.minimize(loss_fn)

with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    loss_val = sess.run(loss_fn, feed_dict={x:x_train, y:y_train})
    _ = sess.run(train_op, feed_dict={x:x_train, y:y_train})
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55431344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档