NLP 中的embedding layer

本文介绍了在NLP中如何使用embedding layer,包括从头训练、预训练微调和预训练静态三种方式,并详细讲解了keras的Embedding类,阐述了其工作原理和参数设置。
摘要由CSDN通过智能技术生成

https://blog.csdn.net/chuchus/article/details/78386059

词汇是语料库的基本元素, 所以, 使用embedding layer来学习词嵌入, 将一个词映射成为固定维度的稠密向量. 有了这一步, 才能构造矩阵, 实现神经网络的前向传播.

如何使用?

  • 从头训练 
    就像word2vec一样, 这一层是可学习的, 用随机数initialize , 通过BP去调整.
  • pre-trained + fine tuning 
    用其他网络(如 word2vec) 训练好的现成的词向量, 作为初始化参数, 然后继续学习.
  • pre-trained + static 
    用其他网络(如 word2vec) 训练好的现成的词向量, 作为初始化参数, 并且这些参数保持固定, 不参与网络的学习.

keras 的 Embedding

Embedding(Layer) 
类. 将索引映射为固定维度的稠密的向量. 
eg. [[4], [20]] -> [[0.25, 0.1], [0.6, -0.2]] 
This layer can only be used as the first layer in a model.

__init__(self, input_dim, output_dim,input_length,...) 
构造函数, 分别为三个参数分别代表vocab_size,vector_dimension,fixed_word_number. 
还有继承自父类的weights,trainable参数. 
如一个语料库, 词汇量为20万, word representa

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值