Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pytorch 属性错误:';字段';对象没有属性';vocab&x27;_Pytorch_Torchtext - Fatal编程技术网

Pytorch 属性错误:';字段';对象没有属性';vocab&x27;

Pytorch 属性错误:';字段';对象没有属性';vocab&x27;,pytorch,torchtext,Pytorch,Torchtext,返回的BucketIterator迭代器出现错误 train_iterator = data.BucketIterator.splits( train_data, batch_size=BATCH_SIZE, device=device ) 列车运行数据的价值看起来也不错 print(vars(train_data.examples[10])) {'text': ['plus', "you've", 'added', 'commercials', '

返回的BucketIterator迭代器出现错误

train_iterator = data.BucketIterator.splits(
    train_data, 
    batch_size=BATCH_SIZE, 
    device=device
)
列车运行数据的价值看起来也不错

print(vars(train_data.examples[10]))
{'text': ['plus',
  "you've",
  'added',
  'commercials',
  'to',
  'the',
  'experience...',
  'tacky.'],
 'label': 'positive'}
堆栈跟踪:

print([x for x in train_iterator])

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-50-f14edc400c88> in <module>()
----> 1 [x for x in train_iter]

<ipython-input-50-f14edc400c88> in <listcomp>(.0)
----> 1 [x for x in train_iter]

~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/iterator.py in __iter__(self)
    154                     else:
    155                         minibatch.sort(key=self.sort_key, reverse=True)
--> 156                 yield Batch(minibatch, self.dataset, self.device)
    157             if not self.repeat:
    158                 return

~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/batch.py in __init__(self, data, dataset, device)
     32                 if field is not None:
     33                     batch = [getattr(x, name) for x in data]
---> 34                     setattr(self, name, field.process(batch, device=device))
     35 
     36     @classmethod

~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py in process(self, batch, device)
    235         """
    236         padded = self.pad(batch)
--> 237         tensor = self.numericalize(padded, device=device)
    238         return tensor
    239 

~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py in numericalize(self, arr, device)
    334         if self.use_vocab:
    335             if self.sequential:
--> 336                 arr = [[self.vocab.stoi[x] for x in ex] for ex in arr]
    337             else:
    338                 arr = [self.vocab.stoi[x] for x in arr]

~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py in <listcomp>(.0)
    334         if self.use_vocab:
    335             if self.sequential:
--> 336                 arr = [[self.vocab.stoi[x] for x in ex] for ex in arr]
    337             else:
    338                 arr = [self.vocab.stoi[x] for x in arr]

~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py in <listcomp>(.0)
    334         if self.use_vocab:
    335             if self.sequential:
--> 336                 arr = [[self.vocab.stoi[x] for x in ex] for ex in arr]
    337             else:
    338                 arr = [self.vocab.stoi[x] for x in arr]

AttributeError: 'Field' object has no attribute 'vocab'
打印([x代表序列迭代器中的x])
---------------------------------------------------------------------------
AttributeError回溯(最近一次呼叫上次)
在()
---->1[x代表列车中的x]
英寸(.0)
---->1[x代表列车中的x]
~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/iterator.py in(self)
154其他:
155 minibatch.sort(key=self.sort\u key,reverse=True)
-->156产量批次(小批量、自数据集、自设备)
157如果不是自己,重复:
158返回
~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/batch.py in\uuuuuuuu init\uuuuuuu(自我、数据、数据集、设备)
32如果字段不是“无”:
33 batch=[getattr(x,name)表示数据中的x]
--->34 setattr(self、name、field.process(批处理,设备=设备))
35
36@classmethod
~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py正在处理中(self、batch、device)
235         """
236填充=自填充(批次)
-->237张量=自数值化(填充,设备=设备)
238返回张量
239
数值化中的~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py(self、arr、device)
334如果自用语音:
335如果自序:
-->336 arr=[[self.vocab.stoi[x]代表ex中的x]代表ex中的ex]
337其他:
338 arr=[self.vocab.stoi[x]表示arr中的x]
~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py in(.0)
334如果自用语音:
335如果自序:
-->336 arr=[[self.vocab.stoi[x]代表ex中的x]代表ex中的ex]
337其他:
338 arr=[self.vocab.stoi[x]表示arr中的x]
~/anaconda3/envs/env/lib/python3.6/site-packages/torchtext/data/field.py in(.0)
334如果自用语音:
335如果自序:
-->336 arr=[[self.vocab.stoi[x]代表ex中的x]代表ex中的ex]
337其他:
338 arr=[self.vocab.stoi[x]表示arr中的x]
AttributeError:“Field”对象没有属性“vocab”

我可以知道我们在这里遗漏了什么吗?

面对同样的问题。您是否在Github问题部分提出了这种担忧?