multiplex

    根据给定的index参数,该OP从每个输入Tensor中选择特定行构造输出Tensor。

    设该OP输入包含

    个Tensor,其中

    multiplex - 图2

    处于区间

    multiplex - 图4

    设该OP输出为

    ,其中

    为输出的第i行,则输出满足:

    multiplex - 图7

    示例:

    Variable(Tensor)。

    1. import paddle.fluid as fluid
    2. x1 = fluid.layers.data(name='x1', shape=[4], dtype='float32')
    3. x2 = fluid.layers.data(name='x2', shape=[4], dtype='float32')
    4. out = fluid.layers.multiplex(inputs=[x1, x2], index=index)
    5. exe = fluid.Executor(fluid.CPUPlace())
    6. img2 = np.array([[5, 6], [7, 8]]).astype(np.float32)
    7. index = np.array([[1], [0]]).astype(np.int32)
    8. res = exe.run(fluid.default_main_program(), feed={'x1':img1, 'x2':img2, 'index':index}, fetch_list=[out])
    9. print(res) # [array([[5., 6.], [3., 4.]], dtype=float32)]