概述
看下面的代码,注释及输出就可以理解了。
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的词嵌入函数nn.Embedding所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复