【发布时间】:2019-01-18 13:35:41
【问题描述】:
我的训练数据保存在3个文件中,每个文件太大,无法放入内存。对于每个训练样例,数据都是二维的(2805行222列,第222列是标签)并且是数字价值观。我想在输入模型进行训练之前对数据进行规范化。下面是我的 input_pipeline 代码,以及 在创建数据集之前数据尚未标准化。 tensorflow 中是否有一些函数可以为我的案例进行规范化?
dataset = tf.data.TextLineDataset([file1, file2, file3])
# combine 2805 lines into a single example
dataset = dataset.batch(2805)
def parse_example(line_batch):
record_defaults = [[1.0] for col in range(0, 221)]
record_defaults.append([1])
content = tf.decode_csv(line_batch, record_defaults = record_defaults, field_delim = '\t')
features = tf.stack(content[0:221])
features = tf.transpose(features)
label = content[-1][-1]
label = tf.one_hot(indices = tf.cast(label, tf.int32), depth = 2)
return features, label
dataset = dataset.map(parse_example)
dataset = dataset.shuffle(1000)
# batch multiple examples
dataset = dataset.batch(batch_size)
dataset = dataset.repeat(num_epochs)
iterator = dataset.make_one_shot_iterator()
data_batch, label_batch = iterator.get_next()
【问题讨论】:
标签: tensorflow