我是靠谱客的博主 土豪芝麻,这篇文章主要介绍pytorch的词嵌入函数nn.Embedding,现在分享给大家,希望可以做个参考。

看下面的代码,注释及输出就可以理解了。

import torch
import torch.nn as nn

'''
回想一下词嵌入的理论知识,我深度学习的系列文章也可以
num_embeddings=6:假如咱们现在构造一个词典,这个词典有6个词,那么这6个词的下标索引是0~5,
所以传入的张量中的每个数的数值大小必须比6小。
embedding_dim=4:把每一个词编成4维的向量,即每个词有4个特征
'''
embedding=nn.Embedding(num_embeddings=6,embedding_dim=4)
# 下面有3句话,每句话由3个词构成,对这三句话进行词嵌入
tmp=[[1,2,3],
     [1,2,3],
     [4,5,5]]
tmp=torch.LongTensor(tmp)
print(tmp)

embed = embedding(tmp)
print(embed)

输出:

tensor([[1, 2, 3],
        [1, 2, 3],
        [4, 5, 5]])
tensor([[[-0.3291, -0.4963,  0.1210, -0.1258],
         [-0.2658,  1.0460,  1.4820,  0.6359],
         [ 0.5946,  1.1656, -0.0292, -1.0120]],

        [[-0.3291, -0.4963,  0.1210, -0.1258],
         [-0.2658,  1.0460,  1.4820,  0.6359],
         [ 0.5946,  1.1656, -0.0292, -1.0120]],

        [[-0.2935, -0.8020, -0.4196,  0.1312],
         [ 0.8015, -0.0916,  0.0605, -0.5704],
         [ 0.8015, -0.0916,  0.0605, -0.5704]]], grad_fn=<EmbeddingBackward>)

最后

以上就是土豪芝麻最近收集整理的关于pytorch的词嵌入函数nn.Embedding的全部内容,更多相关pytorch内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(169)

评论列表共有 0 条评论

立即
投稿
返回
顶部