AdamOptimizer don't support input data of float64
Created by: JepsonWong
-
版本、环境信息: 1)PaddlePaddle版本:1.6.1 2)CPU:CPU 3)GPU:无 4)系统环境:Ubuntu16.04,python2.7.15
-
复现信息:如为报错,请给出复现环境、复现步骤 复现代码:
import paddle import paddle.fluid as fluid place = fluid.CPUPlace() main = fluid.Program() with fluid.program_guard(main): x = fluid.data(name='x', shape=[None, 13], dtype='float64') y = fluid.data(name='y', shape=[None, 1], dtype='float64') y_predict = fluid.layers.fc(input=x, size=1, act=None) cost = fluid.layers.square_error_cost(input=y_predict, label=y) avg_cost = fluid.layers.mean(cost) adam_optimizer = fluid.optimizer.AdamOptimizer(0.01) adam_optimizer.minimize(avg_cost) fetch_list = [avg_cost] train_reader = paddle.batch( paddle.dataset.uci_housing.train(), batch_size=1) feeder = fluid.DataFeeder(place=place, feed_list=[x, y]) exe = fluid.Executor(place) exe.run(fluid.default_startup_program()) for data in train_reader(): exe.run(main, feed=feeder.feed(data), fetch_list=fetch_list)
x, y输入类型改为float32不报错。 x = fluid.data(name='x', shape=[None, 13], dtype='float32') y = fluid.data(name='y', shape=[None, 1], dtype='float32')