深入探索TensorFlow:数据处理与模型构建
1. 数据洗牌、分批与重复操作
在使用随机梯度下降优化方法训练神经网络模型时,将训练数据以随机洗牌的批次形式输入至关重要。下面我们将详细介绍如何对数据集进行洗牌、分批和重复操作。
1.1 洗牌操作
洗牌操作可通过调用数据集对象的 .shuffle() 方法实现。示例代码如下:
tf.random.set_seed(1)
ds = ds_joint.shuffle(buffer_size=len(t_x))
for example in ds:
print(' x:', example[0].numpy(),
' y:', example[1].numpy())
这里的 buffer_size 参数决定了在洗牌前数据集元素的分组数量。若 buffer_size 较小,可能无法完全随机化数据集。对于小数据集,选择较小的 buffer_size 可能会影响神经网络的预测性能,但在处理大数据集时,这种影响通常不明显。为确保每个周期的完全随机化,可将 buffer_size 设置为训练样本的数量。
1.2 分批操作
将数据集分批可通过调用 .batch() 方法实现。示例代码如下:
ds
超级会员免费看
订阅专栏 解锁全文
623

被折叠的 条评论
为什么被折叠?



