tf.squeeze和tf.nn.rnn的功能是什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tf.squeeze和tf.nn.rnn的功能是什么?相关的知识,希望对你有一定的参考价值。

tf.squeeze和tf.nn.rnn的功能是什么?

我搜索了这些API,但我找不到参数,例子等。另外,使用p_inputs由以下代码形成的tf.squeeze的形状是什么,使用tf.nn.rnn的含义和情况是什么?

batch_num = 10
step_num = 2000
elem_num = 26

p_input = tf.placeholder(tf.float32, [batch_num, step_num, elem_num])
p_inputs = [tf.squeeze(t, [1]) for t in tf.split(1, step_num, p_input)]
答案

这些问题的最佳答案来源是TensorFlow API documentation。您提到的两个函数在数据流图中创建操作和符号张量。特别是:

  • tf.squeeze()函数返回一个与第一个参数具有相同值的张量,但形状不同。它删除大小为1的尺寸。例如,如果t是具有形状[batch_num, 1, elem_num]的张量(如在您的问题中),tf.squeeze(t, [1])将返回具有相同内容但大小为[batch_num, elem_num]的张量。
  • tf.nn.rnn()函数返回一对结果,其中第一个元素表示某个给定输入的递归神经网络的输出,第二个元素表示该输入的该网络的最终状态。 TensorFlow网站上有一个更详细的tutorial on recurrent neural networks

以上是关于tf.squeeze和tf.nn.rnn的功能是什么?的主要内容,如果未能解决你的问题,请参考以下文章

tf.nn.rnn_cell.MultiRNNCell

tf.contrib.rnn.static_rnn与tf.nn.dynamic_rnn区别

tf.nn.dynamic_rnn 中的排名错误

tf.nn.rnn_cell.MultiRNNCell

深度学习原理与框架-递归神经网络-RNN_exmaple(代码) 1.rnn.BasicLSTMCell(构造基本网络) 2.tf.nn.dynamic_rnn(执行rnn网络) 3.tf.expa

tf 版本更新 记录