PaddlePaddle|Fluid如何在输入层定义batch_size大小()

  • 问题描述:我想尝试不同的batch_size大小,以观察不同batch_size大小对模型本身的影响
  • 【PaddlePaddle|Fluid如何在输入层定义batch_size大小()】相关代码:
x = fluid.layers.data(name='x', shape=[13], dtype='float32') y_predict = fluid.layers.fc(input=x, size=1, act=None) y = fluid.layers.data(name='y', shape=[1], dtype='float32') cost = fluid.layers.square_error_cost(input=y_predict, label=y)

  • 问题分析:
在Fluid版的Paddle中通常使用paddle.batch()方法来设置输入数据的大小,但并不一定要显示的定义在输入层,因为Fluid版的paddle会自动更加你输入数据的batch_size大小自动定义输入层batch_size的大小,保证输入数据与输入层batch_size始终是相同的。当然,如果想要显示调用也是完全可以的。例如:
固定batch size维度 image = fluid.layers.data(name="image", shape=[32, 784], append_batch_size=False)

  • 解决方法:
通常通过paddle.batch()定义输入batch_size大小的输入数据,Paddle的输入层,即fluid.layers.data()方法会自动将输入层的大小改成与paddle.batch()定义的batch_size相同的大小
trainer.train( reader=paddle.batch( paddle.reader.shuffle(uci_housing.train(), buf_size=500), batch_size=2), feeding=feeding, event_handler=event_handler, num_passes=30)

    推荐阅读