Pytorch 索引超出范围,位于..\aten\src\TH/generic/THTensorEvenMoreMath.cpp:193

Pytorch 索引超出范围,位于..\aten\src\TH/generic/THTensorEvenMoreMath.cpp:193,pytorch,Pytorch,我正在尝试构建连接树vae。我被这个错误所震惊。我的嵌入大小与词汇表大小相同,另一个参数是隐藏大小长度。我哪里出错了?请帮助别人 我读过很多博客,并试图解决这个错误,但我不能。我知道嵌入有一些问题,但我不知道如何解决 def __init__(self, vocab, hidden_size, latent_size, depthT, depthG): super(JTNNVAE, self).__init__() self.vocab = vocab

我正在尝试构建连接树vae。我被这个错误所震惊。我的嵌入大小与词汇表大小相同,另一个参数是隐藏大小长度。我哪里出错了?请帮助别人

我读过很多博客,并试图解决这个错误,但我不能。我知道嵌入有一些问题,但我不知道如何解决

def __init__(self, vocab, hidden_size, latent_size, depthT, depthG):
        super(JTNNVAE, self).__init__()
        self.vocab = vocab
        #print(int(vocab.size()))
        self.hidden_size = int(hidden_size)
        self.latent_size = latent_size = latent_size / 2 #Tree and Mol has two vectors
        self.latent_size=int(self.latent_size)
        self.jtnn = JTNNEncoder(hidden_size, depthT, nn.Embedding(int(vocab.size()), int(hidden_size)))
        self.decoder = JTNNDecoder(vocab, hidden_size, latent_size, nn.Embedding(int(vocab.size()), int(hidden_size)))

        self.jtmpn = JTMPN(hidden_size, depthG)
        self.mpn = MPN(hidden_size, depthG)

        self.A_assm = nn.Linear(int(latent_size), int(hidden_size), bias=False)
        self.assm_loss = nn.CrossEntropyLoss(size_average=False)

        self.T_mean = nn.Linear(int(hidden_size), int(latent_size))
        self.T_var = nn.Linear(int(hidden_size), int(latent_size))
        self.G_mean = nn.Linear(int(hidden_size), int(latent_size))
        self.G_var = nn.Linear(int(hidden_size), int(latent_size))
预计将解决此错误

谢谢