词嵌入矩阵

在nlp任务中,计算机不会直接处理文本信息,而是需要先将句子转化为矩阵进行处理。通常,先将句子划分为单词,每个单词用一个固定维数的向量表示(比如300),而句子的维数也会固定为一个常值(max_len),并进行补齐。

词嵌入矩阵就是将单词从one-shot形式转化为固定维数的向量时所需的转换矩阵。
在这里插入图片描述
英文单词的oneshot形式可由tokenizer.word_index直接获得,它是一个字典,内容如下:

'the':1 'to':2 'and':3 .....

而词向量可以从各种预训练文件获得:
其中的内容类似:
在这里插入图片描述
词嵌入矩阵可以看作词向量依据对应单词的重排列。
获取词嵌入矩阵的示例代码如下:

num_words=len(word_index)+1
embedding_matrix=np.zeros((num_words,100))
for word,i in tqdm(word_index.items()):
    if i > num_words:
        continue  
    emb_vec=embedding_dict.get(word)
    if emb_vec is not None:
        embedding_matrix[i]=emb_vec

上面的num_words加1是因为单词编号是从1开始的。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值