我的问题简单明了。训练和预测神经网络时批量大小指定什么。如何将其可视化,以便清楚地了解数据如何馈送到网络。
假设我有一个自动编码器
encoder = tflearn.input_data(shape=[None, 41])
encoder = tflearn.fully_connected(encoder, 41,activation='relu')
我将输入作为具有 41 个特征的 csv 文件,据我所知,当我的批量大小为 1 时,它将从 csv 文件中获取每个特征并将其输入到第一层的 41 个神经元。
但是当我将批量大小增加到 100 时,这 100 个批量的 41 个特征将如何输入到该网络?
model.fit(test_set, test_labels_set, n_epoch=1, validation_set=(valid_set, valid_labels_set),
run_id="auto_encoder", batch_size=100,show_metric=True, snapshot_epoch=False)
批处理或某些操作是否会标准化?
两种情况下的 epoc 数量相同
最佳答案
批量大小是您在网络中提供的样本量。对于输入编码器,您指定输入未指定(无)数量的样本,每个样本有 41 个值。
使用 None 的优点是,您现在可以一次使用 100 个值的批处理进行训练(这对梯度有利),并使用仅包含一个值的批处理(您想要预测的一个样本)进行测试。
如果您没有指定每批处理的标准化,则每批处理没有标准化;)
希望我解释得足够好!如果您有更多问题,请随时询问他们!
关于python-3.x - tensorflow 中的batch_size?理解概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42998989/