PyTorch运行时错误:预期参数的类型为long,但改为使用CPUType

时间:2019-06-03 03:41:57

标签: python-3.x pycharm pytorch transformer attention-model

我是PyTorch的新手,正在变压器模型上经历this tutorial。我在Win10上使用PyCharm。 现在,我基本上只是复制粘贴了示例代码,但是出现以下错误:

  

RuntimeError:参数#1'indices'的预期张量具有标量类型Long;但是却改为使用CPUType(在检查嵌入参数时)

似乎来自此行

  

def编码(self,src,src_mask):
         返回self.encodder(self.src_embed(src),src_mask)

TBH,我什至不知道这意味着什么,更不用说我应该如何解决它了。 什么是CPUType?我何时创建此类变量?通过查看代码,我仅使用张量(或numpy数组)

这是完整的错误消息:

  

C:... \ Python \ Python37 \ lib \ site-packages \ torch \ nn_reduction.py:46:UserWarning:size_average和reduce args将被弃用,请改用reduction ='sum'。     warnings.warn(warning.format(ret))   C:/.../ PycharmProjects / Transformer / all_the_code.py:263:用户警告:现在不推荐使用nn.init.xavier_uniform,而建议使用nn.init.xavier_uniform_。     nn.init.xavier_uniform(p)   追溯(最近一次通话):
   
中的文件“ C:/.../ PycharmProjects / Transformer / all_the_code.py”,第421行      SimpleLossCompute(model.generator,条件,model_opt))
   在run_epoch中的文件“ C:/.../ PycharmProjects / Transformer / all_the_code.py”,第297行
    batch.src_mask,batch.trg_mask)
   文件“ C:/.../ PycharmProjects / Transformer / all_the_code.py”,第30行,正向
    返回self.decode(self.encode(src,src_mask),src_mask,
  文件“ C:/.../ PycharmProjects / Transformer / all_the_code.py”,第34行,采用编码
     返回self.encoder(self.src_embed(src),src_mask)
  __call__
中的第493行的文件“ C:... \ Python \ Python37 \ lib \ site-packages \ torch \ nn \ modules \ module.py”     结果= self.forward(* input,** kwargs)
  文件“ C:... \ Python \ Python37 \ lib \ site-packages \ torch \ nn \ modules \ container.py”,第92行,正向
    输入=模块(输入)
  __call__
中的第493行的文件“ C:... \ Python \ Python37 \ lib \ site-packages \ torch \ nn \ modules \ module.py”     结果= self.forward(* input,** kwargs)
  文件“ C:/.../ PycharmProjects / Transformer / all_the_code.py”,向前218行
    返回self.lut(x)* math.sqrt(self.d_model)
  __call__
中的第493行的文件“ C:... \ Python \ Python37 \ lib \ site-packages \ torch \ nn \ modules \ module.py”     结果= self.forward(* input,** kwargs)
  文件“ C:... \ Python \ Python37 \ lib \ site-packages \ torch \ nn \ modules \ sparse.py”,第117行,正向
    self.norm_type,self.scale_grad_by_freq,self.sparse)
  嵌入中的文件“ C:... \ Python \ Python37 \ lib \ site-packages \ torch \ nn \ functional.py”,行1506
    返回torch.embedding(重量,输入,padding_idx,scale_grad_by_freq,稀疏)

0 个答案:

没有答案