我是 Tensorflow 和深度学习的新手,我正在努力学习 Dataset 课程。我尝试了很多东西,但找不到好的解决方案。
我有大量图像(500k+)来训练我的 DNN。这是一个去噪自动编码器,所以我每个图像都有一对。我用的是TF的dataset类来管理数据,但是我觉得我用的真的很烂。
这是我在数据集中加载文件名的方法:
class Data:
def __init__(self, in_path, out_path):
self.nb_images = 512
self.test_ratio = 0.2
self.batch_size = 8
# load filenames in input and outputs
inputs, outputs, self.nb_images = self._load_data_pair_paths(in_path, out_path, self.nb_images)
self.size_training = self.nb_images - int(self.nb_images * self.test_ratio)
self.size_test = int(self.nb_images * self.test_ratio)
# split arrays in training / validation
test_data_in, training_data_in = self._split_test_data(inputs, self.test_ratio)
test_data_out, training_data_out = self._split_test_data(outputs, self.test_ratio)
# transform array to tf.data.Dataset
self.train_dataset = tf.data.Dataset.from_tensor_slices((training_data_in, training_data_out))
self.test_dataset = tf.data.Dataset.from_tensor_slices((test_data_in, test_data_out)) …Run Code Online (Sandbox Code Playgroud)