scatter

    1. import numpy as np
    2. input = fluid.layers.data(name='data', shape=[3, 2], dtype='float32', append_batch_size=False)
    3. index = fluid.layers.data(name='index', shape=[4], dtype='int64', append_batch_size=False)
    4. updates = fluid.layers.data(name='update', shape=[4, 2], dtype='float32', append_batch_size=False)
    5. output = fluid.layers.scatter(input, index, updates, overwrite=False)
    6. exe = fluid.Executor(fluid.CPUPlace())
    7. exe.run(fluid.default_startup_program())
    8. in_data = np.array([[1, 1], [2, 2], [3, 3]]).astype(np.float32)
    9. update_data = np.array([[1, 1], [2, 2], [3, 3], [4, 4]]).astype(np.float32)
    10. res = exe.run(fluid.default_main_program(), feed={'data':in_data, "index":index_data, "update":update_data}, fetch_list=[output])
    11. print(res)
    12. # [array([[3., 3.],
    13. # [6., 6.],