【发布时间】:2019-08-07 19:39:28
【问题描述】:
seq2seq 任务是从视频数据中识别句子(也称为纯视觉语音识别/唇读)。
该模型由卷积层和一个 lstm 层组成。但是卷积层的输出是[batch_size, height, width, channel_size]的形状;而lstm层的输入必须是[batch_size, n_steps, dimension]的形状。
工作流程是这样的:
- 首先,数据组织为 [batch_size, n_steps, height, width, channel_size]。
- 然后我将其重塑为
[batch_size*n_steps, height, width, channel_size]并将其输入转换层。 - conv 层的输出是
[batch_size*n_steps, height', width', channel_size']。 - 当然可以reshape成
[batch_size, n_steps, height', width', channel_size'],但是我要怎么输入到lstm层,需要[batch_size, n_steps, dimension]形状的数据?
我不知道仅将轴 [height', width', channel_size'] 重塑为 [dimension] 的一个轴是否适合此仅视觉语音识别任务。
提示:
- height'和width'不会等于1。
- 代码是用tensorflow实现的,由于某种原因我必须使用低级api而不是
tf.keras。 - 模型构建为论文END-TO-END LOW-RESOURCE LIP-READING WITH MAXOUT CNN AND LSTM
【问题讨论】:
标签: tensorflow conv-neural-network lstm seq2seq