Embedding

    嵌入层(Embedding Layer)

    注:input中的id必须满足 0 =< id < size[0],否则程序会抛异常退出。

    Variable

    1. import paddle.fluid as fluid
    2. import paddle.fluid.dygraph.base as base
    3. # 示例 1
    4. inp_word.shape # [2, 3]
    5. dict_size = 20
    6. with fluid.dygraph.guard():
    7. emb = fluid.dygraph.Embedding(
    8. size=[dict_size, 32],
    9. param_attr='emb.w',
    10. is_sparse=False)
    11. static_rlt3 = emb(base.to_variable(inp_word))
    12. static_rlt3.shape # [2, 3, 32]
    13. weight_data = np.random.random(size=(128, 100)) # numpy格式的词向量数据
    14. w_param_attrs = fluid.ParamAttr(
    15. name="emb_weight",
    16. learning_rate=0.5,
    17. initializer=fluid.initializer.NumpyArrayInitializer(weight_data),
    18. trainable=True)
    19. with fluid.dygraph.guard():
    20. emb = fluid.dygraph.Embedding(
    21. size=[128, 100],
    22. param_attr= w_param_attrs,