我想创建数据集的序列。但是,Tensorflow仅提供以下功能:
tf.parse_single_example()
我尝试使用tf.py_func
和smth这样来避免这个问题:
dataset.map(lambda x: tf.py_func(_parse_tf_record, [x, sequence_length])
for sequence_id in range(0, sequence_length):
filename = x
# files only contain one record
for record in tf.python_io.tf_record_iterator(filename, options):
...
tf.parse_single_example()
...
break # only one sample per file
因此,对于每个地图调用,我都会读取#sequence_length
个文件。但是,这不能并行完成,因为tf.py_func
不允许它。
答案 0 :(得分:1)
张量流示例是单个概念单元,它应该独立于其他示例(以便批处理和混洗正常工作)。
如果您希望将更多数据组合在一起,则应将其作为单个示例编写。
为了简化tf.train.SequenceExample
,tf.parse_single_sequence_example
与UPDATE RollNoSlip SET
AttendanceStatus = A.AttendanceStatus
FROM RollNoSlip R
INNER JOIN Attendance A ON R.RollNo = A.RollNo
WHERE R.RollNo BETWEEN 10001 AND 10045
一起使用。它有一个上下文部分,它对序列中的所有条目都是通用的,并且每个步骤都会重复一个序列部分。这通常在使用循环网络(LSTM等)时使用,但只要在上下文中有意义就可以使用它。