我有大量的非图像数据分布在多个分隔文件中,我想将它们用作TensorFlow中DNN的输入。数据需要一些预处理,所以我尝试使用TensorFlow源中的CIFAR10示例作为示例,因为它具有预处理功能,它处理多个文件,并将模型的数据排队。在
如果我有多个FeatureColumns,并且数据是一条记录一条地读取的,那么我不知道该如何表示数据。在
我的输入数据如下所示,以“|”分隔。我要预处理的第一列,其结果是两个值;然后这些值将转换为带有tf.contrib.layers.sparse_column_with_hash_bucket
的张量;第二列是实值列,我想用tf.contrib.layers.real_valued_column
进行转换;第三列是我要预测的标签。在
uywohy|12.3|0
asdfsvjlk|2.2|1
nlnliu|1.0|1
nlwljw|9.6|0
我的计划是用tf.TextLineReader
读取数据,在分隔符上拆分数据,然后预处理。示例代码以here开头。在
# Read in and pre-process a single record
DELIMITER = "|"
reader = tf.TextLineReader()
unparsed_record = reader.read()
col1, col2, label = unparsed_record.split(DELIMITER)
result.label = tf.cast(label, tf.int32)
col1_a, col1_b = _preprocess(col1)
# How to convert col1_a, col1_b, and col2 into a Tensor?
但是,我不确定如何重新组合数据(col1_a、col1_b和col2)以将其输入模型。CIFAR10模型没有使用feed_dict
,所以我看不到如何组装数据。在
任何帮助都是非常感谢的。在
您可以使用
tf.learn
,它需要一个输入函数来填充从特征列到张量或稀疏张量的映射。下面是一个例子:https://github.com/tensorflow/tensorflow/blob/r0.11/tensorflow/examples/learn/wide_n_deep_tutorial.py相关问题 更多 >
编程相关推荐