栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

TensorFlow dynamic_rnn状态

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

TensorFlow dynamic_rnn状态

tf.nn.dynamic_rnn
返回两个张量:
outputs
states

outputs
保存所有细胞在批处理的所有序列的输出。因此,如果特定序列更短并用零填充,
outputs
则最后一个像元的将为零。

states
保持最后的细胞状态,或者等价每个序列的最后一个非零输出(如果您正在使用
BasicRNNCell
)。

这是一个例子:

import numpy as npimport tensorflow as tfn_steps = 2n_inputs = 3n_neurons = 5X = tf.placeholder(dtype=tf.float32, shape=[None, n_steps, n_inputs])seq_length = tf.placeholder(tf.int32, [None])basic_cell = tf.nn.rnn_cell.BasicRNNCell(num_units=n_neurons)outputs, states = tf.nn.dynamic_rnn(basic_cell, X, sequence_length=seq_length, dtype=tf.float32)X_batch = np.array([  # t = 0      t = 1  [[0, 1, 2], [9, 8, 7]], # instance 0  [[3, 4, 5], [0, 0, 0]], # instance 1])seq_length_batch = np.array([2, 1])with tf.Session() as sess:  sess.run(tf.global_variables_initializer())  outputs_val, states_val = sess.run([outputs, states],     feed_dict={X: X_batch, seq_length: seq_length_batch})  print('outputs:')  print(outputs_val)  print('nstates:')  print(states_val)

打印类似:

outputs:[[[-0.85381496 -0.19517037  0.36011398 -0.18617202  0.39162001]  [-0.99998015 -0.99461144 -0.82241321  0.93778896  0.90737367]] [[-0.99849552 -0.88643843  0.20635395  0.157896    0.76042926]  [ 0.          0.          0.          0.          0.        ]]]  # because len=1states:[[-0.99998015 -0.99461144 -0.82241321  0.93778896  0.90737367] [-0.99849552 -0.88643843  0.20635395  0.157896    0.76042926]]

请注意,

states
保持与中的向量相同
output
,它们是每个批处理实例的最后一个非零输出。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/660126.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号