首页 > 解决方案 > Pytorch nn.Embedding 中未更新权重

问题描述

我用预先训练的嵌入矩阵加载了 PyTorch 的 nn.Embedding 模块。我将其设置为可训练如下。

self.embedding_layer = nn.Embedding(self.vocab_size, self.embed_size, paddding_idx=self.padding_idx)  
self.embedding_layer.weight = nn.Parameter(self.embedding)
self.embedding_layer.weight.requires_grad = True

我使用双向门控循环单元网络处理了这个输出。模型训练好后,我检查了 nn.Embedding 的权重是否更新。权重没有更新。model.embedding_layer.weight 和 'self.embedding' 权重相同。我检查了model.embedding_layer 的渐变。它们都是零。

请你帮助我好吗?谢谢你。

标签: pytorchword-embedding

解决方案


推荐阅读