python - TensorFlow 双向 CudnnGRU 模糊最终状态格式
问题描述
返回的状态的文档。RNN 状态是一个元组,在像 GRU 这样的非 LSTM 情况下,它有一个元素——一个形状张量(在这种情况下是 2,对于双向 GRU)。但是,文档没有指定外形的顺序。tf.contrib.cudnn_rnn.CudnnGRU
call
rnn_output, rnn_state
[num_layers * num_dirs, batch_size, num_units]
num_dirs
简而言之,给定一个 n 层双向 GRU,这个张量是[final_state_fw_1, ..., final_state_fw_n, final_state_bw_1, ..., final_state_bw_n]
OR
[final_state_fw_1, final_state_bw_1, ..., final_state_fw_n, final_state_bw_n]
吗?
解决方案
格式如下:
[final_state_fw_1, final_state_bw_1, ..., final_state_fw_n, final_state_bw_n]
我通过编写测试两个操作并比较结果的代码来验证这一点。以我声称正确的方式解包会产生约 10^-15 阶的浮点错误,反之则产生重大错误。
请参阅此要点以重现和验证(需要具有支持 CUDA 的 GPU 的设备)。
推荐阅读
- oracle - 显示表格行中的替代列
- python - 如何修复:jinja2.exceptions.UndefinedError: 'csrf_token' 未定义
- python - 使用 selenium 下载 div 元素内的文件 - Python
- c - 十一2。如何忽略修饰键的事件?
- c++ - 当我在OpenGL中按下一个键时无法绘制形状
- azure - 如何小写 Azure DevOps 管道变量名称
- javascript - Javascript试图从嵌套数组中删除项目并重新分配给状态但没有成功
- reactjs - 在不卸载子组件的情况下切换 React 父组件
- .htaccess - .htaccess 的奇怪行为
- c++ - 类型别名和类似类型