torch.nn.Embedding理解

本文介绍了Pytorch的Embedding模块,官网称其是保存固定字典和大小的简单查找表,用于保存词嵌入并以下标检索。个人理解它是初始化随机矩阵的矩阵类,可根据下标查找元素向量。该模块在自然语言处理中作用大,可让神经网络学习词属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Pytorch官网的解释是:一个保存了固定字典和大小的简单查找表。这个模块常用来保存词嵌入和用下标检索它们。模块的输入是一个下标的列表,输出是对应的词嵌入。

torch.nn.Embedding(num_embeddings, embedding_dim, padding_idx=None, max_norm=None, norm_type=2, scale_grad_by_freq=False, sparse=False)

个人理解:这是一个矩阵类,里面初始化了一个随机矩阵,矩阵的长是字典的大小,宽是用来表示字典中每个元素的属性向量,向量的维度根据你想要表示的元素的复杂度而定。类实例化之后可以根据字典中元素的下标来查找元素对应的向量。

输入下标0,输出就是embeds矩阵中第0行。

放代码:

 

调试过程的参数:

 

 

用途:用作自然语言处理中作用很大

而对于一个词,我们自己去想它的属性不是很困难吗,所以这个时候就可以交给神经网络了,我们只需要定义我们想要的维度,比如100,然后通过神经网络去学习它的每一个属性的大小,而我们并不用关心到底这个属性代表着什么,我们只需要知道词向量的夹角越小,表示他们之间的语义更加接近

参考网址:https://my.oschina.net/earnp/blog/1113896

http://pytorch-cn.readthedocs.io/zh/latest/package_references/torch-nn/
---------------------
作者:tommorrow12
来源:优快云
原文:https://blog.youkuaiyun.com/tommorrow12/article/details/80896331
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值